diff --git a/src/coreclr/CMakeLists.txt b/src/coreclr/CMakeLists.txt index 310742508168a..7d1ce8d705d3d 100644 --- a/src/coreclr/CMakeLists.txt +++ b/src/coreclr/CMakeLists.txt @@ -107,11 +107,11 @@ if(CLR_CMAKE_HOST_UNIX) add_subdirectory(pal) add_subdirectory(hosts) -else(CLR_CMAKE_HOST_UNIX) +else() if(CLR_CMAKE_TARGET_UNIX) - add_subdirectory(pal/src/libunwind) - endif(CLR_CMAKE_TARGET_UNIX) -endif(CLR_CMAKE_HOST_UNIX) + add_subdirectory(${CLR_SRC_NATIVE_DIR}/external/libunwind_extras ${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind) + endif() +endif() # Add this subdir. We install the headers for the jit. add_subdirectory(pal/prebuilt/inc) diff --git a/src/coreclr/pal/src/CMakeLists.txt b/src/coreclr/pal/src/CMakeLists.txt index d9e53821effe2..be8d4d68b6e74 100644 --- a/src/coreclr/pal/src/CMakeLists.txt +++ b/src/coreclr/pal/src/CMakeLists.txt @@ -10,16 +10,16 @@ elseif (CLR_CMAKE_TARGET_FREEBSD) endif() if(NOT CLR_CMAKE_USE_SYSTEM_LIBUNWIND) - include_directories(libunwind/include) - include_directories(libunwind/include/tdep) - include_directories(${CMAKE_CURRENT_BINARY_DIR}/libunwind/include) - include_directories(${CMAKE_CURRENT_BINARY_DIR}/libunwind/include/tdep) + include_directories(${CLR_SRC_NATIVE_DIR}/external/libunwind/include) + include_directories(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/tdep) + include_directories(${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind/include) + include_directories(${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind/include/tdep) - add_subdirectory(libunwind) + add_subdirectory(${CLR_SRC_NATIVE_DIR}/external/libunwind_extras ${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind) elseif(NOT CLR_CMAKE_TARGET_OSX) find_unwind_libs(UNWIND_LIBS) else() - add_subdirectory(libunwind) + add_subdirectory(${CLR_SRC_NATIVE_DIR}/external/libunwind_extras ${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind) endif(NOT CLR_CMAKE_USE_SYSTEM_LIBUNWIND) include(configure.cmake) @@ -251,11 +251,10 @@ endif(CLR_CMAKE_TARGET_OSX) if(NOT FEATURE_CROSSBITNESS) target_include_directories(coreclrpal_dac PUBLIC - ${CMAKE_CURRENT_SOURCE_DIR}/libunwind/include - ${CMAKE_CURRENT_SOURCE_DIR}/libunwind/include/tdep - ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_BINARY_DIR}/libunwind/include - ${CMAKE_CURRENT_BINARY_DIR}/libunwind/include/tdep + ${CLR_SRC_NATIVE_DIR}/external/libunwind/include + ${CLR_SRC_NATIVE_DIR}/external/libunwind/include/tdep + ${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind/include + ${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind/include/tdep ) endif(NOT FEATURE_CROSSBITNESS) diff --git a/src/coreclr/pal/src/configure.cmake b/src/coreclr/pal/src/configure.cmake index ee4a3241196ea..4f900a5555ef6 100644 --- a/src/coreclr/pal/src/configure.cmake +++ b/src/coreclr/pal/src/configure.cmake @@ -1030,7 +1030,7 @@ set(SYNCHMGR_SUSPENSION_SAFE_CONDITION_SIGNALING 1) set(ERROR_FUNC_FOR_GLOB_HAS_FIXED_PARAMS 1) if(NOT CLR_CMAKE_USE_SYSTEM_LIBUNWIND) - list(INSERT CMAKE_REQUIRED_INCLUDES 0 ${CMAKE_CURRENT_SOURCE_DIR}/libunwind/include ${CMAKE_CURRENT_BINARY_DIR}/libunwind/include) + list(INSERT CMAKE_REQUIRED_INCLUDES 0 ${CLR_SRC_NATIVE_DIR}/external/libunwind/include ${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind/include) endif() check_c_source_compiles(" diff --git a/src/coreclr/pal/src/libunwind/libunwind-version.txt b/src/native/external/libunwind-version.txt similarity index 79% rename from src/coreclr/pal/src/libunwind/libunwind-version.txt rename to src/native/external/libunwind-version.txt index c118043054b87..0953763c6bc1a 100644 --- a/src/coreclr/pal/src/libunwind/libunwind-version.txt +++ b/src/native/external/libunwind-version.txt @@ -1,8 +1,6 @@ v1.6.2 https://github.com/libunwind/libunwind/commit/b3ca1b59a795a617877c01fe5d299ab7a07ff29d -Replace CMakeLists.txt, src/CMakeLists.txt, configure.cmake with .NET custom version -Keep .NET oop directory Reapply changes from https://github.com/dotnet/runtime/commit/1b5719c2e3dde393531eaeb5b5cde05dabeef5b8 Apply https://github.com/libunwind/libunwind/pull/317 Apply https://github.com/libunwind/libunwind/pull/333 diff --git a/src/coreclr/pal/src/libunwind/src/CMakeLists.txt b/src/native/external/libunwind.cmake similarity index 68% rename from src/coreclr/pal/src/libunwind/src/CMakeLists.txt rename to src/native/external/libunwind.cmake index f23024b0fc686..0d767ccccdbab 100644 --- a/src/coreclr/pal/src/libunwind/src/CMakeLists.txt +++ b/src/native/external/libunwind.cmake @@ -1,7 +1,10 @@ -# This is a custom file written for .NET Core's build system -# It overwrites the one found in upstream +include_directories(${CMAKE_CURRENT_LIST_DIR}/libunwind/include/tdep) +include_directories(${CMAKE_CURRENT_LIST_DIR}/libunwind/include) +include_directories(${CMAKE_CURRENT_LIST_DIR}/libunwind/src) +include_directories(${CMAKE_CURRENT_BINARY_DIR}/include/tdep) +include_directories(${CMAKE_CURRENT_BINARY_DIR}/include) -SET(libunwind_ptrace_la_SOURCES +set(libunwind_ptrace_la_SOURCES ptrace/_UPT_elf.c ptrace/_UPT_accessors.c ptrace/_UPT_access_fpreg.c ptrace/_UPT_access_mem.c ptrace/_UPT_access_reg.c @@ -11,7 +14,7 @@ SET(libunwind_ptrace_la_SOURCES ptrace/_UPT_reg_offset.c ptrace/_UPT_resume.c ) -SET(libunwind_coredump_la_SOURCES +set(libunwind_coredump_la_SOURCES coredump/_UCD_accessors.c coredump/_UCD_create.c coredump/_UCD_destroy.c @@ -28,7 +31,7 @@ SET(libunwind_coredump_la_SOURCES ) # List of arch-independent files needed by generic library (libunwind-$ARCH): -SET(libunwind_la_SOURCES_generic +set(libunwind_la_SOURCES_generic mi/Gdyn-extract.c mi/Gdyn-remote.c mi/Gfind_dynamic_proc_info.c # The Gget_accessors.c implements the same function as Lget_accessors.c, so # the source is excluded here to prevent name clash @@ -39,75 +42,74 @@ SET(libunwind_la_SOURCES_generic mi/Gget_fpreg.c mi/Gset_fpreg.c mi/Gset_caching_policy.c mi/Gset_cache_size.c - oop/_OOP_find_proc_info.c ) -SET(libunwind_la_SOURCES_os_linux +set(libunwind_la_SOURCES_os_linux os-linux.c ) -SET(libunwind_la_SOURCES_os_linux_local +set(libunwind_la_SOURCES_os_linux_local # Nothing when we don't want to support CXX exceptions ) -SET(libunwind_la_SOURCES_os_freebsd +set(libunwind_la_SOURCES_os_freebsd os-freebsd.c ) -SET(libunwind_la_SOURCES_os_freebsd_local +set(libunwind_la_SOURCES_os_freebsd_local # Nothing ) -SET(libunwind_la_SOURCES_os_solaris +set(libunwind_la_SOURCES_os_solaris os-solaris.c ) -SET(libunwind_la_SOURCES_os_solaris_local +set(libunwind_la_SOURCES_os_solaris_local # Nothing ) if(CLR_CMAKE_TARGET_LINUX) - SET(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_linux}) - SET(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_linux_local}) - SET(libunwind_la_SOURCES_x86_os x86/Gos-linux.c) - SET(libunwind_x86_la_SOURCES_os x86/getcontext-linux.S) - SET(libunwind_la_SOURCES_x86_os_local x86/Los-linux.c) - SET(libunwind_la_SOURCES_x86_64_os x86_64/Gos-linux.c) - SET(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-linux.c) - SET(libunwind_la_SOURCES_arm_os arm/Gos-linux.c) - SET(libunwind_la_SOURCES_arm_os_local arm/Los-linux.c) + set(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_linux}) + set(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_linux_local}) + set(libunwind_la_SOURCES_x86_os x86/Gos-linux.c) + set(libunwind_x86_la_SOURCES_os x86/getcontext-linux.S) + set(libunwind_la_SOURCES_x86_os_local x86/Los-linux.c) + set(libunwind_la_SOURCES_x86_64_os x86_64/Gos-linux.c) + set(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-linux.c) + set(libunwind_la_SOURCES_arm_os arm/Gos-linux.c) + set(libunwind_la_SOURCES_arm_os_local arm/Los-linux.c) list(APPEND libunwind_coredump_la_SOURCES coredump/_UCD_access_reg_linux.c) elseif(CLR_CMAKE_TARGET_FREEBSD) - SET(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_freebsd}) - SET(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_freebsd_local}) - SET(libunwind_la_SOURCES_x86_os x86/Gos-freebsd.c) - SET(libunwind_x86_la_SOURCES_os x86/getcontext-freebsd.S) - SET(libunwind_la_SOURCES_x86_os_local x86/Los-freebsd.c) - SET(libunwind_la_SOURCES_x86_64_os x86_64/Gos-freebsd.c) - SET(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-freebsd.c) - SET(libunwind_la_SOURCES_arm_os arm/Gos-freebsd.c) - SET(libunwind_la_SOURCES_arm_os_local arm/Los-freebsd.c) + set(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_freebsd}) + set(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_freebsd_local}) + set(libunwind_la_SOURCES_x86_os x86/Gos-freebsd.c) + set(libunwind_x86_la_SOURCES_os x86/getcontext-freebsd.S) + set(libunwind_la_SOURCES_x86_os_local x86/Los-freebsd.c) + set(libunwind_la_SOURCES_x86_64_os x86_64/Gos-freebsd.c) + set(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-freebsd.c) + set(libunwind_la_SOURCES_arm_os arm/Gos-freebsd.c) + set(libunwind_la_SOURCES_arm_os_local arm/Los-freebsd.c) list(APPEND libunwind_coredump_la_SOURCES coredump/_UCD_access_reg_freebsd.c) elseif(CLR_CMAKE_HOST_SUNOS) - SET(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_solaris}) - SET(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_solaris_local}) - SET(libunwind_la_SOURCES_x86_64_os x86_64/Gos-solaris.c) - SET(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-solaris.c) + set(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_solaris}) + set(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_solaris_local}) + set(libunwind_la_SOURCES_x86_64_os x86_64/Gos-solaris.c) + set(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-solaris.c) endif() # List of arch-independent files needed by both local-only and generic # libraries: -SET(libunwind_la_SOURCES_common +set(libunwind_la_SOURCES_common ${libunwind_la_SOURCES_os} mi/init.c mi/flush_cache.c mi/mempool.c mi/strerror.c ) -SET(libunwind_la_SOURCES_local_unwind +set(libunwind_la_SOURCES_local_unwind # Nothing when we don't want to support CXX exceptions ) # List of arch-independent files needed by local-only library (libunwind): -SET(libunwind_la_SOURCES_local_nounwind +set(libunwind_la_SOURCES_local_nounwind ${libunwind_la_SOURCES_os_local} mi/backtrace.c mi/dyn-cancel.c mi/dyn-info-list.c mi/dyn-register.c @@ -121,47 +123,47 @@ SET(libunwind_la_SOURCES_local_nounwind mi/Lset_cache_size.c ) -SET(libunwind_la_SOURCES_local +set(libunwind_la_SOURCES_local ${libunwind_la_SOURCES_local_nounwind} ${libunwind_la_SOURCES_local_unwind} ) -SET(libunwind_dwarf_common_la_SOURCES +set(libunwind_dwarf_common_la_SOURCES dwarf/global.c ) -SET(libunwind_dwarf_local_la_SOURCES +set(libunwind_dwarf_local_la_SOURCES dwarf/Lexpr.c dwarf/Lfde.c dwarf/Lparser.c dwarf/Lpe.c dwarf/Lfind_proc_info-lsb.c dwarf/Lfind_unwind_table.c ) -SET(libunwind_dwarf_generic_la_SOURCES +set(libunwind_dwarf_generic_la_SOURCES dwarf/Gexpr.c dwarf/Gfde.c dwarf/Gparser.c dwarf/Gpe.c dwarf/Gfind_proc_info-lsb.c dwarf/Gfind_unwind_table.c ) -SET(libunwind_elf32_la_SOURCES +set(libunwind_elf32_la_SOURCES elf32.c ) -SET(libunwind_elf64_la_SOURCES +set(libunwind_elf64_la_SOURCES elf64.c ) -SET(libunwind_elfxx_la_SOURCES +set(libunwind_elfxx_la_SOURCES elfxx.c ) # The list of files that go into libunwind and libunwind-loongarch64: -SET(libunwind_la_SOURCES_loongarch_common +set(libunwind_la_SOURCES_loongarch_common ${libunwind_la_SOURCES_common} loongarch64/is_fpreg.c loongarch64/regname.c ) # The list of files that go into libunwind: -SET(libunwind_la_SOURCES_loongarch +set(libunwind_la_SOURCES_loongarch ${libunwind_la_SOURCES_loongarch_common} ${libunwind_la_SOURCES_local} loongarch64/Lget_proc_info.c loongarch64/Linit.c loongarch64/Lis_signal_frame.c @@ -172,7 +174,7 @@ SET(libunwind_la_SOURCES_loongarch loongarch64/Lcreate_addr_space.c loongarch64/Lglobal.c loongarch64/Linit_remote.c loongarch64/Lresume.c ) -SET(libunwind_loongarch_la_SOURCES_loongarch +set(libunwind_loongarch_la_SOURCES_loongarch ${libunwind_la_SOURCES_loongarch_common} ${libunwind_la_SOURCES_generic} loongarch64/Gcreate_addr_space.c loongarch64/Gget_proc_info.c loongarch64/Gget_save_loc.c @@ -181,14 +183,14 @@ SET(libunwind_loongarch_la_SOURCES_loongarch ) # The list of files that go into libunwind and libunwind-aarch64: -SET(libunwind_la_SOURCES_aarch64_common +set(libunwind_la_SOURCES_aarch64_common ${libunwind_la_SOURCES_common} aarch64/is_fpreg.c aarch64/regname.c ) # The list of files that go into libunwind: -SET(libunwind_la_SOURCES_aarch64 +set(libunwind_la_SOURCES_aarch64 ${libunwind_la_SOURCES_aarch64_common} ${libunwind_la_SOURCES_local} aarch64/Lapply_reg_state.c aarch64/Lreg_states_iterate.c @@ -200,7 +202,7 @@ SET(libunwind_la_SOURCES_aarch64 aarch64/getcontext.S ) -SET(libunwind_aarch64_la_SOURCES_aarch64 +set(libunwind_aarch64_la_SOURCES_aarch64 ${libunwind_la_SOURCES_aarch64_common} ${libunwind_la_SOURCES_generic} aarch64/Gapply_reg_state.c aarch64/Greg_states_iterate.c @@ -212,13 +214,13 @@ SET(libunwind_aarch64_la_SOURCES_aarch64 ) # The list of files that go into libunwind and libunwind-arm: -SET(libunwind_la_SOURCES_arm_common +set(libunwind_la_SOURCES_arm_common ${libunwind_la_SOURCES_common} arm/is_fpreg.c arm/regname.c ) # The list of files that go into libunwind: -SET(libunwind_la_SOURCES_arm +set(libunwind_la_SOURCES_arm ${libunwind_la_SOURCES_arm_common} ${libunwind_la_SOURCES_arm_os_local} ${libunwind_la_SOURCES_local} @@ -231,7 +233,7 @@ SET(libunwind_la_SOURCES_arm ) # The list of files that go into libunwind-arm: -SET(libunwind_arm_la_SOURCES_arm +set(libunwind_arm_la_SOURCES_arm ${libunwind_la_SOURCES_arm_common} ${libunwind_la_SOURCES_arm_os} ${libunwind_la_SOURCES_generic} @@ -243,13 +245,13 @@ SET(libunwind_arm_la_SOURCES_arm ) # The list of files that go both into libunwind and libunwind-x86: -SET(libunwind_la_SOURCES_x86_common +set(libunwind_la_SOURCES_x86_common ${libunwind_la_SOURCES_common} x86/is_fpreg.c x86/regname.c ) # The list of files that go into libunwind: -SET(libunwind_la_SOURCES_x86 +set(libunwind_la_SOURCES_x86 ${libunwind_la_SOURCES_x86_common} ${libunwind_la_SOURCES_x86_os_local} ${libunwind_la_SOURCES_local} @@ -261,7 +263,7 @@ SET(libunwind_la_SOURCES_x86 ) # The list of files that go into libunwind-x86: -SET(libunwind_x86_la_SOURCES_x86 +set(libunwind_x86_la_SOURCES_x86 ${libunwind_la_SOURCES_x86_common} ${libunwind_la_SOURCES_x86_os} ${libunwind_la_SOURCES_generic} @@ -273,13 +275,13 @@ SET(libunwind_x86_la_SOURCES_x86 ) # The list of files that go both into libunwind and libunwind-x86_64: -SET(libunwind_la_SOURCES_x86_64_common +set(libunwind_la_SOURCES_x86_64_common ${libunwind_la_SOURCES_common} x86_64/is_fpreg.c x86_64/regname.c ) # The list of files that go into libunwind: -SET(libunwind_la_SOURCES_x86_64 +set(libunwind_la_SOURCES_x86_64 ${libunwind_la_SOURCES_x86_64_common} ${libunwind_la_SOURCES_x86_64_os_local} ${libunwind_la_SOURCES_local} @@ -292,7 +294,7 @@ SET(libunwind_la_SOURCES_x86_64 ) # The list of files that go into libunwind-x86_64: -SET(libunwind_x86_64_la_SOURCES_x86_64 +set(libunwind_x86_64_la_SOURCES_x86_64 ${libunwind_la_SOURCES_x86_64_common} ${libunwind_la_SOURCES_x86_64_os} ${libunwind_la_SOURCES_generic} @@ -304,13 +306,13 @@ SET(libunwind_x86_64_la_SOURCES_x86_64 ) # The list of files that go both into libunwind and libunwind-s390x: -SET(libunwind_la_SOURCES_s390x_common +set(libunwind_la_SOURCES_s390x_common ${libunwind_la_SOURCES_common} s390x/is_fpreg.c s390x/regname.c ) # The list of files that go into libunwind: -SET(libunwind_la_SOURCES_s390x +set(libunwind_la_SOURCES_s390x ${libunwind_la_SOURCES_s390x_common} ${libunwind_la_SOURCES_local} s390x/setcontext.S s390x/getcontext.S @@ -322,7 +324,7 @@ SET(libunwind_la_SOURCES_s390x ) # The list of files that go into libunwind-s390x: -SET(libunwind_s390x_la_SOURCES_s390x +set(libunwind_s390x_la_SOURCES_s390x ${libunwind_la_SOURCES_s390x_common} ${libunwind_la_SOURCES_generic} s390x/Gapply_reg_state.c s390x/Greg_states_iterate.c @@ -334,52 +336,49 @@ SET(libunwind_s390x_la_SOURCES_s390x if(CLR_CMAKE_HOST_UNIX) if(CLR_CMAKE_HOST_ARCH_ARM64) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_aarch64}) - SET(libunwind_remote_la_SOURCES ${libunwind_aarch64_la_SOURCES_aarch64}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_aarch64}) + set(libunwind_remote_la_SOURCES ${libunwind_aarch64_la_SOURCES_aarch64}) + set(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES aarch64/siglongjmp.S) elseif(CLR_CMAKE_HOST_ARCH_ARM) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) - SET(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) + set(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) + set(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES arm/siglongjmp.S) elseif(CLR_CMAKE_HOST_ARCH_ARMV6) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) - SET(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) + set(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) + set(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES arm/siglongjmp.S) elseif(CLR_CMAKE_HOST_ARCH_I386) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86} ${libunwind_x86_la_SOURCES_os}) - SET(libunwind_remote_la_SOURCES ${libunwind_x86_la_SOURCES_x86}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86} ${libunwind_x86_la_SOURCES_os}) + set(libunwind_remote_la_SOURCES ${libunwind_x86_la_SOURCES_x86}) + set(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES x86/longjmp.S x86/siglongjmp.S) elseif(CLR_CMAKE_HOST_ARCH_AMD64) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86_64}) - SET(libunwind_remote_la_SOURCES ${libunwind_x86_64_la_SOURCES_x86_64}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86_64}) + set(libunwind_remote_la_SOURCES ${libunwind_x86_64_la_SOURCES_x86_64}) + set(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES x86_64/longjmp.S x86_64/siglongjmp.SA) elseif(CLR_CMAKE_HOST_ARCH_S390X) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_s390x}) - SET(libunwind_remote_la_SOURCES ${libunwind_s390x_la_SOURCES_s390x}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_s390x}) + set(libunwind_remote_la_SOURCES ${libunwind_s390x_la_SOURCES_s390x}) + set(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) elseif(CLR_CMAKE_HOST_ARCH_LOONGARCH64) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_loongarch}) - SET(libunwind_remote_la_SOURCES ${libunwind_loongarch_la_SOURCES_loongarch}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_loongarch}) + set(libunwind_remote_la_SOURCES ${libunwind_loongarch_la_SOURCES_loongarch}) + set(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES loongarch64/siglongjmp.S) endif() if(CLR_CMAKE_HOST_OSX) - add_library(libunwind_dac - OBJECT - ../../libunwind_mac/src/missing-functions.c + set(LIBUNWIND_SOURCES_BASE ${libunwind_remote_la_SOURCES} ${libunwind_dwarf_common_la_SOURCES} ${libunwind_dwarf_generic_la_SOURCES} ) else() - add_library(libunwind - OBJECT + set(LIBUNWIND_SOURCES_BASE ${libunwind_la_SOURCES} ${libunwind_remote_la_SOURCES} ${libunwind_dwarf_local_la_SOURCES} @@ -391,41 +390,39 @@ if(CLR_CMAKE_HOST_UNIX) else(CLR_CMAKE_HOST_UNIX) if(CLR_CMAKE_TARGET_ARCH_ARM64) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_aarch64}) - SET(libunwind_remote_la_SOURCES ${libunwind_aarch64_la_SOURCES_aarch64}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_aarch64}) + set(libunwind_remote_la_SOURCES ${libunwind_aarch64_la_SOURCES_aarch64}) + set(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES aarch64/siglongjmp.S) elseif(CLR_CMAKE_TARGET_ARCH_ARM) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) - SET(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) + set(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) + set(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES arm/siglongjmp.S) elseif(CLR_CMAKE_TARGET_ARCH_ARMV6) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) - SET(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) + set(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) + set(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES arm/siglongjmp.S) elseif(CLR_CMAKE_TARGET_ARCH_I386) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86} ${libunwind_x86_la_SOURCES_os}) - SET(libunwind_remote_la_SOURCES ${libunwind_x86_la_SOURCES_x86}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86} ${libunwind_x86_la_SOURCES_os}) + set(libunwind_remote_la_SOURCES ${libunwind_x86_la_SOURCES_x86}) + set(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES x86/longjmp.S x86/siglongjmp.S) elseif(CLR_CMAKE_TARGET_ARCH_AMD64) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86_64}) - SET(libunwind_remote_la_SOURCES ${libunwind_x86_64_la_SOURCES_x86_64}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86_64}) + set(libunwind_remote_la_SOURCES ${libunwind_x86_64_la_SOURCES_x86_64}) + set(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) list(APPEND libunwind_setjmp_la_SOURCES x86_64/longjmp.S x86_64/siglongjmp.SA) elseif(CLR_CMAKE_TARGET_ARCH_S390X) - SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_s390x}) - SET(libunwind_remote_la_SOURCES ${libunwind_s390x_la_SOURCES_s390x}) - SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + set(libunwind_la_SOURCES ${libunwind_la_SOURCES_s390x}) + set(libunwind_remote_la_SOURCES ${libunwind_s390x_la_SOURCES_s390x}) + set(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) endif() set_source_files_properties(${CLR_DIR}/pal/src/exception/remote-unwind.cpp PROPERTIES COMPILE_FLAGS /TP INCLUDE_DIRECTORIES ${CLR_DIR}/inc) - add_library(libunwind_xdac - OBJECT - ../../exception/remote-unwind.cpp + set(LIBUNWIND_SOURCES_BASE win/pal-single-threaded.c # ${libunwind_la_SOURCES} Local... ${libunwind_remote_la_SOURCES} @@ -437,3 +434,5 @@ else(CLR_CMAKE_HOST_UNIX) ${libunwind_elf_la_SOURCES} ) endif(CLR_CMAKE_HOST_UNIX) + +addprefix(LIBUNWIND_SOURCES "${CMAKE_CURRENT_LIST_DIR}/libunwind/src" "${LIBUNWIND_SOURCES_BASE}") diff --git a/src/coreclr/pal/src/libunwind/.gitignore b/src/native/external/libunwind/.gitignore similarity index 100% rename from src/coreclr/pal/src/libunwind/.gitignore rename to src/native/external/libunwind/.gitignore diff --git a/src/coreclr/pal/src/libunwind/.travis.yml b/src/native/external/libunwind/.travis.yml similarity index 100% rename from src/coreclr/pal/src/libunwind/.travis.yml rename to src/native/external/libunwind/.travis.yml diff --git a/src/coreclr/pal/src/libunwind/AUTHORS b/src/native/external/libunwind/AUTHORS similarity index 100% rename from src/coreclr/pal/src/libunwind/AUTHORS rename to src/native/external/libunwind/AUTHORS diff --git a/src/native/external/libunwind/CMakeLists.txt b/src/native/external/libunwind/CMakeLists.txt new file mode 100644 index 0000000000000..8b542f240d2e9 --- /dev/null +++ b/src/native/external/libunwind/CMakeLists.txt @@ -0,0 +1,108 @@ +project(libunwind) + +cmake_minimum_required(VERSION 3.16.1) + +set(PKG_MAJOR "1") +set(PKG_MINOR "6") +set(PKG_EXTRA "-rc1") +set(PACKAGE_STRING "libunwind") +set(PACKAGE_BUGREPORT "") + + +if ('$ENV{TARGET}' STREQUAL 'x86_64-linux-gnu') + set(TARGET_AMD64 1) + set(arch x86_64) + add_definitions(-D__x86_64__) + add_definitions(-D__amd64__) + add_definitions(-D__linux__) +elseif ('$ENV{TARGET}' STREQUAL 'aarch64-linux-gnu') + set(TARGET_AARCH64 1) + set(arch aarch64) + add_definitions(-D__aarch64__) + add_definitions(-D__linux__) +elseif ('$ENV{TARGET}' STREQUAL 'arm-linux-gnueabihf') + set(TARGET_ARM 1) + set(arch arm) + add_definitions(-D__arm__) + add_definitions(-D__linux__) +elseif ('$ENV{TARGET}' STREQUAL 's390x-linux-gnu') + set(TARGET_S390X 1) + set(arch s390x) + add_definitions(-D__s390x__) + add_definitions(-D__linux__) +elseif ('$ENV{TARGET}' STREQUAL 'loongarch64-linux-gnu') + set(TARGET_LOONGARCH64 1) + set(arch loongarch64) + add_definitions(-D__loongarch64) + add_definitions(-D__linux__) +else () + message(FATAL_ERROR "Unrecognize value in environment variable TARGET") +endif () + +include(CheckCSourceCompiles) +include(CheckIncludeFiles) + +if ("${CMAKE_GENERATOR}" MATCHES "^Visual Studio.*$") + message(VERBOSE "Using generator ${CMAKE_GENERATOR}") + # Assume we are using default MSVC compiler + add_compile_options(/std:c++latest) + add_compile_options(/TC) # compile all files as C + add_compile_options(/permissive-) + + # files for cross os compilation + include_directories(include/win) + + # Warnings in release builds + add_compile_options(-wd4068) # ignore unknown pragma warnings (gcc pragmas) + add_compile_options(-wd4146) # minus operator applied to unsigned + add_compile_options(-wd4244) # possible loss of data + add_compile_options(-wd4267) # possible loss of data + add_compile_options(-wd4334) # 32-bit shift implicitly converted to 64 bits + + # Disable warning due to incorrect format specifier in debugging printf via the Debug macro + add_compile_options(-wd4311) # pointer truncation from 'unw_word_t *' to 'long' + add_compile_options(-wd4475) # 'fprintf' : length modifier 'L' cannot be used + add_compile_options(-wd4477) # fprintf argument type + + # Windows builds will only support remote unwind + add_definitions(-DUNW_REMOTE_ONLY) + + # Disable security warnings + add_definitions(-D_CRT_SECURE_NO_WARNINGS) + + # Our posix abstraction layer will provide these headers + set(HAVE_ELF_H 1) + set(HAVE_ENDIAN_H 1) + + # MSVC compiler is currently missing C11 stdalign.h header + # Fake it until support is added + check_include_files(stdalign.h HAVE_STDALIGN_H) + if (NOT HAVE_STDALIGN_H) + configure_file(include/win/fakestdalign.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/stdalign.h) + endif (NOT HAVE_STDALIGN_H) + + # MSVC compiler is currently missing C11 stdatomic.h header + # Fake it until support is added + check_include_files(stdatomic.h HAVE_STDATOMIC_H) + if (NOT HAVE_STDATOMIC_H) + configure_file(include/win/fakestdatomic.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/stdatomic.h) + endif (NOT HAVE_STDATOMIC_H) + + # MSVC compiler is currently missing C11 _Thread_local + check_c_source_compiles("void main() { _Thread_local int a; }" HAVE_THREAD_LOCAL) + if (NOT HAVE_THREAD_LOCAL) + add_definitions(-D_Thread_local=) + endif (NOT HAVE_THREAD_LOCAL) +else () + message(FATAL_ERROR "This CMake file is currently only designed for building on Visual Studio") +endif () + +add_definitions(-DHAVE_CONFIG_H) + +configure_file(include/config.h.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/include/config.h) +configure_file(include/libunwind-common.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/libunwind-common.h) +configure_file(include/libunwind.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/libunwind.h) +configure_file(include/tdep/libunwind_i.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/tdep/libunwind_i.h) + +add_subdirectory(src) + diff --git a/src/coreclr/pal/src/libunwind/COPYING b/src/native/external/libunwind/COPYING similarity index 100% rename from src/coreclr/pal/src/libunwind/COPYING rename to src/native/external/libunwind/COPYING diff --git a/src/coreclr/pal/src/libunwind/ChangeLog b/src/native/external/libunwind/ChangeLog similarity index 100% rename from src/coreclr/pal/src/libunwind/ChangeLog rename to src/native/external/libunwind/ChangeLog diff --git a/src/coreclr/pal/src/libunwind/LICENSE b/src/native/external/libunwind/LICENSE similarity index 100% rename from src/coreclr/pal/src/libunwind/LICENSE rename to src/native/external/libunwind/LICENSE diff --git a/src/coreclr/pal/src/libunwind/Makefile.am b/src/native/external/libunwind/Makefile.am similarity index 100% rename from src/coreclr/pal/src/libunwind/Makefile.am rename to src/native/external/libunwind/Makefile.am diff --git a/src/coreclr/pal/src/libunwind/NEWS b/src/native/external/libunwind/NEWS similarity index 100% rename from src/coreclr/pal/src/libunwind/NEWS rename to src/native/external/libunwind/NEWS diff --git a/src/coreclr/pal/src/libunwind/README b/src/native/external/libunwind/README similarity index 100% rename from src/coreclr/pal/src/libunwind/README rename to src/native/external/libunwind/README diff --git a/src/coreclr/pal/src/libunwind/README.md b/src/native/external/libunwind/README.md similarity index 100% rename from src/coreclr/pal/src/libunwind/README.md rename to src/native/external/libunwind/README.md diff --git a/src/coreclr/pal/src/libunwind/TODO b/src/native/external/libunwind/TODO similarity index 100% rename from src/coreclr/pal/src/libunwind/TODO rename to src/native/external/libunwind/TODO diff --git a/src/coreclr/pal/src/libunwind/acinclude.m4 b/src/native/external/libunwind/acinclude.m4 similarity index 100% rename from src/coreclr/pal/src/libunwind/acinclude.m4 rename to src/native/external/libunwind/acinclude.m4 diff --git a/src/coreclr/pal/src/libunwind/configure.ac b/src/native/external/libunwind/configure.ac similarity index 100% rename from src/coreclr/pal/src/libunwind/configure.ac rename to src/native/external/libunwind/configure.ac diff --git a/src/coreclr/pal/src/libunwind/doc/Makefile.am b/src/native/external/libunwind/doc/Makefile.am similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/Makefile.am rename to src/native/external/libunwind/doc/Makefile.am diff --git a/src/coreclr/pal/src/libunwind/doc/NOTES b/src/native/external/libunwind/doc/NOTES similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/NOTES rename to src/native/external/libunwind/doc/NOTES diff --git a/src/coreclr/pal/src/libunwind/doc/_U_dyn_cancel.man b/src/native/external/libunwind/doc/_U_dyn_cancel.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/_U_dyn_cancel.man rename to src/native/external/libunwind/doc/_U_dyn_cancel.man diff --git a/src/coreclr/pal/src/libunwind/doc/_U_dyn_cancel.tex b/src/native/external/libunwind/doc/_U_dyn_cancel.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/_U_dyn_cancel.tex rename to src/native/external/libunwind/doc/_U_dyn_cancel.tex diff --git a/src/coreclr/pal/src/libunwind/doc/_U_dyn_register.man b/src/native/external/libunwind/doc/_U_dyn_register.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/_U_dyn_register.man rename to src/native/external/libunwind/doc/_U_dyn_register.man diff --git a/src/coreclr/pal/src/libunwind/doc/_U_dyn_register.tex b/src/native/external/libunwind/doc/_U_dyn_register.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/_U_dyn_register.tex rename to src/native/external/libunwind/doc/_U_dyn_register.tex diff --git a/src/coreclr/pal/src/libunwind/doc/common.tex.in b/src/native/external/libunwind/doc/common.tex.in similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/common.tex.in rename to src/native/external/libunwind/doc/common.tex.in diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-dynamic.man b/src/native/external/libunwind/doc/libunwind-dynamic.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-dynamic.man rename to src/native/external/libunwind/doc/libunwind-dynamic.man diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-dynamic.tex b/src/native/external/libunwind/doc/libunwind-dynamic.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-dynamic.tex rename to src/native/external/libunwind/doc/libunwind-dynamic.tex diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-ia64.man b/src/native/external/libunwind/doc/libunwind-ia64.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-ia64.man rename to src/native/external/libunwind/doc/libunwind-ia64.man diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-ia64.tex b/src/native/external/libunwind/doc/libunwind-ia64.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-ia64.tex rename to src/native/external/libunwind/doc/libunwind-ia64.tex diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-ptrace.man b/src/native/external/libunwind/doc/libunwind-ptrace.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-ptrace.man rename to src/native/external/libunwind/doc/libunwind-ptrace.man diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-ptrace.tex b/src/native/external/libunwind/doc/libunwind-ptrace.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-ptrace.tex rename to src/native/external/libunwind/doc/libunwind-ptrace.tex diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-setjmp.man b/src/native/external/libunwind/doc/libunwind-setjmp.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-setjmp.man rename to src/native/external/libunwind/doc/libunwind-setjmp.man diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind-setjmp.tex b/src/native/external/libunwind/doc/libunwind-setjmp.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind-setjmp.tex rename to src/native/external/libunwind/doc/libunwind-setjmp.tex diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind.man b/src/native/external/libunwind/doc/libunwind.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind.man rename to src/native/external/libunwind/doc/libunwind.man diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind.tex b/src/native/external/libunwind/doc/libunwind.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind.tex rename to src/native/external/libunwind/doc/libunwind.tex diff --git a/src/coreclr/pal/src/libunwind/doc/libunwind.trans b/src/native/external/libunwind/doc/libunwind.trans similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/libunwind.trans rename to src/native/external/libunwind/doc/libunwind.trans diff --git a/src/coreclr/pal/src/libunwind/doc/unw_apply_reg_state.man b/src/native/external/libunwind/doc/unw_apply_reg_state.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_apply_reg_state.man rename to src/native/external/libunwind/doc/unw_apply_reg_state.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_apply_reg_state.tex b/src/native/external/libunwind/doc/unw_apply_reg_state.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_apply_reg_state.tex rename to src/native/external/libunwind/doc/unw_apply_reg_state.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_backtrace.man b/src/native/external/libunwind/doc/unw_backtrace.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_backtrace.man rename to src/native/external/libunwind/doc/unw_backtrace.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_backtrace.tex b/src/native/external/libunwind/doc/unw_backtrace.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_backtrace.tex rename to src/native/external/libunwind/doc/unw_backtrace.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_create_addr_space.man b/src/native/external/libunwind/doc/unw_create_addr_space.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_create_addr_space.man rename to src/native/external/libunwind/doc/unw_create_addr_space.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_create_addr_space.tex b/src/native/external/libunwind/doc/unw_create_addr_space.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_create_addr_space.tex rename to src/native/external/libunwind/doc/unw_create_addr_space.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_destroy_addr_space.man b/src/native/external/libunwind/doc/unw_destroy_addr_space.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_destroy_addr_space.man rename to src/native/external/libunwind/doc/unw_destroy_addr_space.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_destroy_addr_space.tex b/src/native/external/libunwind/doc/unw_destroy_addr_space.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_destroy_addr_space.tex rename to src/native/external/libunwind/doc/unw_destroy_addr_space.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_flush_cache.man b/src/native/external/libunwind/doc/unw_flush_cache.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_flush_cache.man rename to src/native/external/libunwind/doc/unw_flush_cache.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_flush_cache.tex b/src/native/external/libunwind/doc/unw_flush_cache.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_flush_cache.tex rename to src/native/external/libunwind/doc/unw_flush_cache.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_accessors.man b/src/native/external/libunwind/doc/unw_get_accessors.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_accessors.man rename to src/native/external/libunwind/doc/unw_get_accessors.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_accessors.tex b/src/native/external/libunwind/doc/unw_get_accessors.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_accessors.tex rename to src/native/external/libunwind/doc/unw_get_accessors.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_fpreg.man b/src/native/external/libunwind/doc/unw_get_fpreg.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_fpreg.man rename to src/native/external/libunwind/doc/unw_get_fpreg.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_fpreg.tex b/src/native/external/libunwind/doc/unw_get_fpreg.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_fpreg.tex rename to src/native/external/libunwind/doc/unw_get_fpreg.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_proc_info.man b/src/native/external/libunwind/doc/unw_get_proc_info.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_proc_info.man rename to src/native/external/libunwind/doc/unw_get_proc_info.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_proc_info.tex b/src/native/external/libunwind/doc/unw_get_proc_info.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_proc_info.tex rename to src/native/external/libunwind/doc/unw_get_proc_info.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_proc_info_by_ip.man b/src/native/external/libunwind/doc/unw_get_proc_info_by_ip.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_proc_info_by_ip.man rename to src/native/external/libunwind/doc/unw_get_proc_info_by_ip.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_proc_info_by_ip.tex b/src/native/external/libunwind/doc/unw_get_proc_info_by_ip.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_proc_info_by_ip.tex rename to src/native/external/libunwind/doc/unw_get_proc_info_by_ip.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_proc_name.man b/src/native/external/libunwind/doc/unw_get_proc_name.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_proc_name.man rename to src/native/external/libunwind/doc/unw_get_proc_name.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_proc_name.tex b/src/native/external/libunwind/doc/unw_get_proc_name.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_proc_name.tex rename to src/native/external/libunwind/doc/unw_get_proc_name.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_reg.man b/src/native/external/libunwind/doc/unw_get_reg.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_reg.man rename to src/native/external/libunwind/doc/unw_get_reg.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_get_reg.tex b/src/native/external/libunwind/doc/unw_get_reg.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_get_reg.tex rename to src/native/external/libunwind/doc/unw_get_reg.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_getcontext.man b/src/native/external/libunwind/doc/unw_getcontext.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_getcontext.man rename to src/native/external/libunwind/doc/unw_getcontext.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_getcontext.tex b/src/native/external/libunwind/doc/unw_getcontext.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_getcontext.tex rename to src/native/external/libunwind/doc/unw_getcontext.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_init_local.man b/src/native/external/libunwind/doc/unw_init_local.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_init_local.man rename to src/native/external/libunwind/doc/unw_init_local.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_init_local.tex b/src/native/external/libunwind/doc/unw_init_local.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_init_local.tex rename to src/native/external/libunwind/doc/unw_init_local.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_init_local2.man b/src/native/external/libunwind/doc/unw_init_local2.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_init_local2.man rename to src/native/external/libunwind/doc/unw_init_local2.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_init_remote.man b/src/native/external/libunwind/doc/unw_init_remote.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_init_remote.man rename to src/native/external/libunwind/doc/unw_init_remote.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_init_remote.tex b/src/native/external/libunwind/doc/unw_init_remote.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_init_remote.tex rename to src/native/external/libunwind/doc/unw_init_remote.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_is_fpreg.man b/src/native/external/libunwind/doc/unw_is_fpreg.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_is_fpreg.man rename to src/native/external/libunwind/doc/unw_is_fpreg.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_is_fpreg.tex b/src/native/external/libunwind/doc/unw_is_fpreg.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_is_fpreg.tex rename to src/native/external/libunwind/doc/unw_is_fpreg.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_is_signal_frame.man b/src/native/external/libunwind/doc/unw_is_signal_frame.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_is_signal_frame.man rename to src/native/external/libunwind/doc/unw_is_signal_frame.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_is_signal_frame.tex b/src/native/external/libunwind/doc/unw_is_signal_frame.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_is_signal_frame.tex rename to src/native/external/libunwind/doc/unw_is_signal_frame.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_reg_states_iterate.man b/src/native/external/libunwind/doc/unw_reg_states_iterate.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_reg_states_iterate.man rename to src/native/external/libunwind/doc/unw_reg_states_iterate.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_reg_states_iterate.tex b/src/native/external/libunwind/doc/unw_reg_states_iterate.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_reg_states_iterate.tex rename to src/native/external/libunwind/doc/unw_reg_states_iterate.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_regname.man b/src/native/external/libunwind/doc/unw_regname.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_regname.man rename to src/native/external/libunwind/doc/unw_regname.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_regname.tex b/src/native/external/libunwind/doc/unw_regname.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_regname.tex rename to src/native/external/libunwind/doc/unw_regname.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_resume.man b/src/native/external/libunwind/doc/unw_resume.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_resume.man rename to src/native/external/libunwind/doc/unw_resume.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_resume.tex b/src/native/external/libunwind/doc/unw_resume.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_resume.tex rename to src/native/external/libunwind/doc/unw_resume.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_cache_size.man b/src/native/external/libunwind/doc/unw_set_cache_size.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_cache_size.man rename to src/native/external/libunwind/doc/unw_set_cache_size.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_cache_size.tex b/src/native/external/libunwind/doc/unw_set_cache_size.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_cache_size.tex rename to src/native/external/libunwind/doc/unw_set_cache_size.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_caching_policy.man b/src/native/external/libunwind/doc/unw_set_caching_policy.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_caching_policy.man rename to src/native/external/libunwind/doc/unw_set_caching_policy.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_caching_policy.tex b/src/native/external/libunwind/doc/unw_set_caching_policy.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_caching_policy.tex rename to src/native/external/libunwind/doc/unw_set_caching_policy.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_fpreg.man b/src/native/external/libunwind/doc/unw_set_fpreg.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_fpreg.man rename to src/native/external/libunwind/doc/unw_set_fpreg.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_fpreg.tex b/src/native/external/libunwind/doc/unw_set_fpreg.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_fpreg.tex rename to src/native/external/libunwind/doc/unw_set_fpreg.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_reg.man b/src/native/external/libunwind/doc/unw_set_reg.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_reg.man rename to src/native/external/libunwind/doc/unw_set_reg.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_set_reg.tex b/src/native/external/libunwind/doc/unw_set_reg.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_set_reg.tex rename to src/native/external/libunwind/doc/unw_set_reg.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_step.man b/src/native/external/libunwind/doc/unw_step.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_step.man rename to src/native/external/libunwind/doc/unw_step.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_step.tex b/src/native/external/libunwind/doc/unw_step.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_step.tex rename to src/native/external/libunwind/doc/unw_step.tex diff --git a/src/coreclr/pal/src/libunwind/doc/unw_strerror.man b/src/native/external/libunwind/doc/unw_strerror.man similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_strerror.man rename to src/native/external/libunwind/doc/unw_strerror.man diff --git a/src/coreclr/pal/src/libunwind/doc/unw_strerror.tex b/src/native/external/libunwind/doc/unw_strerror.tex similarity index 100% rename from src/coreclr/pal/src/libunwind/doc/unw_strerror.tex rename to src/native/external/libunwind/doc/unw_strerror.tex diff --git a/src/coreclr/pal/src/libunwind/include/compiler.h b/src/native/external/libunwind/include/compiler.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/compiler.h rename to src/native/external/libunwind/include/compiler.h diff --git a/src/coreclr/pal/src/libunwind/include/config.h.cmake.in b/src/native/external/libunwind/include/config.h.cmake.in similarity index 100% rename from src/coreclr/pal/src/libunwind/include/config.h.cmake.in rename to src/native/external/libunwind/include/config.h.cmake.in diff --git a/src/coreclr/pal/src/libunwind/include/dwarf-eh.h b/src/native/external/libunwind/include/dwarf-eh.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/dwarf-eh.h rename to src/native/external/libunwind/include/dwarf-eh.h diff --git a/src/coreclr/pal/src/libunwind/include/dwarf.h b/src/native/external/libunwind/include/dwarf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/dwarf.h rename to src/native/external/libunwind/include/dwarf.h diff --git a/src/coreclr/pal/src/libunwind/include/dwarf_i.h b/src/native/external/libunwind/include/dwarf_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/dwarf_i.h rename to src/native/external/libunwind/include/dwarf_i.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-aarch64.h b/src/native/external/libunwind/include/libunwind-aarch64.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-aarch64.h rename to src/native/external/libunwind/include/libunwind-aarch64.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-arm.h b/src/native/external/libunwind/include/libunwind-arm.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-arm.h rename to src/native/external/libunwind/include/libunwind-arm.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-common.h.in b/src/native/external/libunwind/include/libunwind-common.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-common.h.in rename to src/native/external/libunwind/include/libunwind-common.h.in diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-coredump.h b/src/native/external/libunwind/include/libunwind-coredump.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-coredump.h rename to src/native/external/libunwind/include/libunwind-coredump.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-dynamic.h b/src/native/external/libunwind/include/libunwind-dynamic.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-dynamic.h rename to src/native/external/libunwind/include/libunwind-dynamic.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-hppa.h b/src/native/external/libunwind/include/libunwind-hppa.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-hppa.h rename to src/native/external/libunwind/include/libunwind-hppa.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-ia64.h b/src/native/external/libunwind/include/libunwind-ia64.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-ia64.h rename to src/native/external/libunwind/include/libunwind-ia64.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-loongarch64.h b/src/native/external/libunwind/include/libunwind-loongarch64.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-loongarch64.h rename to src/native/external/libunwind/include/libunwind-loongarch64.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-mips.h b/src/native/external/libunwind/include/libunwind-mips.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-mips.h rename to src/native/external/libunwind/include/libunwind-mips.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-ppc32.h b/src/native/external/libunwind/include/libunwind-ppc32.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-ppc32.h rename to src/native/external/libunwind/include/libunwind-ppc32.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-ppc64.h b/src/native/external/libunwind/include/libunwind-ppc64.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-ppc64.h rename to src/native/external/libunwind/include/libunwind-ppc64.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-ptrace.h b/src/native/external/libunwind/include/libunwind-ptrace.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-ptrace.h rename to src/native/external/libunwind/include/libunwind-ptrace.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-riscv.h b/src/native/external/libunwind/include/libunwind-riscv.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-riscv.h rename to src/native/external/libunwind/include/libunwind-riscv.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-s390x.h b/src/native/external/libunwind/include/libunwind-s390x.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-s390x.h rename to src/native/external/libunwind/include/libunwind-s390x.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-sh.h b/src/native/external/libunwind/include/libunwind-sh.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-sh.h rename to src/native/external/libunwind/include/libunwind-sh.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-tilegx.h b/src/native/external/libunwind/include/libunwind-tilegx.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-tilegx.h rename to src/native/external/libunwind/include/libunwind-tilegx.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-x86.h b/src/native/external/libunwind/include/libunwind-x86.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-x86.h rename to src/native/external/libunwind/include/libunwind-x86.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind-x86_64.h b/src/native/external/libunwind/include/libunwind-x86_64.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind-x86_64.h rename to src/native/external/libunwind/include/libunwind-x86_64.h diff --git a/src/coreclr/pal/src/libunwind/include/libunwind.h.in b/src/native/external/libunwind/include/libunwind.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind.h.in rename to src/native/external/libunwind/include/libunwind.h.in diff --git a/src/coreclr/pal/src/libunwind/include/libunwind_i.h b/src/native/external/libunwind/include/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/libunwind_i.h rename to src/native/external/libunwind/include/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/mempool.h b/src/native/external/libunwind/include/mempool.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/mempool.h rename to src/native/external/libunwind/include/mempool.h diff --git a/src/coreclr/pal/src/libunwind/include/remote.h b/src/native/external/libunwind/include/remote.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/remote.h rename to src/native/external/libunwind/include/remote.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-aarch64/dwarf-config.h b/src/native/external/libunwind/include/tdep-aarch64/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-aarch64/dwarf-config.h rename to src/native/external/libunwind/include/tdep-aarch64/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-aarch64/jmpbuf.h b/src/native/external/libunwind/include/tdep-aarch64/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-aarch64/jmpbuf.h rename to src/native/external/libunwind/include/tdep-aarch64/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-aarch64/libunwind_i.h b/src/native/external/libunwind/include/tdep-aarch64/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-aarch64/libunwind_i.h rename to src/native/external/libunwind/include/tdep-aarch64/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-arm/dwarf-config.h b/src/native/external/libunwind/include/tdep-arm/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-arm/dwarf-config.h rename to src/native/external/libunwind/include/tdep-arm/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-arm/ex_tables.h b/src/native/external/libunwind/include/tdep-arm/ex_tables.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-arm/ex_tables.h rename to src/native/external/libunwind/include/tdep-arm/ex_tables.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-arm/jmpbuf.h b/src/native/external/libunwind/include/tdep-arm/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-arm/jmpbuf.h rename to src/native/external/libunwind/include/tdep-arm/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-arm/libunwind_i.h b/src/native/external/libunwind/include/tdep-arm/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-arm/libunwind_i.h rename to src/native/external/libunwind/include/tdep-arm/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-hppa/dwarf-config.h b/src/native/external/libunwind/include/tdep-hppa/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-hppa/dwarf-config.h rename to src/native/external/libunwind/include/tdep-hppa/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-hppa/jmpbuf.h b/src/native/external/libunwind/include/tdep-hppa/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-hppa/jmpbuf.h rename to src/native/external/libunwind/include/tdep-hppa/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-hppa/libunwind_i.h b/src/native/external/libunwind/include/tdep-hppa/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-hppa/libunwind_i.h rename to src/native/external/libunwind/include/tdep-hppa/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ia64/jmpbuf.h b/src/native/external/libunwind/include/tdep-ia64/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ia64/jmpbuf.h rename to src/native/external/libunwind/include/tdep-ia64/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ia64/libunwind_i.h b/src/native/external/libunwind/include/tdep-ia64/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ia64/libunwind_i.h rename to src/native/external/libunwind/include/tdep-ia64/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ia64/rse.h b/src/native/external/libunwind/include/tdep-ia64/rse.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ia64/rse.h rename to src/native/external/libunwind/include/tdep-ia64/rse.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ia64/script.h b/src/native/external/libunwind/include/tdep-ia64/script.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ia64/script.h rename to src/native/external/libunwind/include/tdep-ia64/script.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-loongarch64/dwarf-config.h b/src/native/external/libunwind/include/tdep-loongarch64/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-loongarch64/dwarf-config.h rename to src/native/external/libunwind/include/tdep-loongarch64/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-loongarch64/jmpbuf.h b/src/native/external/libunwind/include/tdep-loongarch64/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-loongarch64/jmpbuf.h rename to src/native/external/libunwind/include/tdep-loongarch64/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-loongarch64/libunwind_i.h b/src/native/external/libunwind/include/tdep-loongarch64/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-loongarch64/libunwind_i.h rename to src/native/external/libunwind/include/tdep-loongarch64/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-mips/dwarf-config.h b/src/native/external/libunwind/include/tdep-mips/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-mips/dwarf-config.h rename to src/native/external/libunwind/include/tdep-mips/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-mips/jmpbuf.h b/src/native/external/libunwind/include/tdep-mips/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-mips/jmpbuf.h rename to src/native/external/libunwind/include/tdep-mips/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-mips/libunwind_i.h b/src/native/external/libunwind/include/tdep-mips/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-mips/libunwind_i.h rename to src/native/external/libunwind/include/tdep-mips/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ppc32/dwarf-config.h b/src/native/external/libunwind/include/tdep-ppc32/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ppc32/dwarf-config.h rename to src/native/external/libunwind/include/tdep-ppc32/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ppc32/jmpbuf.h b/src/native/external/libunwind/include/tdep-ppc32/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ppc32/jmpbuf.h rename to src/native/external/libunwind/include/tdep-ppc32/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ppc32/libunwind_i.h b/src/native/external/libunwind/include/tdep-ppc32/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ppc32/libunwind_i.h rename to src/native/external/libunwind/include/tdep-ppc32/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ppc64/dwarf-config.h b/src/native/external/libunwind/include/tdep-ppc64/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ppc64/dwarf-config.h rename to src/native/external/libunwind/include/tdep-ppc64/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ppc64/jmpbuf.h b/src/native/external/libunwind/include/tdep-ppc64/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ppc64/jmpbuf.h rename to src/native/external/libunwind/include/tdep-ppc64/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-ppc64/libunwind_i.h b/src/native/external/libunwind/include/tdep-ppc64/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-ppc64/libunwind_i.h rename to src/native/external/libunwind/include/tdep-ppc64/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-riscv/dwarf-config.h b/src/native/external/libunwind/include/tdep-riscv/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-riscv/dwarf-config.h rename to src/native/external/libunwind/include/tdep-riscv/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-riscv/jmpbuf.h b/src/native/external/libunwind/include/tdep-riscv/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-riscv/jmpbuf.h rename to src/native/external/libunwind/include/tdep-riscv/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-riscv/libunwind_i.h b/src/native/external/libunwind/include/tdep-riscv/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-riscv/libunwind_i.h rename to src/native/external/libunwind/include/tdep-riscv/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-s390x/dwarf-config.h b/src/native/external/libunwind/include/tdep-s390x/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-s390x/dwarf-config.h rename to src/native/external/libunwind/include/tdep-s390x/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-s390x/jmpbuf.h b/src/native/external/libunwind/include/tdep-s390x/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-s390x/jmpbuf.h rename to src/native/external/libunwind/include/tdep-s390x/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-s390x/libunwind_i.h b/src/native/external/libunwind/include/tdep-s390x/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-s390x/libunwind_i.h rename to src/native/external/libunwind/include/tdep-s390x/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-sh/dwarf-config.h b/src/native/external/libunwind/include/tdep-sh/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-sh/dwarf-config.h rename to src/native/external/libunwind/include/tdep-sh/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-sh/jmpbuf.h b/src/native/external/libunwind/include/tdep-sh/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-sh/jmpbuf.h rename to src/native/external/libunwind/include/tdep-sh/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-sh/libunwind_i.h b/src/native/external/libunwind/include/tdep-sh/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-sh/libunwind_i.h rename to src/native/external/libunwind/include/tdep-sh/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-tilegx/dwarf-config.h b/src/native/external/libunwind/include/tdep-tilegx/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-tilegx/dwarf-config.h rename to src/native/external/libunwind/include/tdep-tilegx/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-tilegx/jmpbuf.h b/src/native/external/libunwind/include/tdep-tilegx/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-tilegx/jmpbuf.h rename to src/native/external/libunwind/include/tdep-tilegx/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-tilegx/libunwind_i.h b/src/native/external/libunwind/include/tdep-tilegx/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-tilegx/libunwind_i.h rename to src/native/external/libunwind/include/tdep-tilegx/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-x86/dwarf-config.h b/src/native/external/libunwind/include/tdep-x86/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-x86/dwarf-config.h rename to src/native/external/libunwind/include/tdep-x86/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-x86/jmpbuf.h b/src/native/external/libunwind/include/tdep-x86/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-x86/jmpbuf.h rename to src/native/external/libunwind/include/tdep-x86/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-x86/libunwind_i.h b/src/native/external/libunwind/include/tdep-x86/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-x86/libunwind_i.h rename to src/native/external/libunwind/include/tdep-x86/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-x86_64/dwarf-config.h b/src/native/external/libunwind/include/tdep-x86_64/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-x86_64/dwarf-config.h rename to src/native/external/libunwind/include/tdep-x86_64/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-x86_64/jmpbuf.h b/src/native/external/libunwind/include/tdep-x86_64/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-x86_64/jmpbuf.h rename to src/native/external/libunwind/include/tdep-x86_64/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep-x86_64/libunwind_i.h b/src/native/external/libunwind/include/tdep-x86_64/libunwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep-x86_64/libunwind_i.h rename to src/native/external/libunwind/include/tdep-x86_64/libunwind_i.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep/dwarf-config.h b/src/native/external/libunwind/include/tdep/dwarf-config.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep/dwarf-config.h rename to src/native/external/libunwind/include/tdep/dwarf-config.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep/jmpbuf.h b/src/native/external/libunwind/include/tdep/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep/jmpbuf.h rename to src/native/external/libunwind/include/tdep/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/include/tdep/libunwind_i.h.in b/src/native/external/libunwind/include/tdep/libunwind_i.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind/include/tdep/libunwind_i.h.in rename to src/native/external/libunwind/include/tdep/libunwind_i.h.in diff --git a/src/coreclr/pal/src/libunwind/include/unwind.h b/src/native/external/libunwind/include/unwind.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/unwind.h rename to src/native/external/libunwind/include/unwind.h diff --git a/src/coreclr/pal/src/libunwind/include/win/elf.h b/src/native/external/libunwind/include/win/elf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/elf.h rename to src/native/external/libunwind/include/win/elf.h diff --git a/src/coreclr/pal/src/libunwind/include/win/endian.h b/src/native/external/libunwind/include/win/endian.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/endian.h rename to src/native/external/libunwind/include/win/endian.h diff --git a/src/coreclr/pal/src/libunwind/include/win/fakestdalign.h.in b/src/native/external/libunwind/include/win/fakestdalign.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/fakestdalign.h.in rename to src/native/external/libunwind/include/win/fakestdalign.h.in diff --git a/src/coreclr/pal/src/libunwind/include/win/fakestdatomic.h.in b/src/native/external/libunwind/include/win/fakestdatomic.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/fakestdatomic.h.in rename to src/native/external/libunwind/include/win/fakestdatomic.h.in diff --git a/src/coreclr/pal/src/libunwind/include/win/freebsd-elf32.h b/src/native/external/libunwind/include/win/freebsd-elf32.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/freebsd-elf32.h rename to src/native/external/libunwind/include/win/freebsd-elf32.h diff --git a/src/coreclr/pal/src/libunwind/include/win/freebsd-elf64.h b/src/native/external/libunwind/include/win/freebsd-elf64.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/freebsd-elf64.h rename to src/native/external/libunwind/include/win/freebsd-elf64.h diff --git a/src/coreclr/pal/src/libunwind/include/win/freebsd-elf_common.h b/src/native/external/libunwind/include/win/freebsd-elf_common.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/freebsd-elf_common.h rename to src/native/external/libunwind/include/win/freebsd-elf_common.h diff --git a/src/coreclr/pal/src/libunwind/include/win/pthread.h b/src/native/external/libunwind/include/win/pthread.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/pthread.h rename to src/native/external/libunwind/include/win/pthread.h diff --git a/src/coreclr/pal/src/libunwind/include/win/signal.h b/src/native/external/libunwind/include/win/signal.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/signal.h rename to src/native/external/libunwind/include/win/signal.h diff --git a/src/coreclr/pal/src/libunwind/include/win/sys/mman.h b/src/native/external/libunwind/include/win/sys/mman.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/sys/mman.h rename to src/native/external/libunwind/include/win/sys/mman.h diff --git a/src/coreclr/pal/src/libunwind/include/win/sys/stat.h b/src/native/external/libunwind/include/win/sys/stat.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/sys/stat.h rename to src/native/external/libunwind/include/win/sys/stat.h diff --git a/src/coreclr/pal/src/libunwind/include/win/sys/syscall.h b/src/native/external/libunwind/include/win/sys/syscall.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/sys/syscall.h rename to src/native/external/libunwind/include/win/sys/syscall.h diff --git a/src/coreclr/pal/src/libunwind/include/win/sys/types.h b/src/native/external/libunwind/include/win/sys/types.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/sys/types.h rename to src/native/external/libunwind/include/win/sys/types.h diff --git a/src/coreclr/pal/src/libunwind/include/win/sys/ucontext.h b/src/native/external/libunwind/include/win/sys/ucontext.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/sys/ucontext.h rename to src/native/external/libunwind/include/win/sys/ucontext.h diff --git a/src/coreclr/pal/src/libunwind/include/win/ucontext.h b/src/native/external/libunwind/include/win/ucontext.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/ucontext.h rename to src/native/external/libunwind/include/win/ucontext.h diff --git a/src/coreclr/pal/src/libunwind/include/win/unistd.h b/src/native/external/libunwind/include/win/unistd.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/win/unistd.h rename to src/native/external/libunwind/include/win/unistd.h diff --git a/src/coreclr/pal/src/libunwind/include/x86/jmpbuf.h b/src/native/external/libunwind/include/x86/jmpbuf.h similarity index 100% rename from src/coreclr/pal/src/libunwind/include/x86/jmpbuf.h rename to src/native/external/libunwind/include/x86/jmpbuf.h diff --git a/src/coreclr/pal/src/libunwind/scripts/kernel-diff.sh b/src/native/external/libunwind/scripts/kernel-diff.sh similarity index 100% rename from src/coreclr/pal/src/libunwind/scripts/kernel-diff.sh rename to src/native/external/libunwind/scripts/kernel-diff.sh diff --git a/src/coreclr/pal/src/libunwind/scripts/kernel-files.txt b/src/native/external/libunwind/scripts/kernel-files.txt similarity index 100% rename from src/coreclr/pal/src/libunwind/scripts/kernel-files.txt rename to src/native/external/libunwind/scripts/kernel-files.txt diff --git a/src/coreclr/pal/src/libunwind/scripts/make-L-files b/src/native/external/libunwind/scripts/make-L-files similarity index 100% rename from src/coreclr/pal/src/libunwind/scripts/make-L-files rename to src/native/external/libunwind/scripts/make-L-files diff --git a/src/native/external/libunwind/src/CMakeLists.txt b/src/native/external/libunwind/src/CMakeLists.txt new file mode 100644 index 0000000000000..82ef68a9ec222 --- /dev/null +++ b/src/native/external/libunwind/src/CMakeLists.txt @@ -0,0 +1,363 @@ +set(CMAKE_INCLUDE_CURRENT_DIR ON) + +# other source files +include_directories(../include/tdep) +include_directories(../include) +include_directories(${CMAKE_CURRENT_BINARY_DIR}/../include/tdep) +include_directories(${CMAKE_CURRENT_BINARY_DIR}/../include) + +if(TARGET_ARM) + # Ensure that the remote and local unwind code can reside in the same binary without name clashing + add_definitions("-Darm_search_unwind_table=UNW_OBJ(arm_search_unwind_table)") + # We compile code with -std=c99 and the asm keyword is not recognized as it is a gnu extension + add_definitions(-Dasm=__asm__) + # The arm sources include ex_tables.h from include/tdep-arm without going through a redirection + # in include/tdep like it works for similar files on other architectures. So we need to add + # the include/tdep-arm to include directories + include_directories(../include/tdep-arm) +elseif(TARGET_AARCH64) + # We compile code with -std=c99 and the asm keyword is not recognized as it is a gnu extension + add_definitions(-Dasm=__asm__) +endif() + +SET(libunwind_ptrace_la_SOURCES + ptrace/_UPT_elf.c + ptrace/_UPT_accessors.c ptrace/_UPT_access_fpreg.c + ptrace/_UPT_access_mem.c ptrace/_UPT_access_reg.c + ptrace/_UPT_create.c ptrace/_UPT_destroy.c + ptrace/_UPT_find_proc_info.c ptrace/_UPT_get_dyn_info_list_addr.c + ptrace/_UPT_put_unwind_info.c ptrace/_UPT_get_proc_name.c + ptrace/_UPT_reg_offset.c ptrace/_UPT_resume.c +) + +SET(libunwind_coredump_la_SOURCES + coredump/_UCD_accessors.c + coredump/_UCD_create.c + coredump/_UCD_destroy.c + coredump/_UCD_access_mem.c + coredump/_UCD_elf_map_image.c + coredump/_UCD_find_proc_info.c + coredump/_UCD_get_proc_name.c + + coredump/_UPT_elf.c + coredump/_UPT_access_fpreg.c + coredump/_UPT_get_dyn_info_list_addr.c + coredump/_UPT_put_unwind_info.c + coredump/_UPT_resume.c +) + +# List of arch-independent files needed by generic library (libunwind-$ARCH): +SET(libunwind_la_SOURCES_generic + mi/Gdyn-extract.c mi/Gdyn-remote.c mi/Gfind_dynamic_proc_info.c + # The Gget_accessors.c implements the same function as Lget_accessors.c, so + # the source is excluded here to prevent name clash + #mi/Gget_accessors.c + mi/Gget_proc_info_by_ip.c mi/Gget_proc_name.c + mi/Gput_dynamic_unwind_info.c mi/Gdestroy_addr_space.c + mi/Gget_reg.c mi/Gset_reg.c + mi/Gget_fpreg.c mi/Gset_fpreg.c + mi/Gset_caching_policy.c + mi/Gset_cache_size.c +) + +SET(libunwind_la_SOURCES_os_linux + os-linux.c +) + +SET(libunwind_la_SOURCES_os_linux_local +# Nothing when we don't want to support CXX exceptions +) + +SET(libunwind_la_SOURCES_os_freebsd + os-freebsd.c +) + +SET(libunwind_la_SOURCES_os_freebsd_local +# Nothing +) + +SET(libunwind_la_SOURCES_os_solaris + os-solaris.c +) + +SET(libunwind_la_SOURCES_os_solaris_local +# Nothing +) + +if(UNW_CMAKE_TARGET_LINUX) + SET(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_linux}) + SET(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_linux_local}) + SET(libunwind_la_SOURCES_x86_os x86/Gos-linux.c) + SET(libunwind_x86_la_SOURCES_os x86/getcontext-linux.S) + SET(libunwind_la_SOURCES_x86_os_local x86/Los-linux.c) + SET(libunwind_la_SOURCES_x86_64_os x86_64/Gos-linux.c) + SET(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-linux.c) + SET(libunwind_la_SOURCES_arm_os arm/Gos-linux.c) + SET(libunwind_la_SOURCES_arm_os_local arm/Los-linux.c) + list(APPEND libunwind_coredump_la_SOURCES coredump/_UCD_access_reg_linux.c + coredump/_UCD_get_threadinfo_prstatus.c + coredump/_UCD_get_mapinfo_linux.c) +elseif(UNW_CMAKE_TARGET_FREEBSD) + SET(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_freebsd}) + SET(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_freebsd_local}) + SET(libunwind_la_SOURCES_x86_os x86/Gos-freebsd.c) + SET(libunwind_x86_la_SOURCES_os x86/getcontext-freebsd.S) + SET(libunwind_la_SOURCES_x86_os_local x86/Los-freebsd.c) + SET(libunwind_la_SOURCES_x86_64_os x86_64/Gos-freebsd.c) + SET(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-freebsd.c) + SET(libunwind_la_SOURCES_arm_os arm/Gos-freebsd.c) + SET(libunwind_la_SOURCES_arm_os_local arm/Los-freebsd.c) + list(APPEND libunwind_coredump_la_SOURCES coredump/_UCD_access_reg_freebsd.c + coredump/_UCD_get_threadinfo_prstatus.c + coredump/_UCD_get_mapinfo_generic.c) +elseif(UNW_CMAKE_HOST_SUNOS) + SET(libunwind_la_SOURCES_os ${libunwind_la_SOURCES_os_solaris}) + SET(libunwind_la_SOURCES_os_local ${libunwind_la_SOURCES_os_solaris_local}) + SET(libunwind_la_SOURCES_x86_64_os x86_64/Gos-solaris.c) + SET(libunwind_la_SOURCES_x86_64_os_local x86_64/Los-solaris.c) +endif() + +# List of arch-independent files needed by both local-only and generic +# libraries: +SET(libunwind_la_SOURCES_common + ${libunwind_la_SOURCES_os} + mi/init.c mi/flush_cache.c mi/mempool.c mi/strerror.c +) + +SET(libunwind_la_SOURCES_local_unwind +# Nothing when we don't want to support CXX exceptions +) + +# List of arch-independent files needed by local-only library (libunwind): +SET(libunwind_la_SOURCES_local_nounwind + ${libunwind_la_SOURCES_os_local} + mi/backtrace.c + mi/dyn-cancel.c mi/dyn-info-list.c mi/dyn-register.c + mi/Ldyn-extract.c mi/Lfind_dynamic_proc_info.c + mi/Lget_accessors.c + mi/Lget_proc_info_by_ip.c mi/Lget_proc_name.c + mi/Lput_dynamic_unwind_info.c mi/Ldestroy_addr_space.c + mi/Lget_reg.c mi/Lset_reg.c + mi/Lget_fpreg.c mi/Lset_fpreg.c + mi/Lset_caching_policy.c + mi/Lset_cache_size.c +) + +SET(libunwind_la_SOURCES_local + ${libunwind_la_SOURCES_local_nounwind} + ${libunwind_la_SOURCES_local_unwind} +) + +SET(libunwind_dwarf_common_la_SOURCES + dwarf/global.c +) + +SET(libunwind_dwarf_local_la_SOURCES + dwarf/Lexpr.c dwarf/Lfde.c dwarf/Lparser.c dwarf/Lpe.c + dwarf/Lfind_proc_info-lsb.c + dwarf/Lfind_unwind_table.c +) + +SET(libunwind_dwarf_generic_la_SOURCES + dwarf/Gexpr.c dwarf/Gfde.c dwarf/Gparser.c dwarf/Gpe.c + dwarf/Gfind_proc_info-lsb.c + dwarf/Gfind_unwind_table.c +) + +SET(libunwind_elf32_la_SOURCES + elf32.c +) + +SET(libunwind_elf64_la_SOURCES + elf64.c +) +SET(libunwind_elfxx_la_SOURCES + elfxx.c +) + +# The list of files that go into libunwind and libunwind-aarch64: +SET(libunwind_la_SOURCES_aarch64_common + ${libunwind_la_SOURCES_common} + aarch64/is_fpreg.c + aarch64/regname.c +) + +# The list of files that go into libunwind: +SET(libunwind_la_SOURCES_aarch64 + ${libunwind_la_SOURCES_aarch64_common} + ${libunwind_la_SOURCES_local} + aarch64/Lapply_reg_state.c aarch64/Lreg_states_iterate.c + aarch64/Lcreate_addr_space.c aarch64/Lget_proc_info.c + aarch64/Lget_save_loc.c aarch64/Lglobal.c aarch64/Linit.c + aarch64/Linit_local.c aarch64/Linit_remote.c + aarch64/Lis_signal_frame.c aarch64/Lregs.c aarch64/Lresume.c + aarch64/Lstash_frame.c aarch64/Lstep.c aarch64/Ltrace.c + aarch64/getcontext.S +) + +SET(libunwind_aarch64_la_SOURCES_aarch64 + ${libunwind_la_SOURCES_aarch64_common} + ${libunwind_la_SOURCES_generic} + aarch64/Gapply_reg_state.c aarch64/Greg_states_iterate.c + aarch64/Gcreate_addr_space.c aarch64/Gget_proc_info.c + aarch64/Gget_save_loc.c aarch64/Gglobal.c aarch64/Ginit.c + aarch64/Ginit_local.c aarch64/Ginit_remote.c + aarch64/Gis_signal_frame.c aarch64/Gregs.c aarch64/Gresume.c + aarch64/Gstash_frame.c aarch64/Gstep.c aarch64/Gtrace.c +) + +# The list of files that go into libunwind and libunwind-arm: +SET(libunwind_la_SOURCES_arm_common + ${libunwind_la_SOURCES_common} + arm/is_fpreg.c arm/regname.c +) + +# The list of files that go into libunwind: +SET(libunwind_la_SOURCES_arm + ${libunwind_la_SOURCES_arm_common} + ${libunwind_la_SOURCES_arm_os_local} + ${libunwind_la_SOURCES_local} + arm/getcontext.S + arm/Lapply_reg_state.c arm/Lreg_states_iterate.c + arm/Lcreate_addr_space.c arm/Lget_proc_info.c arm/Lget_save_loc.c + arm/Lglobal.c arm/Linit.c arm/Linit_local.c arm/Linit_remote.c + arm/Lregs.c arm/Lresume.c arm/Lstep.c + arm/Lex_tables.c arm/Lstash_frame.c arm/Ltrace.c +) + +# The list of files that go into libunwind-arm: +SET(libunwind_arm_la_SOURCES_arm + ${libunwind_la_SOURCES_arm_common} + ${libunwind_la_SOURCES_arm_os} + ${libunwind_la_SOURCES_generic} + arm/Gapply_reg_state.c arm/Greg_states_iterate.c + arm/Gcreate_addr_space.c arm/Gget_proc_info.c arm/Gget_save_loc.c + arm/Gglobal.c arm/Ginit.c arm/Ginit_local.c arm/Ginit_remote.c + arm/Gregs.c arm/Gresume.c arm/Gstep.c + arm/Gex_tables.c arm/Gstash_frame.c arm/Gtrace.c +) + +# The list of files that go both into libunwind and libunwind-x86_64: +SET(libunwind_la_SOURCES_x86_64_common + ${libunwind_la_SOURCES_common} + x86_64/is_fpreg.c x86_64/regname.c +) + +# The list of files that go into libunwind: +SET(libunwind_la_SOURCES_x86_64 + ${libunwind_la_SOURCES_x86_64_common} + ${libunwind_la_SOURCES_x86_64_os_local} + ${libunwind_la_SOURCES_local} + x86_64/setcontext.S + x86_64/Lapply_reg_state.c x86_64/Lreg_states_iterate.c + x86_64/Lcreate_addr_space.c x86_64/Lget_save_loc.c x86_64/Lglobal.c + x86_64/Linit.c x86_64/Linit_local.c x86_64/Linit_remote.c + x86_64/Lget_proc_info.c x86_64/Lregs.c x86_64/Lresume.c + x86_64/Lstash_frame.c x86_64/Lstep.c x86_64/Ltrace.c x86_64/getcontext.S +) + +# The list of files that go into libunwind-x86_64: +SET(libunwind_x86_64_la_SOURCES_x86_64 + ${libunwind_la_SOURCES_x86_64_common} + ${libunwind_la_SOURCES_x86_64_os} + ${libunwind_la_SOURCES_generic} + x86_64/Gapply_reg_state.c x86_64/Greg_states_iterate.c + x86_64/Gcreate_addr_space.c x86_64/Gget_save_loc.c x86_64/Gglobal.c + x86_64/Ginit.c x86_64/Ginit_local.c x86_64/Ginit_remote.c + x86_64/Gget_proc_info.c x86_64/Gregs.c x86_64/Gresume.c + x86_64/Gstash_frame.c x86_64/Gstep.c x86_64/Gtrace.c +) + +# The list of files that go both into libunwind and libunwind-s390x: +SET(libunwind_la_SOURCES_s390x_common + ${libunwind_la_SOURCES_common} + s390x/is_fpreg.c s390x/regname.c +) + +# The list of files that go into libunwind: +SET(libunwind_la_SOURCES_s390x + ${libunwind_la_SOURCES_s390x_common} + ${libunwind_la_SOURCES_local} + s390x/setcontext.S s390x/getcontext.S + s390x/Lapply_reg_state.c s390x/Lreg_states_iterate.c + s390x/Lcreate_addr_space.c s390x/Lget_save_loc.c s390x/Lglobal.c + s390x/Linit.c s390x/Linit_local.c s390x/Linit_remote.c + s390x/Lget_proc_info.c s390x/Lregs.c s390x/Lresume.c + s390x/Lis_signal_frame.c s390x/Lstep.c +) + +# The list of files that go into libunwind-s390x: +SET(libunwind_s390x_la_SOURCES_s390x + ${libunwind_la_SOURCES_s390x_common} + ${libunwind_la_SOURCES_generic} + s390x/Gapply_reg_state.c s390x/Greg_states_iterate.c + s390x/Gcreate_addr_space.c s390x/Gget_save_loc.c s390x/Gglobal.c + s390x/Ginit.c s390x/Ginit_local.c s390x/Ginit_remote.c + s390x/Gget_proc_info.c s390x/Gregs.c s390x/Gresume.c + s390x/Gis_signal_frame.c s390x/Gstep.c +) + +# The list of files that go into libunwind and libunwind-loongarch64: +SET(libunwind_la_SOURCES_loongarch_common + ${libunwind_la_SOURCES_common} + loongarch64/is_fpreg.c + loongarch64/regname.c +) + +# The list of files that go into libunwind: +SET(libunwind_la_SOURCES_loongarch64 + ${libunwind_la_SOURCES_loongarch_common} + ${libunwind_la_SOURCES_local} + loongarch64/Lget_proc_info.c loongarch64/Linit.c loongarch64/Lis_signal_frame.c + loongarch64/Lstep.c + loongarch64/getcontext.S + loongarch64/Lget_save_loc.c + loongarch64/Linit_local.c loongarch64/Lregs.c + loongarch64/Lcreate_addr_space.c loongarch64/Lglobal.c loongarch64/Linit_remote.c loongarch64/Lresume.c +) + +SET(libunwind_loongarch64_la_SOURCES_loongarch + ${libunwind_la_SOURCES_loongarch_common} + ${libunwind_la_SOURCES_generic} + loongarch64/Gcreate_addr_space.c loongarch64/Gget_proc_info.c loongarch64/Gget_save_loc.c + loongarch64/Gglobal.c loongarch64/Ginit.c loongarch64/Ginit_local.c loongarch64/Ginit_remote.c + loongarch64/Gis_signal_frame.c loongarch64/Gregs.c loongarch64/Gresume.c loongarch64/Gstep.c +) + +if(TARGET_AARCH64) + SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_aarch64}) + SET(libunwind_remote_la_SOURCES ${libunwind_aarch64_la_SOURCES_aarch64}) + SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + list(APPEND libunwind_setjmp_la_SOURCES aarch64/siglongjmp.S) +elseif(TARGET_ARM) + SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_arm}) + SET(libunwind_remote_la_SOURCES ${libunwind_arm_la_SOURCES_arm}) + SET(libunwind_elf_la_SOURCES ${libunwind_elf32_la_SOURCES}) + list(APPEND libunwind_setjmp_la_SOURCES arm/siglongjmp.S) +elseif(TARGET_AMD64) + SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_x86_64}) + SET(libunwind_remote_la_SOURCES ${libunwind_x86_64_la_SOURCES_x86_64}) + SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) + list(APPEND libunwind_setjmp_la_SOURCES x86_64/longjmp.S x86_64/siglongjmp.SA) +elseif(TARGET_S390X) + SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_s390x}) + SET(libunwind_remote_la_SOURCES ${libunwind_s390x_la_SOURCES_s390x}) + SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) +elseif(TARGET_LOONGARCH64) + SET(libunwind_la_SOURCES ${libunwind_la_SOURCES_loongarch64}) + SET(libunwind_remote_la_SOURCES ${libunwind_loongarch64_la_SOURCES_loongarch}) + SET(libunwind_elf_la_SOURCES ${libunwind_elf64_la_SOURCES}) +endif() + +add_library(libunwind + OBJECT + win/pal-single-threaded.c + # ${libunwind_la_SOURCES} Local... + ${libunwind_remote_la_SOURCES} + # Commented out above for LOCAL + REMOTE runtime build + mi/Gget_accessors.c + # ${libunwind_dwarf_local_la_SOURCES} + ${libunwind_dwarf_common_la_SOURCES} + ${libunwind_dwarf_generic_la_SOURCES} + ${libunwind_elf_la_SOURCES} +) diff --git a/src/coreclr/pal/src/libunwind/src/Makefile.am b/src/native/external/libunwind/src/Makefile.am similarity index 100% rename from src/coreclr/pal/src/libunwind/src/Makefile.am rename to src/native/external/libunwind/src/Makefile.am diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gapply_reg_state.c b/src/native/external/libunwind/src/aarch64/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gapply_reg_state.c rename to src/native/external/libunwind/src/aarch64/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gcreate_addr_space.c b/src/native/external/libunwind/src/aarch64/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gcreate_addr_space.c rename to src/native/external/libunwind/src/aarch64/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gget_proc_info.c b/src/native/external/libunwind/src/aarch64/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gget_proc_info.c rename to src/native/external/libunwind/src/aarch64/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gget_save_loc.c b/src/native/external/libunwind/src/aarch64/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gget_save_loc.c rename to src/native/external/libunwind/src/aarch64/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gglobal.c b/src/native/external/libunwind/src/aarch64/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gglobal.c rename to src/native/external/libunwind/src/aarch64/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Ginit.c b/src/native/external/libunwind/src/aarch64/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Ginit.c rename to src/native/external/libunwind/src/aarch64/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Ginit_local.c b/src/native/external/libunwind/src/aarch64/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Ginit_local.c rename to src/native/external/libunwind/src/aarch64/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Ginit_remote.c b/src/native/external/libunwind/src/aarch64/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Ginit_remote.c rename to src/native/external/libunwind/src/aarch64/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gis_signal_frame.c b/src/native/external/libunwind/src/aarch64/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gis_signal_frame.c rename to src/native/external/libunwind/src/aarch64/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Greg_states_iterate.c b/src/native/external/libunwind/src/aarch64/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Greg_states_iterate.c rename to src/native/external/libunwind/src/aarch64/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gregs.c b/src/native/external/libunwind/src/aarch64/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gregs.c rename to src/native/external/libunwind/src/aarch64/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gresume.c b/src/native/external/libunwind/src/aarch64/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gresume.c rename to src/native/external/libunwind/src/aarch64/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gstash_frame.c b/src/native/external/libunwind/src/aarch64/Gstash_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gstash_frame.c rename to src/native/external/libunwind/src/aarch64/Gstash_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gstep.c b/src/native/external/libunwind/src/aarch64/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gstep.c rename to src/native/external/libunwind/src/aarch64/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Gtrace.c b/src/native/external/libunwind/src/aarch64/Gtrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Gtrace.c rename to src/native/external/libunwind/src/aarch64/Gtrace.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lapply_reg_state.c b/src/native/external/libunwind/src/aarch64/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lapply_reg_state.c rename to src/native/external/libunwind/src/aarch64/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lcreate_addr_space.c b/src/native/external/libunwind/src/aarch64/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lcreate_addr_space.c rename to src/native/external/libunwind/src/aarch64/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lget_proc_info.c b/src/native/external/libunwind/src/aarch64/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lget_proc_info.c rename to src/native/external/libunwind/src/aarch64/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lget_save_loc.c b/src/native/external/libunwind/src/aarch64/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lget_save_loc.c rename to src/native/external/libunwind/src/aarch64/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lglobal.c b/src/native/external/libunwind/src/aarch64/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lglobal.c rename to src/native/external/libunwind/src/aarch64/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Linit.c b/src/native/external/libunwind/src/aarch64/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Linit.c rename to src/native/external/libunwind/src/aarch64/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Linit_local.c b/src/native/external/libunwind/src/aarch64/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Linit_local.c rename to src/native/external/libunwind/src/aarch64/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Linit_remote.c b/src/native/external/libunwind/src/aarch64/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Linit_remote.c rename to src/native/external/libunwind/src/aarch64/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lis_signal_frame.c b/src/native/external/libunwind/src/aarch64/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lis_signal_frame.c rename to src/native/external/libunwind/src/aarch64/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lreg_states_iterate.c b/src/native/external/libunwind/src/aarch64/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lreg_states_iterate.c rename to src/native/external/libunwind/src/aarch64/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lregs.c b/src/native/external/libunwind/src/aarch64/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lregs.c rename to src/native/external/libunwind/src/aarch64/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lresume.c b/src/native/external/libunwind/src/aarch64/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lresume.c rename to src/native/external/libunwind/src/aarch64/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lstash_frame.c b/src/native/external/libunwind/src/aarch64/Lstash_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lstash_frame.c rename to src/native/external/libunwind/src/aarch64/Lstash_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Lstep.c b/src/native/external/libunwind/src/aarch64/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Lstep.c rename to src/native/external/libunwind/src/aarch64/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/Ltrace.c b/src/native/external/libunwind/src/aarch64/Ltrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/Ltrace.c rename to src/native/external/libunwind/src/aarch64/Ltrace.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/gen-offsets.c b/src/native/external/libunwind/src/aarch64/gen-offsets.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/gen-offsets.c rename to src/native/external/libunwind/src/aarch64/gen-offsets.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/getcontext.S b/src/native/external/libunwind/src/aarch64/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/getcontext.S rename to src/native/external/libunwind/src/aarch64/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/init.h b/src/native/external/libunwind/src/aarch64/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/init.h rename to src/native/external/libunwind/src/aarch64/init.h diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/is_fpreg.c b/src/native/external/libunwind/src/aarch64/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/is_fpreg.c rename to src/native/external/libunwind/src/aarch64/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/offsets.h b/src/native/external/libunwind/src/aarch64/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/offsets.h rename to src/native/external/libunwind/src/aarch64/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/regname.c b/src/native/external/libunwind/src/aarch64/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/regname.c rename to src/native/external/libunwind/src/aarch64/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/siglongjmp.S b/src/native/external/libunwind/src/aarch64/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/siglongjmp.S rename to src/native/external/libunwind/src/aarch64/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/aarch64/unwind_i.h b/src/native/external/libunwind/src/aarch64/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/aarch64/unwind_i.h rename to src/native/external/libunwind/src/aarch64/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gapply_reg_state.c b/src/native/external/libunwind/src/arm/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gapply_reg_state.c rename to src/native/external/libunwind/src/arm/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gcreate_addr_space.c b/src/native/external/libunwind/src/arm/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gcreate_addr_space.c rename to src/native/external/libunwind/src/arm/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gex_tables.c b/src/native/external/libunwind/src/arm/Gex_tables.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gex_tables.c rename to src/native/external/libunwind/src/arm/Gex_tables.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gget_proc_info.c b/src/native/external/libunwind/src/arm/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gget_proc_info.c rename to src/native/external/libunwind/src/arm/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gget_save_loc.c b/src/native/external/libunwind/src/arm/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gget_save_loc.c rename to src/native/external/libunwind/src/arm/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gglobal.c b/src/native/external/libunwind/src/arm/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gglobal.c rename to src/native/external/libunwind/src/arm/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Ginit.c b/src/native/external/libunwind/src/arm/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Ginit.c rename to src/native/external/libunwind/src/arm/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Ginit_local.c b/src/native/external/libunwind/src/arm/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Ginit_local.c rename to src/native/external/libunwind/src/arm/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Ginit_remote.c b/src/native/external/libunwind/src/arm/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Ginit_remote.c rename to src/native/external/libunwind/src/arm/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gos-freebsd.c b/src/native/external/libunwind/src/arm/Gos-freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gos-freebsd.c rename to src/native/external/libunwind/src/arm/Gos-freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gos-linux.c b/src/native/external/libunwind/src/arm/Gos-linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gos-linux.c rename to src/native/external/libunwind/src/arm/Gos-linux.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gos-other.c b/src/native/external/libunwind/src/arm/Gos-other.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gos-other.c rename to src/native/external/libunwind/src/arm/Gos-other.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Greg_states_iterate.c b/src/native/external/libunwind/src/arm/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Greg_states_iterate.c rename to src/native/external/libunwind/src/arm/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gregs.c b/src/native/external/libunwind/src/arm/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gregs.c rename to src/native/external/libunwind/src/arm/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gresume.c b/src/native/external/libunwind/src/arm/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gresume.c rename to src/native/external/libunwind/src/arm/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gstash_frame.c b/src/native/external/libunwind/src/arm/Gstash_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gstash_frame.c rename to src/native/external/libunwind/src/arm/Gstash_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gstep.c b/src/native/external/libunwind/src/arm/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gstep.c rename to src/native/external/libunwind/src/arm/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Gtrace.c b/src/native/external/libunwind/src/arm/Gtrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Gtrace.c rename to src/native/external/libunwind/src/arm/Gtrace.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lapply_reg_state.c b/src/native/external/libunwind/src/arm/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lapply_reg_state.c rename to src/native/external/libunwind/src/arm/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lcreate_addr_space.c b/src/native/external/libunwind/src/arm/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lcreate_addr_space.c rename to src/native/external/libunwind/src/arm/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lex_tables.c b/src/native/external/libunwind/src/arm/Lex_tables.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lex_tables.c rename to src/native/external/libunwind/src/arm/Lex_tables.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lget_proc_info.c b/src/native/external/libunwind/src/arm/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lget_proc_info.c rename to src/native/external/libunwind/src/arm/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lget_save_loc.c b/src/native/external/libunwind/src/arm/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lget_save_loc.c rename to src/native/external/libunwind/src/arm/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lglobal.c b/src/native/external/libunwind/src/arm/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lglobal.c rename to src/native/external/libunwind/src/arm/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Linit.c b/src/native/external/libunwind/src/arm/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Linit.c rename to src/native/external/libunwind/src/arm/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Linit_local.c b/src/native/external/libunwind/src/arm/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Linit_local.c rename to src/native/external/libunwind/src/arm/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Linit_remote.c b/src/native/external/libunwind/src/arm/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Linit_remote.c rename to src/native/external/libunwind/src/arm/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lis_signal_frame.c b/src/native/external/libunwind/src/arm/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lis_signal_frame.c rename to src/native/external/libunwind/src/arm/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Los-freebsd.c b/src/native/external/libunwind/src/arm/Los-freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Los-freebsd.c rename to src/native/external/libunwind/src/arm/Los-freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Los-linux.c b/src/native/external/libunwind/src/arm/Los-linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Los-linux.c rename to src/native/external/libunwind/src/arm/Los-linux.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Los-other.c b/src/native/external/libunwind/src/arm/Los-other.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Los-other.c rename to src/native/external/libunwind/src/arm/Los-other.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lreg_states_iterate.c b/src/native/external/libunwind/src/arm/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lreg_states_iterate.c rename to src/native/external/libunwind/src/arm/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lregs.c b/src/native/external/libunwind/src/arm/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lregs.c rename to src/native/external/libunwind/src/arm/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lresume.c b/src/native/external/libunwind/src/arm/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lresume.c rename to src/native/external/libunwind/src/arm/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lstash_frame.c b/src/native/external/libunwind/src/arm/Lstash_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lstash_frame.c rename to src/native/external/libunwind/src/arm/Lstash_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Lstep.c b/src/native/external/libunwind/src/arm/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Lstep.c rename to src/native/external/libunwind/src/arm/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/Ltrace.c b/src/native/external/libunwind/src/arm/Ltrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/Ltrace.c rename to src/native/external/libunwind/src/arm/Ltrace.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/gen-offsets.c b/src/native/external/libunwind/src/arm/gen-offsets.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/gen-offsets.c rename to src/native/external/libunwind/src/arm/gen-offsets.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/getcontext.S b/src/native/external/libunwind/src/arm/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/getcontext.S rename to src/native/external/libunwind/src/arm/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/arm/init.h b/src/native/external/libunwind/src/arm/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/init.h rename to src/native/external/libunwind/src/arm/init.h diff --git a/src/coreclr/pal/src/libunwind/src/arm/is_fpreg.c b/src/native/external/libunwind/src/arm/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/is_fpreg.c rename to src/native/external/libunwind/src/arm/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/offsets.h b/src/native/external/libunwind/src/arm/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/offsets.h rename to src/native/external/libunwind/src/arm/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/arm/regname.c b/src/native/external/libunwind/src/arm/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/regname.c rename to src/native/external/libunwind/src/arm/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/arm/siglongjmp.S b/src/native/external/libunwind/src/arm/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/siglongjmp.S rename to src/native/external/libunwind/src/arm/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/arm/unwind_i.h b/src/native/external/libunwind/src/arm/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/arm/unwind_i.h rename to src/native/external/libunwind/src/arm/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/coredump/README b/src/native/external/libunwind/src/coredump/README similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/README rename to src/native/external/libunwind/src/coredump/README diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_access_mem.c b/src/native/external/libunwind/src/coredump/_UCD_access_mem.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_access_mem.c rename to src/native/external/libunwind/src/coredump/_UCD_access_mem.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_access_reg_freebsd.c b/src/native/external/libunwind/src/coredump/_UCD_access_reg_freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_access_reg_freebsd.c rename to src/native/external/libunwind/src/coredump/_UCD_access_reg_freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_access_reg_linux.c b/src/native/external/libunwind/src/coredump/_UCD_access_reg_linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_access_reg_linux.c rename to src/native/external/libunwind/src/coredump/_UCD_access_reg_linux.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_accessors.c b/src/native/external/libunwind/src/coredump/_UCD_accessors.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_accessors.c rename to src/native/external/libunwind/src/coredump/_UCD_accessors.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_corefile_elf.c b/src/native/external/libunwind/src/coredump/_UCD_corefile_elf.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_corefile_elf.c rename to src/native/external/libunwind/src/coredump/_UCD_corefile_elf.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_create.c b/src/native/external/libunwind/src/coredump/_UCD_create.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_create.c rename to src/native/external/libunwind/src/coredump/_UCD_create.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_destroy.c b/src/native/external/libunwind/src/coredump/_UCD_destroy.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_destroy.c rename to src/native/external/libunwind/src/coredump/_UCD_destroy.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_elf_map_image.c b/src/native/external/libunwind/src/coredump/_UCD_elf_map_image.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_elf_map_image.c rename to src/native/external/libunwind/src/coredump/_UCD_elf_map_image.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_find_proc_info.c b/src/native/external/libunwind/src/coredump/_UCD_find_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_find_proc_info.c rename to src/native/external/libunwind/src/coredump/_UCD_find_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_mapinfo_generic.c b/src/native/external/libunwind/src/coredump/_UCD_get_mapinfo_generic.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_mapinfo_generic.c rename to src/native/external/libunwind/src/coredump/_UCD_get_mapinfo_generic.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_mapinfo_linux.c b/src/native/external/libunwind/src/coredump/_UCD_get_mapinfo_linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_mapinfo_linux.c rename to src/native/external/libunwind/src/coredump/_UCD_get_mapinfo_linux.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_proc_name.c b/src/native/external/libunwind/src/coredump/_UCD_get_proc_name.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_proc_name.c rename to src/native/external/libunwind/src/coredump/_UCD_get_proc_name.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_threadinfo_prstatus.c b/src/native/external/libunwind/src/coredump/_UCD_get_threadinfo_prstatus.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_get_threadinfo_prstatus.c rename to src/native/external/libunwind/src/coredump/_UCD_get_threadinfo_prstatus.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_internal.h b/src/native/external/libunwind/src/coredump/_UCD_internal.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_internal.h rename to src/native/external/libunwind/src/coredump/_UCD_internal.h diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UCD_lib.h b/src/native/external/libunwind/src/coredump/_UCD_lib.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UCD_lib.h rename to src/native/external/libunwind/src/coredump/_UCD_lib.h diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UPT_access_fpreg.c b/src/native/external/libunwind/src/coredump/_UPT_access_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UPT_access_fpreg.c rename to src/native/external/libunwind/src/coredump/_UPT_access_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UPT_elf.c b/src/native/external/libunwind/src/coredump/_UPT_elf.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UPT_elf.c rename to src/native/external/libunwind/src/coredump/_UPT_elf.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UPT_get_dyn_info_list_addr.c b/src/native/external/libunwind/src/coredump/_UPT_get_dyn_info_list_addr.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UPT_get_dyn_info_list_addr.c rename to src/native/external/libunwind/src/coredump/_UPT_get_dyn_info_list_addr.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UPT_put_unwind_info.c b/src/native/external/libunwind/src/coredump/_UPT_put_unwind_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UPT_put_unwind_info.c rename to src/native/external/libunwind/src/coredump/_UPT_put_unwind_info.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/_UPT_resume.c b/src/native/external/libunwind/src/coredump/_UPT_resume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/_UPT_resume.c rename to src/native/external/libunwind/src/coredump/_UPT_resume.c diff --git a/src/coreclr/pal/src/libunwind/src/coredump/libunwind-coredump.pc.in b/src/native/external/libunwind/src/coredump/libunwind-coredump.pc.in similarity index 100% rename from src/coreclr/pal/src/libunwind/src/coredump/libunwind-coredump.pc.in rename to src/native/external/libunwind/src/coredump/libunwind-coredump.pc.in diff --git a/src/coreclr/pal/src/libunwind/src/dl-iterate-phdr.c b/src/native/external/libunwind/src/dl-iterate-phdr.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dl-iterate-phdr.c rename to src/native/external/libunwind/src/dl-iterate-phdr.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Gexpr.c b/src/native/external/libunwind/src/dwarf/Gexpr.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Gexpr.c rename to src/native/external/libunwind/src/dwarf/Gexpr.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Gfde.c b/src/native/external/libunwind/src/dwarf/Gfde.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Gfde.c rename to src/native/external/libunwind/src/dwarf/Gfde.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Gfind_proc_info-lsb.c b/src/native/external/libunwind/src/dwarf/Gfind_proc_info-lsb.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Gfind_proc_info-lsb.c rename to src/native/external/libunwind/src/dwarf/Gfind_proc_info-lsb.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Gfind_unwind_table.c b/src/native/external/libunwind/src/dwarf/Gfind_unwind_table.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Gfind_unwind_table.c rename to src/native/external/libunwind/src/dwarf/Gfind_unwind_table.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Gparser.c b/src/native/external/libunwind/src/dwarf/Gparser.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Gparser.c rename to src/native/external/libunwind/src/dwarf/Gparser.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Gpe.c b/src/native/external/libunwind/src/dwarf/Gpe.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Gpe.c rename to src/native/external/libunwind/src/dwarf/Gpe.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Lexpr.c b/src/native/external/libunwind/src/dwarf/Lexpr.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Lexpr.c rename to src/native/external/libunwind/src/dwarf/Lexpr.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Lfde.c b/src/native/external/libunwind/src/dwarf/Lfde.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Lfde.c rename to src/native/external/libunwind/src/dwarf/Lfde.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Lfind_proc_info-lsb.c b/src/native/external/libunwind/src/dwarf/Lfind_proc_info-lsb.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Lfind_proc_info-lsb.c rename to src/native/external/libunwind/src/dwarf/Lfind_proc_info-lsb.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Lfind_unwind_table.c b/src/native/external/libunwind/src/dwarf/Lfind_unwind_table.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Lfind_unwind_table.c rename to src/native/external/libunwind/src/dwarf/Lfind_unwind_table.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Lparser.c b/src/native/external/libunwind/src/dwarf/Lparser.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Lparser.c rename to src/native/external/libunwind/src/dwarf/Lparser.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/Lpe.c b/src/native/external/libunwind/src/dwarf/Lpe.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/Lpe.c rename to src/native/external/libunwind/src/dwarf/Lpe.c diff --git a/src/coreclr/pal/src/libunwind/src/dwarf/global.c b/src/native/external/libunwind/src/dwarf/global.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/dwarf/global.c rename to src/native/external/libunwind/src/dwarf/global.c diff --git a/src/coreclr/pal/src/libunwind/src/elf32.c b/src/native/external/libunwind/src/elf32.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/elf32.c rename to src/native/external/libunwind/src/elf32.c diff --git a/src/coreclr/pal/src/libunwind/src/elf32.h b/src/native/external/libunwind/src/elf32.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/elf32.h rename to src/native/external/libunwind/src/elf32.h diff --git a/src/coreclr/pal/src/libunwind/src/elf64.c b/src/native/external/libunwind/src/elf64.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/elf64.c rename to src/native/external/libunwind/src/elf64.c diff --git a/src/coreclr/pal/src/libunwind/src/elf64.h b/src/native/external/libunwind/src/elf64.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/elf64.h rename to src/native/external/libunwind/src/elf64.h diff --git a/src/coreclr/pal/src/libunwind/src/elfxx.c b/src/native/external/libunwind/src/elfxx.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/elfxx.c rename to src/native/external/libunwind/src/elfxx.c diff --git a/src/coreclr/pal/src/libunwind/src/elfxx.h b/src/native/external/libunwind/src/elfxx.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/elfxx.h rename to src/native/external/libunwind/src/elfxx.h diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gapply_reg_state.c b/src/native/external/libunwind/src/hppa/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gapply_reg_state.c rename to src/native/external/libunwind/src/hppa/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gcreate_addr_space.c b/src/native/external/libunwind/src/hppa/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gcreate_addr_space.c rename to src/native/external/libunwind/src/hppa/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gget_proc_info.c b/src/native/external/libunwind/src/hppa/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gget_proc_info.c rename to src/native/external/libunwind/src/hppa/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gget_save_loc.c b/src/native/external/libunwind/src/hppa/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gget_save_loc.c rename to src/native/external/libunwind/src/hppa/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gglobal.c b/src/native/external/libunwind/src/hppa/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gglobal.c rename to src/native/external/libunwind/src/hppa/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Ginit.c b/src/native/external/libunwind/src/hppa/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Ginit.c rename to src/native/external/libunwind/src/hppa/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Ginit_local.c b/src/native/external/libunwind/src/hppa/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Ginit_local.c rename to src/native/external/libunwind/src/hppa/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Ginit_remote.c b/src/native/external/libunwind/src/hppa/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Ginit_remote.c rename to src/native/external/libunwind/src/hppa/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gis_signal_frame.c b/src/native/external/libunwind/src/hppa/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gis_signal_frame.c rename to src/native/external/libunwind/src/hppa/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Greg_states_iterate.c b/src/native/external/libunwind/src/hppa/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Greg_states_iterate.c rename to src/native/external/libunwind/src/hppa/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gregs.c b/src/native/external/libunwind/src/hppa/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gregs.c rename to src/native/external/libunwind/src/hppa/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gresume.c b/src/native/external/libunwind/src/hppa/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gresume.c rename to src/native/external/libunwind/src/hppa/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Gstep.c b/src/native/external/libunwind/src/hppa/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Gstep.c rename to src/native/external/libunwind/src/hppa/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lapply_reg_state.c b/src/native/external/libunwind/src/hppa/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lapply_reg_state.c rename to src/native/external/libunwind/src/hppa/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lcreate_addr_space.c b/src/native/external/libunwind/src/hppa/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lcreate_addr_space.c rename to src/native/external/libunwind/src/hppa/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lget_proc_info.c b/src/native/external/libunwind/src/hppa/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lget_proc_info.c rename to src/native/external/libunwind/src/hppa/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lget_save_loc.c b/src/native/external/libunwind/src/hppa/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lget_save_loc.c rename to src/native/external/libunwind/src/hppa/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lglobal.c b/src/native/external/libunwind/src/hppa/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lglobal.c rename to src/native/external/libunwind/src/hppa/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Linit.c b/src/native/external/libunwind/src/hppa/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Linit.c rename to src/native/external/libunwind/src/hppa/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Linit_local.c b/src/native/external/libunwind/src/hppa/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Linit_local.c rename to src/native/external/libunwind/src/hppa/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Linit_remote.c b/src/native/external/libunwind/src/hppa/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Linit_remote.c rename to src/native/external/libunwind/src/hppa/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lis_signal_frame.c b/src/native/external/libunwind/src/hppa/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lis_signal_frame.c rename to src/native/external/libunwind/src/hppa/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lreg_states_iterate.c b/src/native/external/libunwind/src/hppa/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lreg_states_iterate.c rename to src/native/external/libunwind/src/hppa/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lregs.c b/src/native/external/libunwind/src/hppa/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lregs.c rename to src/native/external/libunwind/src/hppa/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lresume.c b/src/native/external/libunwind/src/hppa/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lresume.c rename to src/native/external/libunwind/src/hppa/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/Lstep.c b/src/native/external/libunwind/src/hppa/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/Lstep.c rename to src/native/external/libunwind/src/hppa/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/get_accessors.c b/src/native/external/libunwind/src/hppa/get_accessors.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/get_accessors.c rename to src/native/external/libunwind/src/hppa/get_accessors.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/getcontext.S b/src/native/external/libunwind/src/hppa/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/getcontext.S rename to src/native/external/libunwind/src/hppa/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/hppa/init.h b/src/native/external/libunwind/src/hppa/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/init.h rename to src/native/external/libunwind/src/hppa/init.h diff --git a/src/coreclr/pal/src/libunwind/src/hppa/offsets.h b/src/native/external/libunwind/src/hppa/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/offsets.h rename to src/native/external/libunwind/src/hppa/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/hppa/regname.c b/src/native/external/libunwind/src/hppa/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/regname.c rename to src/native/external/libunwind/src/hppa/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/setcontext.S b/src/native/external/libunwind/src/hppa/setcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/setcontext.S rename to src/native/external/libunwind/src/hppa/setcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/hppa/siglongjmp.S b/src/native/external/libunwind/src/hppa/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/siglongjmp.S rename to src/native/external/libunwind/src/hppa/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/hppa/tables.c b/src/native/external/libunwind/src/hppa/tables.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/tables.c rename to src/native/external/libunwind/src/hppa/tables.c diff --git a/src/coreclr/pal/src/libunwind/src/hppa/unwind_i.h b/src/native/external/libunwind/src/hppa/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/hppa/unwind_i.h rename to src/native/external/libunwind/src/hppa/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gapply_reg_state.c b/src/native/external/libunwind/src/ia64/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gapply_reg_state.c rename to src/native/external/libunwind/src/ia64/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gcreate_addr_space.c b/src/native/external/libunwind/src/ia64/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gcreate_addr_space.c rename to src/native/external/libunwind/src/ia64/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gfind_unwind_table.c b/src/native/external/libunwind/src/ia64/Gfind_unwind_table.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gfind_unwind_table.c rename to src/native/external/libunwind/src/ia64/Gfind_unwind_table.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gget_proc_info.c b/src/native/external/libunwind/src/ia64/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gget_proc_info.c rename to src/native/external/libunwind/src/ia64/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gget_save_loc.c b/src/native/external/libunwind/src/ia64/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gget_save_loc.c rename to src/native/external/libunwind/src/ia64/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gglobal.c b/src/native/external/libunwind/src/ia64/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gglobal.c rename to src/native/external/libunwind/src/ia64/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Ginit.c b/src/native/external/libunwind/src/ia64/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Ginit.c rename to src/native/external/libunwind/src/ia64/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Ginit_local.c b/src/native/external/libunwind/src/ia64/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Ginit_local.c rename to src/native/external/libunwind/src/ia64/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Ginit_remote.c b/src/native/external/libunwind/src/ia64/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Ginit_remote.c rename to src/native/external/libunwind/src/ia64/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Ginstall_cursor.S b/src/native/external/libunwind/src/ia64/Ginstall_cursor.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Ginstall_cursor.S rename to src/native/external/libunwind/src/ia64/Ginstall_cursor.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gis_signal_frame.c b/src/native/external/libunwind/src/ia64/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gis_signal_frame.c rename to src/native/external/libunwind/src/ia64/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gparser.c b/src/native/external/libunwind/src/ia64/Gparser.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gparser.c rename to src/native/external/libunwind/src/ia64/Gparser.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Grbs.c b/src/native/external/libunwind/src/ia64/Grbs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Grbs.c rename to src/native/external/libunwind/src/ia64/Grbs.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Greg_states_iterate.c b/src/native/external/libunwind/src/ia64/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Greg_states_iterate.c rename to src/native/external/libunwind/src/ia64/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gregs.c b/src/native/external/libunwind/src/ia64/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gregs.c rename to src/native/external/libunwind/src/ia64/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gresume.c b/src/native/external/libunwind/src/ia64/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gresume.c rename to src/native/external/libunwind/src/ia64/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gscript.c b/src/native/external/libunwind/src/ia64/Gscript.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gscript.c rename to src/native/external/libunwind/src/ia64/Gscript.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gstep.c b/src/native/external/libunwind/src/ia64/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gstep.c rename to src/native/external/libunwind/src/ia64/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Gtables.c b/src/native/external/libunwind/src/ia64/Gtables.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Gtables.c rename to src/native/external/libunwind/src/ia64/Gtables.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lapply_reg_state.c b/src/native/external/libunwind/src/ia64/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lapply_reg_state.c rename to src/native/external/libunwind/src/ia64/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lcreate_addr_space.c b/src/native/external/libunwind/src/ia64/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lcreate_addr_space.c rename to src/native/external/libunwind/src/ia64/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lfind_unwind_table.c b/src/native/external/libunwind/src/ia64/Lfind_unwind_table.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lfind_unwind_table.c rename to src/native/external/libunwind/src/ia64/Lfind_unwind_table.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lget_proc_info.c b/src/native/external/libunwind/src/ia64/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lget_proc_info.c rename to src/native/external/libunwind/src/ia64/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lget_save_loc.c b/src/native/external/libunwind/src/ia64/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lget_save_loc.c rename to src/native/external/libunwind/src/ia64/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lglobal.c b/src/native/external/libunwind/src/ia64/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lglobal.c rename to src/native/external/libunwind/src/ia64/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Linit.c b/src/native/external/libunwind/src/ia64/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Linit.c rename to src/native/external/libunwind/src/ia64/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Linit_local.c b/src/native/external/libunwind/src/ia64/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Linit_local.c rename to src/native/external/libunwind/src/ia64/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Linit_remote.c b/src/native/external/libunwind/src/ia64/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Linit_remote.c rename to src/native/external/libunwind/src/ia64/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Linstall_cursor.S b/src/native/external/libunwind/src/ia64/Linstall_cursor.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Linstall_cursor.S rename to src/native/external/libunwind/src/ia64/Linstall_cursor.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lis_signal_frame.c b/src/native/external/libunwind/src/ia64/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lis_signal_frame.c rename to src/native/external/libunwind/src/ia64/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lparser.c b/src/native/external/libunwind/src/ia64/Lparser.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lparser.c rename to src/native/external/libunwind/src/ia64/Lparser.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lrbs.c b/src/native/external/libunwind/src/ia64/Lrbs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lrbs.c rename to src/native/external/libunwind/src/ia64/Lrbs.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lreg_states_iterate.c b/src/native/external/libunwind/src/ia64/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lreg_states_iterate.c rename to src/native/external/libunwind/src/ia64/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lregs.c b/src/native/external/libunwind/src/ia64/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lregs.c rename to src/native/external/libunwind/src/ia64/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lresume.c b/src/native/external/libunwind/src/ia64/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lresume.c rename to src/native/external/libunwind/src/ia64/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lscript.c b/src/native/external/libunwind/src/ia64/Lscript.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lscript.c rename to src/native/external/libunwind/src/ia64/Lscript.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Lstep.c b/src/native/external/libunwind/src/ia64/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Lstep.c rename to src/native/external/libunwind/src/ia64/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/Ltables.c b/src/native/external/libunwind/src/ia64/Ltables.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/Ltables.c rename to src/native/external/libunwind/src/ia64/Ltables.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/NOTES b/src/native/external/libunwind/src/ia64/NOTES similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/NOTES rename to src/native/external/libunwind/src/ia64/NOTES diff --git a/src/coreclr/pal/src/libunwind/src/ia64/dyn_info_list.S b/src/native/external/libunwind/src/ia64/dyn_info_list.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/dyn_info_list.S rename to src/native/external/libunwind/src/ia64/dyn_info_list.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/getcontext.S b/src/native/external/libunwind/src/ia64/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/getcontext.S rename to src/native/external/libunwind/src/ia64/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/init.h b/src/native/external/libunwind/src/ia64/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/init.h rename to src/native/external/libunwind/src/ia64/init.h diff --git a/src/coreclr/pal/src/libunwind/src/ia64/longjmp.S b/src/native/external/libunwind/src/ia64/longjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/longjmp.S rename to src/native/external/libunwind/src/ia64/longjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/mk_cursor_i b/src/native/external/libunwind/src/ia64/mk_cursor_i similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/mk_cursor_i rename to src/native/external/libunwind/src/ia64/mk_cursor_i diff --git a/src/coreclr/pal/src/libunwind/src/ia64/offsets.h b/src/native/external/libunwind/src/ia64/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/offsets.h rename to src/native/external/libunwind/src/ia64/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/ia64/regname.c b/src/native/external/libunwind/src/ia64/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/regname.c rename to src/native/external/libunwind/src/ia64/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/ia64/regs.h b/src/native/external/libunwind/src/ia64/regs.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/regs.h rename to src/native/external/libunwind/src/ia64/regs.h diff --git a/src/coreclr/pal/src/libunwind/src/ia64/setjmp.S b/src/native/external/libunwind/src/ia64/setjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/setjmp.S rename to src/native/external/libunwind/src/ia64/setjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/siglongjmp.S b/src/native/external/libunwind/src/ia64/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/siglongjmp.S rename to src/native/external/libunwind/src/ia64/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/sigsetjmp.S b/src/native/external/libunwind/src/ia64/sigsetjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/sigsetjmp.S rename to src/native/external/libunwind/src/ia64/sigsetjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/ia64/ucontext_i.h b/src/native/external/libunwind/src/ia64/ucontext_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/ucontext_i.h rename to src/native/external/libunwind/src/ia64/ucontext_i.h diff --git a/src/coreclr/pal/src/libunwind/src/ia64/unwind_decoder.h b/src/native/external/libunwind/src/ia64/unwind_decoder.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/unwind_decoder.h rename to src/native/external/libunwind/src/ia64/unwind_decoder.h diff --git a/src/coreclr/pal/src/libunwind/src/ia64/unwind_i.h b/src/native/external/libunwind/src/ia64/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ia64/unwind_i.h rename to src/native/external/libunwind/src/ia64/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/libunwind-generic.pc.in b/src/native/external/libunwind/src/libunwind-generic.pc.in similarity index 100% rename from src/coreclr/pal/src/libunwind/src/libunwind-generic.pc.in rename to src/native/external/libunwind/src/libunwind-generic.pc.in diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gapply_reg_state.c b/src/native/external/libunwind/src/loongarch64/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gapply_reg_state.c rename to src/native/external/libunwind/src/loongarch64/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gcreate_addr_space.c b/src/native/external/libunwind/src/loongarch64/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gcreate_addr_space.c rename to src/native/external/libunwind/src/loongarch64/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gget_proc_info.c b/src/native/external/libunwind/src/loongarch64/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gget_proc_info.c rename to src/native/external/libunwind/src/loongarch64/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gget_save_loc.c b/src/native/external/libunwind/src/loongarch64/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gget_save_loc.c rename to src/native/external/libunwind/src/loongarch64/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gglobal.c b/src/native/external/libunwind/src/loongarch64/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gglobal.c rename to src/native/external/libunwind/src/loongarch64/Gglobal.c index 70a3eadaaed05..e770e09d32604 100644 --- a/src/coreclr/pal/src/libunwind/src/loongarch64/Gglobal.c +++ b/src/native/external/libunwind/src/loongarch64/Gglobal.c @@ -46,9 +46,9 @@ tdep_init (void) dwarf_init (); +#ifndef UNW_REMOTE_ONLY tdep_init_mem_validate (); -#ifndef UNW_REMOTE_ONLY loongarch64_local_addr_space_init (); #endif tdep_init_done = 1; /* signal that we're initialized... */ diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Ginit.c b/src/native/external/libunwind/src/loongarch64/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Ginit.c rename to src/native/external/libunwind/src/loongarch64/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Ginit_local.c b/src/native/external/libunwind/src/loongarch64/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Ginit_local.c rename to src/native/external/libunwind/src/loongarch64/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Ginit_remote.c b/src/native/external/libunwind/src/loongarch64/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Ginit_remote.c rename to src/native/external/libunwind/src/loongarch64/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gis_signal_frame.c b/src/native/external/libunwind/src/loongarch64/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gis_signal_frame.c rename to src/native/external/libunwind/src/loongarch64/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Greg_states_iterate.c b/src/native/external/libunwind/src/loongarch64/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Greg_states_iterate.c rename to src/native/external/libunwind/src/loongarch64/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gregs.c b/src/native/external/libunwind/src/loongarch64/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gregs.c rename to src/native/external/libunwind/src/loongarch64/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gresume.c b/src/native/external/libunwind/src/loongarch64/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gresume.c rename to src/native/external/libunwind/src/loongarch64/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Gstep.c b/src/native/external/libunwind/src/loongarch64/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Gstep.c rename to src/native/external/libunwind/src/loongarch64/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lapply_reg_state.c b/src/native/external/libunwind/src/loongarch64/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lapply_reg_state.c rename to src/native/external/libunwind/src/loongarch64/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lcreate_addr_space.c b/src/native/external/libunwind/src/loongarch64/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lcreate_addr_space.c rename to src/native/external/libunwind/src/loongarch64/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lget_proc_info.c b/src/native/external/libunwind/src/loongarch64/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lget_proc_info.c rename to src/native/external/libunwind/src/loongarch64/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lget_save_loc.c b/src/native/external/libunwind/src/loongarch64/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lget_save_loc.c rename to src/native/external/libunwind/src/loongarch64/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lglobal.c b/src/native/external/libunwind/src/loongarch64/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lglobal.c rename to src/native/external/libunwind/src/loongarch64/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Linit.c b/src/native/external/libunwind/src/loongarch64/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Linit.c rename to src/native/external/libunwind/src/loongarch64/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Linit_local.c b/src/native/external/libunwind/src/loongarch64/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Linit_local.c rename to src/native/external/libunwind/src/loongarch64/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Linit_remote.c b/src/native/external/libunwind/src/loongarch64/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Linit_remote.c rename to src/native/external/libunwind/src/loongarch64/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lis_signal_frame.c b/src/native/external/libunwind/src/loongarch64/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lis_signal_frame.c rename to src/native/external/libunwind/src/loongarch64/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lreg_states_iterate.c b/src/native/external/libunwind/src/loongarch64/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lreg_states_iterate.c rename to src/native/external/libunwind/src/loongarch64/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lregs.c b/src/native/external/libunwind/src/loongarch64/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lregs.c rename to src/native/external/libunwind/src/loongarch64/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lresume.c b/src/native/external/libunwind/src/loongarch64/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lresume.c rename to src/native/external/libunwind/src/loongarch64/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/Lstep.c b/src/native/external/libunwind/src/loongarch64/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/Lstep.c rename to src/native/external/libunwind/src/loongarch64/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/getcontext.S b/src/native/external/libunwind/src/loongarch64/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/getcontext.S rename to src/native/external/libunwind/src/loongarch64/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/init.h b/src/native/external/libunwind/src/loongarch64/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/init.h rename to src/native/external/libunwind/src/loongarch64/init.h diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/is_fpreg.c b/src/native/external/libunwind/src/loongarch64/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/is_fpreg.c rename to src/native/external/libunwind/src/loongarch64/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/offsets.h b/src/native/external/libunwind/src/loongarch64/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/offsets.h rename to src/native/external/libunwind/src/loongarch64/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/regname.c b/src/native/external/libunwind/src/loongarch64/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/regname.c rename to src/native/external/libunwind/src/loongarch64/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/siglongjmp.S b/src/native/external/libunwind/src/loongarch64/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/siglongjmp.S rename to src/native/external/libunwind/src/loongarch64/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/loongarch64/unwind_i.h b/src/native/external/libunwind/src/loongarch64/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/loongarch64/unwind_i.h rename to src/native/external/libunwind/src/loongarch64/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gdestroy_addr_space.c b/src/native/external/libunwind/src/mi/Gdestroy_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gdestroy_addr_space.c rename to src/native/external/libunwind/src/mi/Gdestroy_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gdyn-extract.c b/src/native/external/libunwind/src/mi/Gdyn-extract.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gdyn-extract.c rename to src/native/external/libunwind/src/mi/Gdyn-extract.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gdyn-remote.c b/src/native/external/libunwind/src/mi/Gdyn-remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gdyn-remote.c rename to src/native/external/libunwind/src/mi/Gdyn-remote.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gfind_dynamic_proc_info.c b/src/native/external/libunwind/src/mi/Gfind_dynamic_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gfind_dynamic_proc_info.c rename to src/native/external/libunwind/src/mi/Gfind_dynamic_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gget_accessors.c b/src/native/external/libunwind/src/mi/Gget_accessors.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gget_accessors.c rename to src/native/external/libunwind/src/mi/Gget_accessors.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gget_fpreg.c b/src/native/external/libunwind/src/mi/Gget_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gget_fpreg.c rename to src/native/external/libunwind/src/mi/Gget_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gget_proc_info_by_ip.c b/src/native/external/libunwind/src/mi/Gget_proc_info_by_ip.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gget_proc_info_by_ip.c rename to src/native/external/libunwind/src/mi/Gget_proc_info_by_ip.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gget_proc_name.c b/src/native/external/libunwind/src/mi/Gget_proc_name.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gget_proc_name.c rename to src/native/external/libunwind/src/mi/Gget_proc_name.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gget_reg.c b/src/native/external/libunwind/src/mi/Gget_reg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gget_reg.c rename to src/native/external/libunwind/src/mi/Gget_reg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gput_dynamic_unwind_info.c b/src/native/external/libunwind/src/mi/Gput_dynamic_unwind_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gput_dynamic_unwind_info.c rename to src/native/external/libunwind/src/mi/Gput_dynamic_unwind_info.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gset_cache_size.c b/src/native/external/libunwind/src/mi/Gset_cache_size.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gset_cache_size.c rename to src/native/external/libunwind/src/mi/Gset_cache_size.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gset_caching_policy.c b/src/native/external/libunwind/src/mi/Gset_caching_policy.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gset_caching_policy.c rename to src/native/external/libunwind/src/mi/Gset_caching_policy.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gset_fpreg.c b/src/native/external/libunwind/src/mi/Gset_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gset_fpreg.c rename to src/native/external/libunwind/src/mi/Gset_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Gset_reg.c b/src/native/external/libunwind/src/mi/Gset_reg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Gset_reg.c rename to src/native/external/libunwind/src/mi/Gset_reg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Ldestroy_addr_space.c b/src/native/external/libunwind/src/mi/Ldestroy_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Ldestroy_addr_space.c rename to src/native/external/libunwind/src/mi/Ldestroy_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Ldyn-extract.c b/src/native/external/libunwind/src/mi/Ldyn-extract.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Ldyn-extract.c rename to src/native/external/libunwind/src/mi/Ldyn-extract.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Ldyn-remote.c b/src/native/external/libunwind/src/mi/Ldyn-remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Ldyn-remote.c rename to src/native/external/libunwind/src/mi/Ldyn-remote.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lfind_dynamic_proc_info.c b/src/native/external/libunwind/src/mi/Lfind_dynamic_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lfind_dynamic_proc_info.c rename to src/native/external/libunwind/src/mi/Lfind_dynamic_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lget_accessors.c b/src/native/external/libunwind/src/mi/Lget_accessors.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lget_accessors.c rename to src/native/external/libunwind/src/mi/Lget_accessors.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lget_fpreg.c b/src/native/external/libunwind/src/mi/Lget_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lget_fpreg.c rename to src/native/external/libunwind/src/mi/Lget_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lget_proc_info_by_ip.c b/src/native/external/libunwind/src/mi/Lget_proc_info_by_ip.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lget_proc_info_by_ip.c rename to src/native/external/libunwind/src/mi/Lget_proc_info_by_ip.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lget_proc_name.c b/src/native/external/libunwind/src/mi/Lget_proc_name.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lget_proc_name.c rename to src/native/external/libunwind/src/mi/Lget_proc_name.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lget_reg.c b/src/native/external/libunwind/src/mi/Lget_reg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lget_reg.c rename to src/native/external/libunwind/src/mi/Lget_reg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lput_dynamic_unwind_info.c b/src/native/external/libunwind/src/mi/Lput_dynamic_unwind_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lput_dynamic_unwind_info.c rename to src/native/external/libunwind/src/mi/Lput_dynamic_unwind_info.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lset_cache_size.c b/src/native/external/libunwind/src/mi/Lset_cache_size.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lset_cache_size.c rename to src/native/external/libunwind/src/mi/Lset_cache_size.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lset_caching_policy.c b/src/native/external/libunwind/src/mi/Lset_caching_policy.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lset_caching_policy.c rename to src/native/external/libunwind/src/mi/Lset_caching_policy.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lset_fpreg.c b/src/native/external/libunwind/src/mi/Lset_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lset_fpreg.c rename to src/native/external/libunwind/src/mi/Lset_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/Lset_reg.c b/src/native/external/libunwind/src/mi/Lset_reg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/Lset_reg.c rename to src/native/external/libunwind/src/mi/Lset_reg.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/_ReadSLEB.c b/src/native/external/libunwind/src/mi/_ReadSLEB.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/_ReadSLEB.c rename to src/native/external/libunwind/src/mi/_ReadSLEB.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/_ReadULEB.c b/src/native/external/libunwind/src/mi/_ReadULEB.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/_ReadULEB.c rename to src/native/external/libunwind/src/mi/_ReadULEB.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/backtrace.c b/src/native/external/libunwind/src/mi/backtrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/backtrace.c rename to src/native/external/libunwind/src/mi/backtrace.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/dyn-cancel.c b/src/native/external/libunwind/src/mi/dyn-cancel.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/dyn-cancel.c rename to src/native/external/libunwind/src/mi/dyn-cancel.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/dyn-info-list.c b/src/native/external/libunwind/src/mi/dyn-info-list.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/dyn-info-list.c rename to src/native/external/libunwind/src/mi/dyn-info-list.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/dyn-register.c b/src/native/external/libunwind/src/mi/dyn-register.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/dyn-register.c rename to src/native/external/libunwind/src/mi/dyn-register.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/flush_cache.c b/src/native/external/libunwind/src/mi/flush_cache.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/flush_cache.c rename to src/native/external/libunwind/src/mi/flush_cache.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/init.c b/src/native/external/libunwind/src/mi/init.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/init.c rename to src/native/external/libunwind/src/mi/init.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/mempool.c b/src/native/external/libunwind/src/mi/mempool.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/mempool.c rename to src/native/external/libunwind/src/mi/mempool.c diff --git a/src/coreclr/pal/src/libunwind/src/mi/strerror.c b/src/native/external/libunwind/src/mi/strerror.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mi/strerror.c rename to src/native/external/libunwind/src/mi/strerror.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gapply_reg_state.c b/src/native/external/libunwind/src/mips/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gapply_reg_state.c rename to src/native/external/libunwind/src/mips/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gcreate_addr_space.c b/src/native/external/libunwind/src/mips/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gcreate_addr_space.c rename to src/native/external/libunwind/src/mips/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gget_proc_info.c b/src/native/external/libunwind/src/mips/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gget_proc_info.c rename to src/native/external/libunwind/src/mips/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gget_save_loc.c b/src/native/external/libunwind/src/mips/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gget_save_loc.c rename to src/native/external/libunwind/src/mips/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gglobal.c b/src/native/external/libunwind/src/mips/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gglobal.c rename to src/native/external/libunwind/src/mips/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Ginit.c b/src/native/external/libunwind/src/mips/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Ginit.c rename to src/native/external/libunwind/src/mips/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Ginit_local.c b/src/native/external/libunwind/src/mips/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Ginit_local.c rename to src/native/external/libunwind/src/mips/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Ginit_remote.c b/src/native/external/libunwind/src/mips/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Ginit_remote.c rename to src/native/external/libunwind/src/mips/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gis_signal_frame.c b/src/native/external/libunwind/src/mips/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gis_signal_frame.c rename to src/native/external/libunwind/src/mips/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Greg_states_iterate.c b/src/native/external/libunwind/src/mips/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Greg_states_iterate.c rename to src/native/external/libunwind/src/mips/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gregs.c b/src/native/external/libunwind/src/mips/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gregs.c rename to src/native/external/libunwind/src/mips/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gresume.c b/src/native/external/libunwind/src/mips/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gresume.c rename to src/native/external/libunwind/src/mips/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Gstep.c b/src/native/external/libunwind/src/mips/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Gstep.c rename to src/native/external/libunwind/src/mips/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lapply_reg_state.c b/src/native/external/libunwind/src/mips/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lapply_reg_state.c rename to src/native/external/libunwind/src/mips/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lcreate_addr_space.c b/src/native/external/libunwind/src/mips/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lcreate_addr_space.c rename to src/native/external/libunwind/src/mips/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lget_proc_info.c b/src/native/external/libunwind/src/mips/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lget_proc_info.c rename to src/native/external/libunwind/src/mips/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lget_save_loc.c b/src/native/external/libunwind/src/mips/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lget_save_loc.c rename to src/native/external/libunwind/src/mips/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lglobal.c b/src/native/external/libunwind/src/mips/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lglobal.c rename to src/native/external/libunwind/src/mips/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Linit.c b/src/native/external/libunwind/src/mips/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Linit.c rename to src/native/external/libunwind/src/mips/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Linit_local.c b/src/native/external/libunwind/src/mips/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Linit_local.c rename to src/native/external/libunwind/src/mips/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Linit_remote.c b/src/native/external/libunwind/src/mips/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Linit_remote.c rename to src/native/external/libunwind/src/mips/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lis_signal_frame.c b/src/native/external/libunwind/src/mips/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lis_signal_frame.c rename to src/native/external/libunwind/src/mips/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lreg_states_iterate.c b/src/native/external/libunwind/src/mips/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lreg_states_iterate.c rename to src/native/external/libunwind/src/mips/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lregs.c b/src/native/external/libunwind/src/mips/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lregs.c rename to src/native/external/libunwind/src/mips/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lresume.c b/src/native/external/libunwind/src/mips/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lresume.c rename to src/native/external/libunwind/src/mips/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/Lstep.c b/src/native/external/libunwind/src/mips/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/Lstep.c rename to src/native/external/libunwind/src/mips/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/elfxx.c b/src/native/external/libunwind/src/mips/elfxx.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/elfxx.c rename to src/native/external/libunwind/src/mips/elfxx.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/gen-offsets.c b/src/native/external/libunwind/src/mips/gen-offsets.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/gen-offsets.c rename to src/native/external/libunwind/src/mips/gen-offsets.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/getcontext.S b/src/native/external/libunwind/src/mips/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/getcontext.S rename to src/native/external/libunwind/src/mips/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/mips/init.h b/src/native/external/libunwind/src/mips/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/init.h rename to src/native/external/libunwind/src/mips/init.h diff --git a/src/coreclr/pal/src/libunwind/src/mips/is_fpreg.c b/src/native/external/libunwind/src/mips/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/is_fpreg.c rename to src/native/external/libunwind/src/mips/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/offsets.h b/src/native/external/libunwind/src/mips/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/offsets.h rename to src/native/external/libunwind/src/mips/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/mips/regname.c b/src/native/external/libunwind/src/mips/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/regname.c rename to src/native/external/libunwind/src/mips/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/mips/siglongjmp.S b/src/native/external/libunwind/src/mips/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/siglongjmp.S rename to src/native/external/libunwind/src/mips/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/mips/unwind_i.h b/src/native/external/libunwind/src/mips/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/mips/unwind_i.h rename to src/native/external/libunwind/src/mips/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/os-freebsd.c b/src/native/external/libunwind/src/os-freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/os-freebsd.c rename to src/native/external/libunwind/src/os-freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/os-hpux.c b/src/native/external/libunwind/src/os-hpux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/os-hpux.c rename to src/native/external/libunwind/src/os-hpux.c diff --git a/src/coreclr/pal/src/libunwind/src/os-linux.c b/src/native/external/libunwind/src/os-linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/os-linux.c rename to src/native/external/libunwind/src/os-linux.c diff --git a/src/coreclr/pal/src/libunwind/src/os-linux.h b/src/native/external/libunwind/src/os-linux.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/os-linux.h rename to src/native/external/libunwind/src/os-linux.h diff --git a/src/coreclr/pal/src/libunwind/src/os-qnx.c b/src/native/external/libunwind/src/os-qnx.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/os-qnx.c rename to src/native/external/libunwind/src/os-qnx.c diff --git a/src/coreclr/pal/src/libunwind/src/os-solaris.c b/src/native/external/libunwind/src/os-solaris.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/os-solaris.c rename to src/native/external/libunwind/src/os-solaris.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Gapply_reg_state.c b/src/native/external/libunwind/src/ppc/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Gapply_reg_state.c rename to src/native/external/libunwind/src/ppc/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Gget_proc_info.c b/src/native/external/libunwind/src/ppc/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Gget_proc_info.c rename to src/native/external/libunwind/src/ppc/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Gget_save_loc.c b/src/native/external/libunwind/src/ppc/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Gget_save_loc.c rename to src/native/external/libunwind/src/ppc/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Ginit_local.c b/src/native/external/libunwind/src/ppc/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Ginit_local.c rename to src/native/external/libunwind/src/ppc/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Ginit_remote.c b/src/native/external/libunwind/src/ppc/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Ginit_remote.c rename to src/native/external/libunwind/src/ppc/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Gis_signal_frame.c b/src/native/external/libunwind/src/ppc/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Gis_signal_frame.c rename to src/native/external/libunwind/src/ppc/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Greg_states_iterate.c b/src/native/external/libunwind/src/ppc/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Greg_states_iterate.c rename to src/native/external/libunwind/src/ppc/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Lapply_reg_state.c b/src/native/external/libunwind/src/ppc/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Lapply_reg_state.c rename to src/native/external/libunwind/src/ppc/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Lget_proc_info.c b/src/native/external/libunwind/src/ppc/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Lget_proc_info.c rename to src/native/external/libunwind/src/ppc/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Lget_save_loc.c b/src/native/external/libunwind/src/ppc/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Lget_save_loc.c rename to src/native/external/libunwind/src/ppc/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Linit_local.c b/src/native/external/libunwind/src/ppc/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Linit_local.c rename to src/native/external/libunwind/src/ppc/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Linit_remote.c b/src/native/external/libunwind/src/ppc/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Linit_remote.c rename to src/native/external/libunwind/src/ppc/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Lis_signal_frame.c b/src/native/external/libunwind/src/ppc/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Lis_signal_frame.c rename to src/native/external/libunwind/src/ppc/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/Lreg_states_iterate.c b/src/native/external/libunwind/src/ppc/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/Lreg_states_iterate.c rename to src/native/external/libunwind/src/ppc/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc/longjmp.S b/src/native/external/libunwind/src/ppc/longjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/longjmp.S rename to src/native/external/libunwind/src/ppc/longjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/ppc/siglongjmp.S b/src/native/external/libunwind/src/ppc/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc/siglongjmp.S rename to src/native/external/libunwind/src/ppc/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Gapply_reg_state.c b/src/native/external/libunwind/src/ppc32/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Gapply_reg_state.c rename to src/native/external/libunwind/src/ppc32/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Gcreate_addr_space.c b/src/native/external/libunwind/src/ppc32/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Gcreate_addr_space.c rename to src/native/external/libunwind/src/ppc32/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Gglobal.c b/src/native/external/libunwind/src/ppc32/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Gglobal.c rename to src/native/external/libunwind/src/ppc32/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Ginit.c b/src/native/external/libunwind/src/ppc32/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Ginit.c rename to src/native/external/libunwind/src/ppc32/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Greg_states_iterate.c b/src/native/external/libunwind/src/ppc32/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Greg_states_iterate.c rename to src/native/external/libunwind/src/ppc32/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Gregs.c b/src/native/external/libunwind/src/ppc32/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Gregs.c rename to src/native/external/libunwind/src/ppc32/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Gresume.c b/src/native/external/libunwind/src/ppc32/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Gresume.c rename to src/native/external/libunwind/src/ppc32/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Gstep.c b/src/native/external/libunwind/src/ppc32/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Gstep.c rename to src/native/external/libunwind/src/ppc32/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Lapply_reg_state.c b/src/native/external/libunwind/src/ppc32/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Lapply_reg_state.c rename to src/native/external/libunwind/src/ppc32/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Lcreate_addr_space.c b/src/native/external/libunwind/src/ppc32/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Lcreate_addr_space.c rename to src/native/external/libunwind/src/ppc32/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Lglobal.c b/src/native/external/libunwind/src/ppc32/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Lglobal.c rename to src/native/external/libunwind/src/ppc32/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Linit.c b/src/native/external/libunwind/src/ppc32/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Linit.c rename to src/native/external/libunwind/src/ppc32/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Lreg_states_iterate.c b/src/native/external/libunwind/src/ppc32/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Lreg_states_iterate.c rename to src/native/external/libunwind/src/ppc32/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Lregs.c b/src/native/external/libunwind/src/ppc32/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Lregs.c rename to src/native/external/libunwind/src/ppc32/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Lresume.c b/src/native/external/libunwind/src/ppc32/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Lresume.c rename to src/native/external/libunwind/src/ppc32/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Lstep.c b/src/native/external/libunwind/src/ppc32/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Lstep.c rename to src/native/external/libunwind/src/ppc32/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/Make-arch.in b/src/native/external/libunwind/src/ppc32/Make-arch.in similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/Make-arch.in rename to src/native/external/libunwind/src/ppc32/Make-arch.in diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/get_func_addr.c b/src/native/external/libunwind/src/ppc32/get_func_addr.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/get_func_addr.c rename to src/native/external/libunwind/src/ppc32/get_func_addr.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/init.h b/src/native/external/libunwind/src/ppc32/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/init.h rename to src/native/external/libunwind/src/ppc32/init.h diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/is_fpreg.c b/src/native/external/libunwind/src/ppc32/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/is_fpreg.c rename to src/native/external/libunwind/src/ppc32/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/regname.c b/src/native/external/libunwind/src/ppc32/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/regname.c rename to src/native/external/libunwind/src/ppc32/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/setcontext.S b/src/native/external/libunwind/src/ppc32/setcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/setcontext.S rename to src/native/external/libunwind/src/ppc32/setcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/ucontext_i.h b/src/native/external/libunwind/src/ppc32/ucontext_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/ucontext_i.h rename to src/native/external/libunwind/src/ppc32/ucontext_i.h diff --git a/src/coreclr/pal/src/libunwind/src/ppc32/unwind_i.h b/src/native/external/libunwind/src/ppc32/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc32/unwind_i.h rename to src/native/external/libunwind/src/ppc32/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Gapply_reg_state.c b/src/native/external/libunwind/src/ppc64/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Gapply_reg_state.c rename to src/native/external/libunwind/src/ppc64/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Gcreate_addr_space.c b/src/native/external/libunwind/src/ppc64/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Gcreate_addr_space.c rename to src/native/external/libunwind/src/ppc64/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Gglobal.c b/src/native/external/libunwind/src/ppc64/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Gglobal.c rename to src/native/external/libunwind/src/ppc64/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Ginit.c b/src/native/external/libunwind/src/ppc64/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Ginit.c rename to src/native/external/libunwind/src/ppc64/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Greg_states_iterate.c b/src/native/external/libunwind/src/ppc64/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Greg_states_iterate.c rename to src/native/external/libunwind/src/ppc64/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Gregs.c b/src/native/external/libunwind/src/ppc64/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Gregs.c rename to src/native/external/libunwind/src/ppc64/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Gresume.c b/src/native/external/libunwind/src/ppc64/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Gresume.c rename to src/native/external/libunwind/src/ppc64/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Gstep.c b/src/native/external/libunwind/src/ppc64/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Gstep.c rename to src/native/external/libunwind/src/ppc64/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Lapply_reg_state.c b/src/native/external/libunwind/src/ppc64/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Lapply_reg_state.c rename to src/native/external/libunwind/src/ppc64/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Lcreate_addr_space.c b/src/native/external/libunwind/src/ppc64/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Lcreate_addr_space.c rename to src/native/external/libunwind/src/ppc64/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Lglobal.c b/src/native/external/libunwind/src/ppc64/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Lglobal.c rename to src/native/external/libunwind/src/ppc64/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Linit.c b/src/native/external/libunwind/src/ppc64/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Linit.c rename to src/native/external/libunwind/src/ppc64/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Lreg_states_iterate.c b/src/native/external/libunwind/src/ppc64/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Lreg_states_iterate.c rename to src/native/external/libunwind/src/ppc64/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Lregs.c b/src/native/external/libunwind/src/ppc64/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Lregs.c rename to src/native/external/libunwind/src/ppc64/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Lresume.c b/src/native/external/libunwind/src/ppc64/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Lresume.c rename to src/native/external/libunwind/src/ppc64/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/Lstep.c b/src/native/external/libunwind/src/ppc64/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/Lstep.c rename to src/native/external/libunwind/src/ppc64/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/get_func_addr.c b/src/native/external/libunwind/src/ppc64/get_func_addr.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/get_func_addr.c rename to src/native/external/libunwind/src/ppc64/get_func_addr.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/init.h b/src/native/external/libunwind/src/ppc64/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/init.h rename to src/native/external/libunwind/src/ppc64/init.h diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/is_fpreg.c b/src/native/external/libunwind/src/ppc64/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/is_fpreg.c rename to src/native/external/libunwind/src/ppc64/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/regname.c b/src/native/external/libunwind/src/ppc64/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/regname.c rename to src/native/external/libunwind/src/ppc64/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/setcontext.S b/src/native/external/libunwind/src/ppc64/setcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/setcontext.S rename to src/native/external/libunwind/src/ppc64/setcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/ucontext_i.h b/src/native/external/libunwind/src/ppc64/ucontext_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/ucontext_i.h rename to src/native/external/libunwind/src/ppc64/ucontext_i.h diff --git a/src/coreclr/pal/src/libunwind/src/ppc64/unwind_i.h b/src/native/external/libunwind/src/ppc64/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ppc64/unwind_i.h rename to src/native/external/libunwind/src/ppc64/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_access_fpreg.c b/src/native/external/libunwind/src/ptrace/_UPT_access_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_access_fpreg.c rename to src/native/external/libunwind/src/ptrace/_UPT_access_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_access_mem.c b/src/native/external/libunwind/src/ptrace/_UPT_access_mem.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_access_mem.c rename to src/native/external/libunwind/src/ptrace/_UPT_access_mem.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_access_reg.c b/src/native/external/libunwind/src/ptrace/_UPT_access_reg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_access_reg.c rename to src/native/external/libunwind/src/ptrace/_UPT_access_reg.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_accessors.c b/src/native/external/libunwind/src/ptrace/_UPT_accessors.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_accessors.c rename to src/native/external/libunwind/src/ptrace/_UPT_accessors.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_create.c b/src/native/external/libunwind/src/ptrace/_UPT_create.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_create.c rename to src/native/external/libunwind/src/ptrace/_UPT_create.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_destroy.c b/src/native/external/libunwind/src/ptrace/_UPT_destroy.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_destroy.c rename to src/native/external/libunwind/src/ptrace/_UPT_destroy.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_elf.c b/src/native/external/libunwind/src/ptrace/_UPT_elf.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_elf.c rename to src/native/external/libunwind/src/ptrace/_UPT_elf.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_find_proc_info.c b/src/native/external/libunwind/src/ptrace/_UPT_find_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_find_proc_info.c rename to src/native/external/libunwind/src/ptrace/_UPT_find_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_get_dyn_info_list_addr.c b/src/native/external/libunwind/src/ptrace/_UPT_get_dyn_info_list_addr.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_get_dyn_info_list_addr.c rename to src/native/external/libunwind/src/ptrace/_UPT_get_dyn_info_list_addr.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_get_proc_name.c b/src/native/external/libunwind/src/ptrace/_UPT_get_proc_name.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_get_proc_name.c rename to src/native/external/libunwind/src/ptrace/_UPT_get_proc_name.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_internal.h b/src/native/external/libunwind/src/ptrace/_UPT_internal.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_internal.h rename to src/native/external/libunwind/src/ptrace/_UPT_internal.h diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_put_unwind_info.c b/src/native/external/libunwind/src/ptrace/_UPT_put_unwind_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_put_unwind_info.c rename to src/native/external/libunwind/src/ptrace/_UPT_put_unwind_info.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_reg_offset.c b/src/native/external/libunwind/src/ptrace/_UPT_reg_offset.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_reg_offset.c rename to src/native/external/libunwind/src/ptrace/_UPT_reg_offset.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/_UPT_resume.c b/src/native/external/libunwind/src/ptrace/_UPT_resume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/_UPT_resume.c rename to src/native/external/libunwind/src/ptrace/_UPT_resume.c diff --git a/src/coreclr/pal/src/libunwind/src/ptrace/libunwind-ptrace.pc.in b/src/native/external/libunwind/src/ptrace/libunwind-ptrace.pc.in similarity index 100% rename from src/coreclr/pal/src/libunwind/src/ptrace/libunwind-ptrace.pc.in rename to src/native/external/libunwind/src/ptrace/libunwind-ptrace.pc.in diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gapply_reg_state.c b/src/native/external/libunwind/src/riscv/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gapply_reg_state.c rename to src/native/external/libunwind/src/riscv/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gcreate_addr_space.c b/src/native/external/libunwind/src/riscv/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gcreate_addr_space.c rename to src/native/external/libunwind/src/riscv/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gget_proc_info.c b/src/native/external/libunwind/src/riscv/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gget_proc_info.c rename to src/native/external/libunwind/src/riscv/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gget_save_loc.c b/src/native/external/libunwind/src/riscv/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gget_save_loc.c rename to src/native/external/libunwind/src/riscv/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gglobal.c b/src/native/external/libunwind/src/riscv/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gglobal.c rename to src/native/external/libunwind/src/riscv/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Ginit.c b/src/native/external/libunwind/src/riscv/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Ginit.c rename to src/native/external/libunwind/src/riscv/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Ginit_local.c b/src/native/external/libunwind/src/riscv/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Ginit_local.c rename to src/native/external/libunwind/src/riscv/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Ginit_remote.c b/src/native/external/libunwind/src/riscv/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Ginit_remote.c rename to src/native/external/libunwind/src/riscv/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gis_signal_frame.c b/src/native/external/libunwind/src/riscv/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gis_signal_frame.c rename to src/native/external/libunwind/src/riscv/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Greg_states_iterate.c b/src/native/external/libunwind/src/riscv/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Greg_states_iterate.c rename to src/native/external/libunwind/src/riscv/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gregs.c b/src/native/external/libunwind/src/riscv/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gregs.c rename to src/native/external/libunwind/src/riscv/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gresume.c b/src/native/external/libunwind/src/riscv/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gresume.c rename to src/native/external/libunwind/src/riscv/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Gstep.c b/src/native/external/libunwind/src/riscv/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Gstep.c rename to src/native/external/libunwind/src/riscv/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lapply_reg_state.c b/src/native/external/libunwind/src/riscv/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lapply_reg_state.c rename to src/native/external/libunwind/src/riscv/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lcreate_addr_space.c b/src/native/external/libunwind/src/riscv/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lcreate_addr_space.c rename to src/native/external/libunwind/src/riscv/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lget_proc_info.c b/src/native/external/libunwind/src/riscv/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lget_proc_info.c rename to src/native/external/libunwind/src/riscv/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lget_save_loc.c b/src/native/external/libunwind/src/riscv/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lget_save_loc.c rename to src/native/external/libunwind/src/riscv/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lglobal.c b/src/native/external/libunwind/src/riscv/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lglobal.c rename to src/native/external/libunwind/src/riscv/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Linit.c b/src/native/external/libunwind/src/riscv/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Linit.c rename to src/native/external/libunwind/src/riscv/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Linit_local.c b/src/native/external/libunwind/src/riscv/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Linit_local.c rename to src/native/external/libunwind/src/riscv/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Linit_remote.c b/src/native/external/libunwind/src/riscv/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Linit_remote.c rename to src/native/external/libunwind/src/riscv/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lis_signal_frame.c b/src/native/external/libunwind/src/riscv/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lis_signal_frame.c rename to src/native/external/libunwind/src/riscv/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lreg_states_iterate.c b/src/native/external/libunwind/src/riscv/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lreg_states_iterate.c rename to src/native/external/libunwind/src/riscv/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lregs.c b/src/native/external/libunwind/src/riscv/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lregs.c rename to src/native/external/libunwind/src/riscv/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lresume.c b/src/native/external/libunwind/src/riscv/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lresume.c rename to src/native/external/libunwind/src/riscv/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/Lstep.c b/src/native/external/libunwind/src/riscv/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/Lstep.c rename to src/native/external/libunwind/src/riscv/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/asm.h b/src/native/external/libunwind/src/riscv/asm.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/asm.h rename to src/native/external/libunwind/src/riscv/asm.h diff --git a/src/coreclr/pal/src/libunwind/src/riscv/getcontext.S b/src/native/external/libunwind/src/riscv/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/getcontext.S rename to src/native/external/libunwind/src/riscv/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/riscv/init.h b/src/native/external/libunwind/src/riscv/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/init.h rename to src/native/external/libunwind/src/riscv/init.h diff --git a/src/coreclr/pal/src/libunwind/src/riscv/is_fpreg.c b/src/native/external/libunwind/src/riscv/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/is_fpreg.c rename to src/native/external/libunwind/src/riscv/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/offsets.h b/src/native/external/libunwind/src/riscv/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/offsets.h rename to src/native/external/libunwind/src/riscv/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/riscv/regname.c b/src/native/external/libunwind/src/riscv/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/regname.c rename to src/native/external/libunwind/src/riscv/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/riscv/setcontext.S b/src/native/external/libunwind/src/riscv/setcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/setcontext.S rename to src/native/external/libunwind/src/riscv/setcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/riscv/siglongjmp.S b/src/native/external/libunwind/src/riscv/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/siglongjmp.S rename to src/native/external/libunwind/src/riscv/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/riscv/unwind_i.h b/src/native/external/libunwind/src/riscv/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/riscv/unwind_i.h rename to src/native/external/libunwind/src/riscv/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gapply_reg_state.c b/src/native/external/libunwind/src/s390x/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gapply_reg_state.c rename to src/native/external/libunwind/src/s390x/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gcreate_addr_space.c b/src/native/external/libunwind/src/s390x/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gcreate_addr_space.c rename to src/native/external/libunwind/src/s390x/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gget_proc_info.c b/src/native/external/libunwind/src/s390x/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gget_proc_info.c rename to src/native/external/libunwind/src/s390x/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gget_save_loc.c b/src/native/external/libunwind/src/s390x/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gget_save_loc.c rename to src/native/external/libunwind/src/s390x/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gglobal.c b/src/native/external/libunwind/src/s390x/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gglobal.c rename to src/native/external/libunwind/src/s390x/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Ginit.c b/src/native/external/libunwind/src/s390x/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Ginit.c rename to src/native/external/libunwind/src/s390x/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Ginit_local.c b/src/native/external/libunwind/src/s390x/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Ginit_local.c rename to src/native/external/libunwind/src/s390x/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Ginit_remote.c b/src/native/external/libunwind/src/s390x/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Ginit_remote.c rename to src/native/external/libunwind/src/s390x/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gis_signal_frame.c b/src/native/external/libunwind/src/s390x/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gis_signal_frame.c rename to src/native/external/libunwind/src/s390x/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Greg_states_iterate.c b/src/native/external/libunwind/src/s390x/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Greg_states_iterate.c rename to src/native/external/libunwind/src/s390x/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gregs.c b/src/native/external/libunwind/src/s390x/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gregs.c rename to src/native/external/libunwind/src/s390x/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gresume.c b/src/native/external/libunwind/src/s390x/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gresume.c rename to src/native/external/libunwind/src/s390x/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Gstep.c b/src/native/external/libunwind/src/s390x/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Gstep.c rename to src/native/external/libunwind/src/s390x/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lapply_reg_state.c b/src/native/external/libunwind/src/s390x/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lapply_reg_state.c rename to src/native/external/libunwind/src/s390x/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lcreate_addr_space.c b/src/native/external/libunwind/src/s390x/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lcreate_addr_space.c rename to src/native/external/libunwind/src/s390x/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lget_proc_info.c b/src/native/external/libunwind/src/s390x/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lget_proc_info.c rename to src/native/external/libunwind/src/s390x/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lget_save_loc.c b/src/native/external/libunwind/src/s390x/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lget_save_loc.c rename to src/native/external/libunwind/src/s390x/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lglobal.c b/src/native/external/libunwind/src/s390x/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lglobal.c rename to src/native/external/libunwind/src/s390x/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Linit.c b/src/native/external/libunwind/src/s390x/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Linit.c rename to src/native/external/libunwind/src/s390x/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Linit_local.c b/src/native/external/libunwind/src/s390x/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Linit_local.c rename to src/native/external/libunwind/src/s390x/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Linit_remote.c b/src/native/external/libunwind/src/s390x/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Linit_remote.c rename to src/native/external/libunwind/src/s390x/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lis_signal_frame.c b/src/native/external/libunwind/src/s390x/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lis_signal_frame.c rename to src/native/external/libunwind/src/s390x/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lreg_states_iterate.c b/src/native/external/libunwind/src/s390x/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lreg_states_iterate.c rename to src/native/external/libunwind/src/s390x/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lregs.c b/src/native/external/libunwind/src/s390x/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lregs.c rename to src/native/external/libunwind/src/s390x/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lresume.c b/src/native/external/libunwind/src/s390x/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lresume.c rename to src/native/external/libunwind/src/s390x/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/Lstep.c b/src/native/external/libunwind/src/s390x/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/Lstep.c rename to src/native/external/libunwind/src/s390x/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/getcontext.S b/src/native/external/libunwind/src/s390x/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/getcontext.S rename to src/native/external/libunwind/src/s390x/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/s390x/init.h b/src/native/external/libunwind/src/s390x/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/init.h rename to src/native/external/libunwind/src/s390x/init.h diff --git a/src/coreclr/pal/src/libunwind/src/s390x/is_fpreg.c b/src/native/external/libunwind/src/s390x/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/is_fpreg.c rename to src/native/external/libunwind/src/s390x/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/regname.c b/src/native/external/libunwind/src/s390x/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/regname.c rename to src/native/external/libunwind/src/s390x/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/s390x/setcontext.S b/src/native/external/libunwind/src/s390x/setcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/setcontext.S rename to src/native/external/libunwind/src/s390x/setcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/s390x/unwind_i.h b/src/native/external/libunwind/src/s390x/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/s390x/unwind_i.h rename to src/native/external/libunwind/src/s390x/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/setjmp/libunwind-setjmp.pc.in b/src/native/external/libunwind/src/setjmp/libunwind-setjmp.pc.in similarity index 100% rename from src/coreclr/pal/src/libunwind/src/setjmp/libunwind-setjmp.pc.in rename to src/native/external/libunwind/src/setjmp/libunwind-setjmp.pc.in diff --git a/src/coreclr/pal/src/libunwind/src/setjmp/longjmp.c b/src/native/external/libunwind/src/setjmp/longjmp.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/setjmp/longjmp.c rename to src/native/external/libunwind/src/setjmp/longjmp.c diff --git a/src/coreclr/pal/src/libunwind/src/setjmp/setjmp.c b/src/native/external/libunwind/src/setjmp/setjmp.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/setjmp/setjmp.c rename to src/native/external/libunwind/src/setjmp/setjmp.c diff --git a/src/coreclr/pal/src/libunwind/src/setjmp/setjmp_i.h b/src/native/external/libunwind/src/setjmp/setjmp_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/setjmp/setjmp_i.h rename to src/native/external/libunwind/src/setjmp/setjmp_i.h diff --git a/src/coreclr/pal/src/libunwind/src/setjmp/siglongjmp.c b/src/native/external/libunwind/src/setjmp/siglongjmp.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/setjmp/siglongjmp.c rename to src/native/external/libunwind/src/setjmp/siglongjmp.c diff --git a/src/coreclr/pal/src/libunwind/src/setjmp/sigsetjmp.c b/src/native/external/libunwind/src/setjmp/sigsetjmp.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/setjmp/sigsetjmp.c rename to src/native/external/libunwind/src/setjmp/sigsetjmp.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gapply_reg_state.c b/src/native/external/libunwind/src/sh/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gapply_reg_state.c rename to src/native/external/libunwind/src/sh/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gcreate_addr_space.c b/src/native/external/libunwind/src/sh/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gcreate_addr_space.c rename to src/native/external/libunwind/src/sh/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gget_proc_info.c b/src/native/external/libunwind/src/sh/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gget_proc_info.c rename to src/native/external/libunwind/src/sh/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gget_save_loc.c b/src/native/external/libunwind/src/sh/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gget_save_loc.c rename to src/native/external/libunwind/src/sh/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gglobal.c b/src/native/external/libunwind/src/sh/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gglobal.c rename to src/native/external/libunwind/src/sh/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Ginit.c b/src/native/external/libunwind/src/sh/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Ginit.c rename to src/native/external/libunwind/src/sh/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Ginit_local.c b/src/native/external/libunwind/src/sh/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Ginit_local.c rename to src/native/external/libunwind/src/sh/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Ginit_remote.c b/src/native/external/libunwind/src/sh/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Ginit_remote.c rename to src/native/external/libunwind/src/sh/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gis_signal_frame.c b/src/native/external/libunwind/src/sh/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gis_signal_frame.c rename to src/native/external/libunwind/src/sh/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Greg_states_iterate.c b/src/native/external/libunwind/src/sh/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Greg_states_iterate.c rename to src/native/external/libunwind/src/sh/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gregs.c b/src/native/external/libunwind/src/sh/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gregs.c rename to src/native/external/libunwind/src/sh/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gresume.c b/src/native/external/libunwind/src/sh/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gresume.c rename to src/native/external/libunwind/src/sh/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Gstep.c b/src/native/external/libunwind/src/sh/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Gstep.c rename to src/native/external/libunwind/src/sh/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lapply_reg_state.c b/src/native/external/libunwind/src/sh/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lapply_reg_state.c rename to src/native/external/libunwind/src/sh/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lcreate_addr_space.c b/src/native/external/libunwind/src/sh/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lcreate_addr_space.c rename to src/native/external/libunwind/src/sh/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lget_proc_info.c b/src/native/external/libunwind/src/sh/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lget_proc_info.c rename to src/native/external/libunwind/src/sh/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lget_save_loc.c b/src/native/external/libunwind/src/sh/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lget_save_loc.c rename to src/native/external/libunwind/src/sh/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lglobal.c b/src/native/external/libunwind/src/sh/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lglobal.c rename to src/native/external/libunwind/src/sh/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Linit.c b/src/native/external/libunwind/src/sh/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Linit.c rename to src/native/external/libunwind/src/sh/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Linit_local.c b/src/native/external/libunwind/src/sh/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Linit_local.c rename to src/native/external/libunwind/src/sh/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Linit_remote.c b/src/native/external/libunwind/src/sh/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Linit_remote.c rename to src/native/external/libunwind/src/sh/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lis_signal_frame.c b/src/native/external/libunwind/src/sh/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lis_signal_frame.c rename to src/native/external/libunwind/src/sh/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lreg_states_iterate.c b/src/native/external/libunwind/src/sh/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lreg_states_iterate.c rename to src/native/external/libunwind/src/sh/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lregs.c b/src/native/external/libunwind/src/sh/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lregs.c rename to src/native/external/libunwind/src/sh/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lresume.c b/src/native/external/libunwind/src/sh/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lresume.c rename to src/native/external/libunwind/src/sh/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/Lstep.c b/src/native/external/libunwind/src/sh/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/Lstep.c rename to src/native/external/libunwind/src/sh/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/gen-offsets.c b/src/native/external/libunwind/src/sh/gen-offsets.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/gen-offsets.c rename to src/native/external/libunwind/src/sh/gen-offsets.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/init.h b/src/native/external/libunwind/src/sh/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/init.h rename to src/native/external/libunwind/src/sh/init.h diff --git a/src/coreclr/pal/src/libunwind/src/sh/is_fpreg.c b/src/native/external/libunwind/src/sh/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/is_fpreg.c rename to src/native/external/libunwind/src/sh/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/offsets.h b/src/native/external/libunwind/src/sh/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/offsets.h rename to src/native/external/libunwind/src/sh/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/sh/regname.c b/src/native/external/libunwind/src/sh/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/regname.c rename to src/native/external/libunwind/src/sh/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/sh/siglongjmp.S b/src/native/external/libunwind/src/sh/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/siglongjmp.S rename to src/native/external/libunwind/src/sh/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/sh/unwind_i.h b/src/native/external/libunwind/src/sh/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/sh/unwind_i.h rename to src/native/external/libunwind/src/sh/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gapply_reg_state.c b/src/native/external/libunwind/src/tilegx/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gapply_reg_state.c rename to src/native/external/libunwind/src/tilegx/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gcreate_addr_space.c b/src/native/external/libunwind/src/tilegx/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gcreate_addr_space.c rename to src/native/external/libunwind/src/tilegx/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gget_proc_info.c b/src/native/external/libunwind/src/tilegx/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gget_proc_info.c rename to src/native/external/libunwind/src/tilegx/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gget_save_loc.c b/src/native/external/libunwind/src/tilegx/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gget_save_loc.c rename to src/native/external/libunwind/src/tilegx/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gglobal.c b/src/native/external/libunwind/src/tilegx/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gglobal.c rename to src/native/external/libunwind/src/tilegx/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Ginit.c b/src/native/external/libunwind/src/tilegx/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Ginit.c rename to src/native/external/libunwind/src/tilegx/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Ginit_local.c b/src/native/external/libunwind/src/tilegx/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Ginit_local.c rename to src/native/external/libunwind/src/tilegx/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Ginit_remote.c b/src/native/external/libunwind/src/tilegx/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Ginit_remote.c rename to src/native/external/libunwind/src/tilegx/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gis_signal_frame.c b/src/native/external/libunwind/src/tilegx/Gis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gis_signal_frame.c rename to src/native/external/libunwind/src/tilegx/Gis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Greg_states_iterate.c b/src/native/external/libunwind/src/tilegx/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Greg_states_iterate.c rename to src/native/external/libunwind/src/tilegx/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gregs.c b/src/native/external/libunwind/src/tilegx/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gregs.c rename to src/native/external/libunwind/src/tilegx/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gresume.c b/src/native/external/libunwind/src/tilegx/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gresume.c rename to src/native/external/libunwind/src/tilegx/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Gstep.c b/src/native/external/libunwind/src/tilegx/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Gstep.c rename to src/native/external/libunwind/src/tilegx/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lapply_reg_state.c b/src/native/external/libunwind/src/tilegx/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lapply_reg_state.c rename to src/native/external/libunwind/src/tilegx/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lcreate_addr_space.c b/src/native/external/libunwind/src/tilegx/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lcreate_addr_space.c rename to src/native/external/libunwind/src/tilegx/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lget_proc_info.c b/src/native/external/libunwind/src/tilegx/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lget_proc_info.c rename to src/native/external/libunwind/src/tilegx/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lget_save_loc.c b/src/native/external/libunwind/src/tilegx/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lget_save_loc.c rename to src/native/external/libunwind/src/tilegx/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lglobal.c b/src/native/external/libunwind/src/tilegx/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lglobal.c rename to src/native/external/libunwind/src/tilegx/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Linit.c b/src/native/external/libunwind/src/tilegx/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Linit.c rename to src/native/external/libunwind/src/tilegx/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Linit_local.c b/src/native/external/libunwind/src/tilegx/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Linit_local.c rename to src/native/external/libunwind/src/tilegx/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Linit_remote.c b/src/native/external/libunwind/src/tilegx/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Linit_remote.c rename to src/native/external/libunwind/src/tilegx/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lis_signal_frame.c b/src/native/external/libunwind/src/tilegx/Lis_signal_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lis_signal_frame.c rename to src/native/external/libunwind/src/tilegx/Lis_signal_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lreg_states_iterate.c b/src/native/external/libunwind/src/tilegx/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lreg_states_iterate.c rename to src/native/external/libunwind/src/tilegx/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lregs.c b/src/native/external/libunwind/src/tilegx/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lregs.c rename to src/native/external/libunwind/src/tilegx/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lresume.c b/src/native/external/libunwind/src/tilegx/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lresume.c rename to src/native/external/libunwind/src/tilegx/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/Lstep.c b/src/native/external/libunwind/src/tilegx/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/Lstep.c rename to src/native/external/libunwind/src/tilegx/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/elfxx.c b/src/native/external/libunwind/src/tilegx/elfxx.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/elfxx.c rename to src/native/external/libunwind/src/tilegx/elfxx.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/gen-offsets.c b/src/native/external/libunwind/src/tilegx/gen-offsets.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/gen-offsets.c rename to src/native/external/libunwind/src/tilegx/gen-offsets.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/getcontext.S b/src/native/external/libunwind/src/tilegx/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/getcontext.S rename to src/native/external/libunwind/src/tilegx/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/init.h b/src/native/external/libunwind/src/tilegx/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/init.h rename to src/native/external/libunwind/src/tilegx/init.h diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/is_fpreg.c b/src/native/external/libunwind/src/tilegx/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/is_fpreg.c rename to src/native/external/libunwind/src/tilegx/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/offsets.h b/src/native/external/libunwind/src/tilegx/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/offsets.h rename to src/native/external/libunwind/src/tilegx/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/regname.c b/src/native/external/libunwind/src/tilegx/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/regname.c rename to src/native/external/libunwind/src/tilegx/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/siglongjmp.S b/src/native/external/libunwind/src/tilegx/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/siglongjmp.S rename to src/native/external/libunwind/src/tilegx/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/tilegx/unwind_i.h b/src/native/external/libunwind/src/tilegx/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/tilegx/unwind_i.h rename to src/native/external/libunwind/src/tilegx/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/unwind/Backtrace.c b/src/native/external/libunwind/src/unwind/Backtrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/Backtrace.c rename to src/native/external/libunwind/src/unwind/Backtrace.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/DeleteException.c b/src/native/external/libunwind/src/unwind/DeleteException.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/DeleteException.c rename to src/native/external/libunwind/src/unwind/DeleteException.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/FindEnclosingFunction.c b/src/native/external/libunwind/src/unwind/FindEnclosingFunction.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/FindEnclosingFunction.c rename to src/native/external/libunwind/src/unwind/FindEnclosingFunction.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/ForcedUnwind.c b/src/native/external/libunwind/src/unwind/ForcedUnwind.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/ForcedUnwind.c rename to src/native/external/libunwind/src/unwind/ForcedUnwind.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetBSP.c b/src/native/external/libunwind/src/unwind/GetBSP.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetBSP.c rename to src/native/external/libunwind/src/unwind/GetBSP.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetCFA.c b/src/native/external/libunwind/src/unwind/GetCFA.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetCFA.c rename to src/native/external/libunwind/src/unwind/GetCFA.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetDataRelBase.c b/src/native/external/libunwind/src/unwind/GetDataRelBase.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetDataRelBase.c rename to src/native/external/libunwind/src/unwind/GetDataRelBase.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetGR.c b/src/native/external/libunwind/src/unwind/GetGR.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetGR.c rename to src/native/external/libunwind/src/unwind/GetGR.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetIP.c b/src/native/external/libunwind/src/unwind/GetIP.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetIP.c rename to src/native/external/libunwind/src/unwind/GetIP.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetIPInfo.c b/src/native/external/libunwind/src/unwind/GetIPInfo.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetIPInfo.c rename to src/native/external/libunwind/src/unwind/GetIPInfo.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetLanguageSpecificData.c b/src/native/external/libunwind/src/unwind/GetLanguageSpecificData.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetLanguageSpecificData.c rename to src/native/external/libunwind/src/unwind/GetLanguageSpecificData.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetRegionStart.c b/src/native/external/libunwind/src/unwind/GetRegionStart.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetRegionStart.c rename to src/native/external/libunwind/src/unwind/GetRegionStart.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/GetTextRelBase.c b/src/native/external/libunwind/src/unwind/GetTextRelBase.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/GetTextRelBase.c rename to src/native/external/libunwind/src/unwind/GetTextRelBase.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/RaiseException.c b/src/native/external/libunwind/src/unwind/RaiseException.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/RaiseException.c rename to src/native/external/libunwind/src/unwind/RaiseException.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/Resume.c b/src/native/external/libunwind/src/unwind/Resume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/Resume.c rename to src/native/external/libunwind/src/unwind/Resume.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/Resume_or_Rethrow.c b/src/native/external/libunwind/src/unwind/Resume_or_Rethrow.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/Resume_or_Rethrow.c rename to src/native/external/libunwind/src/unwind/Resume_or_Rethrow.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/SetGR.c b/src/native/external/libunwind/src/unwind/SetGR.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/SetGR.c rename to src/native/external/libunwind/src/unwind/SetGR.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/SetIP.c b/src/native/external/libunwind/src/unwind/SetIP.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/SetIP.c rename to src/native/external/libunwind/src/unwind/SetIP.c diff --git a/src/coreclr/pal/src/libunwind/src/unwind/libunwind.pc.in b/src/native/external/libunwind/src/unwind/libunwind.pc.in similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/libunwind.pc.in rename to src/native/external/libunwind/src/unwind/libunwind.pc.in diff --git a/src/coreclr/pal/src/libunwind/src/unwind/unwind-internal.h b/src/native/external/libunwind/src/unwind/unwind-internal.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/unwind/unwind-internal.h rename to src/native/external/libunwind/src/unwind/unwind-internal.h diff --git a/src/coreclr/pal/src/libunwind/src/win/pal-single-threaded.c b/src/native/external/libunwind/src/win/pal-single-threaded.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/win/pal-single-threaded.c rename to src/native/external/libunwind/src/win/pal-single-threaded.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gapply_reg_state.c b/src/native/external/libunwind/src/x86/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gapply_reg_state.c rename to src/native/external/libunwind/src/x86/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gcreate_addr_space.c b/src/native/external/libunwind/src/x86/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gcreate_addr_space.c rename to src/native/external/libunwind/src/x86/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gget_proc_info.c b/src/native/external/libunwind/src/x86/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gget_proc_info.c rename to src/native/external/libunwind/src/x86/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gget_save_loc.c b/src/native/external/libunwind/src/x86/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gget_save_loc.c rename to src/native/external/libunwind/src/x86/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gglobal.c b/src/native/external/libunwind/src/x86/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gglobal.c rename to src/native/external/libunwind/src/x86/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Ginit.c b/src/native/external/libunwind/src/x86/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Ginit.c rename to src/native/external/libunwind/src/x86/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Ginit_local.c b/src/native/external/libunwind/src/x86/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Ginit_local.c rename to src/native/external/libunwind/src/x86/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Ginit_remote.c b/src/native/external/libunwind/src/x86/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Ginit_remote.c rename to src/native/external/libunwind/src/x86/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gos-freebsd.c b/src/native/external/libunwind/src/x86/Gos-freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gos-freebsd.c rename to src/native/external/libunwind/src/x86/Gos-freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gos-linux.c b/src/native/external/libunwind/src/x86/Gos-linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gos-linux.c rename to src/native/external/libunwind/src/x86/Gos-linux.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Greg_states_iterate.c b/src/native/external/libunwind/src/x86/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Greg_states_iterate.c rename to src/native/external/libunwind/src/x86/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gregs.c b/src/native/external/libunwind/src/x86/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gregs.c rename to src/native/external/libunwind/src/x86/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gresume.c b/src/native/external/libunwind/src/x86/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gresume.c rename to src/native/external/libunwind/src/x86/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Gstep.c b/src/native/external/libunwind/src/x86/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Gstep.c rename to src/native/external/libunwind/src/x86/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lapply_reg_state.c b/src/native/external/libunwind/src/x86/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lapply_reg_state.c rename to src/native/external/libunwind/src/x86/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lcreate_addr_space.c b/src/native/external/libunwind/src/x86/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lcreate_addr_space.c rename to src/native/external/libunwind/src/x86/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lget_proc_info.c b/src/native/external/libunwind/src/x86/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lget_proc_info.c rename to src/native/external/libunwind/src/x86/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lget_save_loc.c b/src/native/external/libunwind/src/x86/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lget_save_loc.c rename to src/native/external/libunwind/src/x86/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lglobal.c b/src/native/external/libunwind/src/x86/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lglobal.c rename to src/native/external/libunwind/src/x86/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Linit.c b/src/native/external/libunwind/src/x86/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Linit.c rename to src/native/external/libunwind/src/x86/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Linit_local.c b/src/native/external/libunwind/src/x86/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Linit_local.c rename to src/native/external/libunwind/src/x86/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Linit_remote.c b/src/native/external/libunwind/src/x86/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Linit_remote.c rename to src/native/external/libunwind/src/x86/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Los-freebsd.c b/src/native/external/libunwind/src/x86/Los-freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Los-freebsd.c rename to src/native/external/libunwind/src/x86/Los-freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Los-linux.c b/src/native/external/libunwind/src/x86/Los-linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Los-linux.c rename to src/native/external/libunwind/src/x86/Los-linux.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lreg_states_iterate.c b/src/native/external/libunwind/src/x86/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lreg_states_iterate.c rename to src/native/external/libunwind/src/x86/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lregs.c b/src/native/external/libunwind/src/x86/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lregs.c rename to src/native/external/libunwind/src/x86/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lresume.c b/src/native/external/libunwind/src/x86/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lresume.c rename to src/native/external/libunwind/src/x86/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/Lstep.c b/src/native/external/libunwind/src/x86/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/Lstep.c rename to src/native/external/libunwind/src/x86/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/getcontext-freebsd.S b/src/native/external/libunwind/src/x86/getcontext-freebsd.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/getcontext-freebsd.S rename to src/native/external/libunwind/src/x86/getcontext-freebsd.S diff --git a/src/coreclr/pal/src/libunwind/src/x86/getcontext-linux.S b/src/native/external/libunwind/src/x86/getcontext-linux.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/getcontext-linux.S rename to src/native/external/libunwind/src/x86/getcontext-linux.S diff --git a/src/coreclr/pal/src/libunwind/src/x86/init.h b/src/native/external/libunwind/src/x86/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/init.h rename to src/native/external/libunwind/src/x86/init.h diff --git a/src/coreclr/pal/src/libunwind/src/x86/is_fpreg.c b/src/native/external/libunwind/src/x86/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/is_fpreg.c rename to src/native/external/libunwind/src/x86/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/longjmp.S b/src/native/external/libunwind/src/x86/longjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/longjmp.S rename to src/native/external/libunwind/src/x86/longjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/x86/offsets.h b/src/native/external/libunwind/src/x86/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/offsets.h rename to src/native/external/libunwind/src/x86/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/x86/regname.c b/src/native/external/libunwind/src/x86/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/regname.c rename to src/native/external/libunwind/src/x86/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/x86/siglongjmp.S b/src/native/external/libunwind/src/x86/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/siglongjmp.S rename to src/native/external/libunwind/src/x86/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/x86/unwind_i.h b/src/native/external/libunwind/src/x86/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86/unwind_i.h rename to src/native/external/libunwind/src/x86/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gapply_reg_state.c b/src/native/external/libunwind/src/x86_64/Gapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gapply_reg_state.c rename to src/native/external/libunwind/src/x86_64/Gapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gcreate_addr_space.c b/src/native/external/libunwind/src/x86_64/Gcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gcreate_addr_space.c rename to src/native/external/libunwind/src/x86_64/Gcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gget_proc_info.c b/src/native/external/libunwind/src/x86_64/Gget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gget_proc_info.c rename to src/native/external/libunwind/src/x86_64/Gget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gget_save_loc.c b/src/native/external/libunwind/src/x86_64/Gget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gget_save_loc.c rename to src/native/external/libunwind/src/x86_64/Gget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gglobal.c b/src/native/external/libunwind/src/x86_64/Gglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gglobal.c rename to src/native/external/libunwind/src/x86_64/Gglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Ginit.c b/src/native/external/libunwind/src/x86_64/Ginit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Ginit.c rename to src/native/external/libunwind/src/x86_64/Ginit.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Ginit_local.c b/src/native/external/libunwind/src/x86_64/Ginit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Ginit_local.c rename to src/native/external/libunwind/src/x86_64/Ginit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Ginit_remote.c b/src/native/external/libunwind/src/x86_64/Ginit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Ginit_remote.c rename to src/native/external/libunwind/src/x86_64/Ginit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gos-freebsd.c b/src/native/external/libunwind/src/x86_64/Gos-freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gos-freebsd.c rename to src/native/external/libunwind/src/x86_64/Gos-freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gos-linux.c b/src/native/external/libunwind/src/x86_64/Gos-linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gos-linux.c rename to src/native/external/libunwind/src/x86_64/Gos-linux.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gos-solaris.c b/src/native/external/libunwind/src/x86_64/Gos-solaris.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gos-solaris.c rename to src/native/external/libunwind/src/x86_64/Gos-solaris.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Greg_states_iterate.c b/src/native/external/libunwind/src/x86_64/Greg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Greg_states_iterate.c rename to src/native/external/libunwind/src/x86_64/Greg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gregs.c b/src/native/external/libunwind/src/x86_64/Gregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gregs.c rename to src/native/external/libunwind/src/x86_64/Gregs.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gresume.c b/src/native/external/libunwind/src/x86_64/Gresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gresume.c rename to src/native/external/libunwind/src/x86_64/Gresume.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gstash_frame.c b/src/native/external/libunwind/src/x86_64/Gstash_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gstash_frame.c rename to src/native/external/libunwind/src/x86_64/Gstash_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gstep.c b/src/native/external/libunwind/src/x86_64/Gstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gstep.c rename to src/native/external/libunwind/src/x86_64/Gstep.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Gtrace.c b/src/native/external/libunwind/src/x86_64/Gtrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Gtrace.c rename to src/native/external/libunwind/src/x86_64/Gtrace.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lapply_reg_state.c b/src/native/external/libunwind/src/x86_64/Lapply_reg_state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lapply_reg_state.c rename to src/native/external/libunwind/src/x86_64/Lapply_reg_state.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lcreate_addr_space.c b/src/native/external/libunwind/src/x86_64/Lcreate_addr_space.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lcreate_addr_space.c rename to src/native/external/libunwind/src/x86_64/Lcreate_addr_space.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lget_proc_info.c b/src/native/external/libunwind/src/x86_64/Lget_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lget_proc_info.c rename to src/native/external/libunwind/src/x86_64/Lget_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lget_save_loc.c b/src/native/external/libunwind/src/x86_64/Lget_save_loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lget_save_loc.c rename to src/native/external/libunwind/src/x86_64/Lget_save_loc.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lglobal.c b/src/native/external/libunwind/src/x86_64/Lglobal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lglobal.c rename to src/native/external/libunwind/src/x86_64/Lglobal.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Linit.c b/src/native/external/libunwind/src/x86_64/Linit.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Linit.c rename to src/native/external/libunwind/src/x86_64/Linit.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Linit_local.c b/src/native/external/libunwind/src/x86_64/Linit_local.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Linit_local.c rename to src/native/external/libunwind/src/x86_64/Linit_local.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Linit_remote.c b/src/native/external/libunwind/src/x86_64/Linit_remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Linit_remote.c rename to src/native/external/libunwind/src/x86_64/Linit_remote.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Los-freebsd.c b/src/native/external/libunwind/src/x86_64/Los-freebsd.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Los-freebsd.c rename to src/native/external/libunwind/src/x86_64/Los-freebsd.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Los-linux.c b/src/native/external/libunwind/src/x86_64/Los-linux.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Los-linux.c rename to src/native/external/libunwind/src/x86_64/Los-linux.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Los-solaris.c b/src/native/external/libunwind/src/x86_64/Los-solaris.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Los-solaris.c rename to src/native/external/libunwind/src/x86_64/Los-solaris.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lreg_states_iterate.c b/src/native/external/libunwind/src/x86_64/Lreg_states_iterate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lreg_states_iterate.c rename to src/native/external/libunwind/src/x86_64/Lreg_states_iterate.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lregs.c b/src/native/external/libunwind/src/x86_64/Lregs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lregs.c rename to src/native/external/libunwind/src/x86_64/Lregs.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lresume.c b/src/native/external/libunwind/src/x86_64/Lresume.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lresume.c rename to src/native/external/libunwind/src/x86_64/Lresume.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lstash_frame.c b/src/native/external/libunwind/src/x86_64/Lstash_frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lstash_frame.c rename to src/native/external/libunwind/src/x86_64/Lstash_frame.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Lstep.c b/src/native/external/libunwind/src/x86_64/Lstep.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Lstep.c rename to src/native/external/libunwind/src/x86_64/Lstep.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/Ltrace.c b/src/native/external/libunwind/src/x86_64/Ltrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/Ltrace.c rename to src/native/external/libunwind/src/x86_64/Ltrace.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/getcontext.S b/src/native/external/libunwind/src/x86_64/getcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/getcontext.S rename to src/native/external/libunwind/src/x86_64/getcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/init.h b/src/native/external/libunwind/src/x86_64/init.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/init.h rename to src/native/external/libunwind/src/x86_64/init.h diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/is_fpreg.c b/src/native/external/libunwind/src/x86_64/is_fpreg.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/is_fpreg.c rename to src/native/external/libunwind/src/x86_64/is_fpreg.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/longjmp.S b/src/native/external/libunwind/src/x86_64/longjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/longjmp.S rename to src/native/external/libunwind/src/x86_64/longjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/offsets.h b/src/native/external/libunwind/src/x86_64/offsets.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/offsets.h rename to src/native/external/libunwind/src/x86_64/offsets.h diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/regname.c b/src/native/external/libunwind/src/x86_64/regname.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/regname.c rename to src/native/external/libunwind/src/x86_64/regname.c diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/setcontext.S b/src/native/external/libunwind/src/x86_64/setcontext.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/setcontext.S rename to src/native/external/libunwind/src/x86_64/setcontext.S diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/siglongjmp.S b/src/native/external/libunwind/src/x86_64/siglongjmp.S similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/siglongjmp.S rename to src/native/external/libunwind/src/x86_64/siglongjmp.S diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/ucontext_i.h b/src/native/external/libunwind/src/x86_64/ucontext_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/ucontext_i.h rename to src/native/external/libunwind/src/x86_64/ucontext_i.h diff --git a/src/coreclr/pal/src/libunwind/src/x86_64/unwind_i.h b/src/native/external/libunwind/src/x86_64/unwind_i.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/x86_64/unwind_i.h rename to src/native/external/libunwind/src/x86_64/unwind_i.h diff --git a/src/coreclr/pal/src/libunwind/tests/Gia64-test-nat.c b/src/native/external/libunwind/tests/Gia64-test-nat.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gia64-test-nat.c rename to src/native/external/libunwind/tests/Gia64-test-nat.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gia64-test-rbs.c b/src/native/external/libunwind/tests/Gia64-test-rbs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gia64-test-rbs.c rename to src/native/external/libunwind/tests/Gia64-test-rbs.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gia64-test-readonly.c b/src/native/external/libunwind/tests/Gia64-test-readonly.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gia64-test-readonly.c rename to src/native/external/libunwind/tests/Gia64-test-readonly.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gia64-test-stack.c b/src/native/external/libunwind/tests/Gia64-test-stack.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gia64-test-stack.c rename to src/native/external/libunwind/tests/Gia64-test-stack.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gperf-simple.c b/src/native/external/libunwind/tests/Gperf-simple.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gperf-simple.c rename to src/native/external/libunwind/tests/Gperf-simple.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gperf-trace.c b/src/native/external/libunwind/tests/Gperf-trace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gperf-trace.c rename to src/native/external/libunwind/tests/Gperf-trace.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-bt.c b/src/native/external/libunwind/tests/Gtest-bt.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-bt.c rename to src/native/external/libunwind/tests/Gtest-bt.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-concurrent.c b/src/native/external/libunwind/tests/Gtest-concurrent.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-concurrent.c rename to src/native/external/libunwind/tests/Gtest-concurrent.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-dyn1.c b/src/native/external/libunwind/tests/Gtest-dyn1.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-dyn1.c rename to src/native/external/libunwind/tests/Gtest-dyn1.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-exc.c b/src/native/external/libunwind/tests/Gtest-exc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-exc.c rename to src/native/external/libunwind/tests/Gtest-exc.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-init.cxx b/src/native/external/libunwind/tests/Gtest-init.cxx similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-init.cxx rename to src/native/external/libunwind/tests/Gtest-init.cxx diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-nomalloc.c b/src/native/external/libunwind/tests/Gtest-nomalloc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-nomalloc.c rename to src/native/external/libunwind/tests/Gtest-nomalloc.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-resume-sig-rt.c b/src/native/external/libunwind/tests/Gtest-resume-sig-rt.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-resume-sig-rt.c rename to src/native/external/libunwind/tests/Gtest-resume-sig-rt.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-resume-sig.c b/src/native/external/libunwind/tests/Gtest-resume-sig.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-resume-sig.c rename to src/native/external/libunwind/tests/Gtest-resume-sig.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gtest-trace.c b/src/native/external/libunwind/tests/Gtest-trace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gtest-trace.c rename to src/native/external/libunwind/tests/Gtest-trace.c diff --git a/src/coreclr/pal/src/libunwind/tests/Gx64-test-dwarf-expressions.c b/src/native/external/libunwind/tests/Gx64-test-dwarf-expressions.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Gx64-test-dwarf-expressions.c rename to src/native/external/libunwind/tests/Gx64-test-dwarf-expressions.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lia64-test-nat.c b/src/native/external/libunwind/tests/Lia64-test-nat.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lia64-test-nat.c rename to src/native/external/libunwind/tests/Lia64-test-nat.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lia64-test-rbs.c b/src/native/external/libunwind/tests/Lia64-test-rbs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lia64-test-rbs.c rename to src/native/external/libunwind/tests/Lia64-test-rbs.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lia64-test-readonly.c b/src/native/external/libunwind/tests/Lia64-test-readonly.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lia64-test-readonly.c rename to src/native/external/libunwind/tests/Lia64-test-readonly.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lia64-test-stack.c b/src/native/external/libunwind/tests/Lia64-test-stack.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lia64-test-stack.c rename to src/native/external/libunwind/tests/Lia64-test-stack.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lperf-simple.c b/src/native/external/libunwind/tests/Lperf-simple.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lperf-simple.c rename to src/native/external/libunwind/tests/Lperf-simple.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lperf-trace.c b/src/native/external/libunwind/tests/Lperf-trace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lperf-trace.c rename to src/native/external/libunwind/tests/Lperf-trace.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lrs-race.c b/src/native/external/libunwind/tests/Lrs-race.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lrs-race.c rename to src/native/external/libunwind/tests/Lrs-race.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-bt.c b/src/native/external/libunwind/tests/Ltest-bt.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-bt.c rename to src/native/external/libunwind/tests/Ltest-bt.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-concurrent.c b/src/native/external/libunwind/tests/Ltest-concurrent.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-concurrent.c rename to src/native/external/libunwind/tests/Ltest-concurrent.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-cxx-exceptions.cxx b/src/native/external/libunwind/tests/Ltest-cxx-exceptions.cxx similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-cxx-exceptions.cxx rename to src/native/external/libunwind/tests/Ltest-cxx-exceptions.cxx diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-dyn1.c b/src/native/external/libunwind/tests/Ltest-dyn1.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-dyn1.c rename to src/native/external/libunwind/tests/Ltest-dyn1.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-exc.c b/src/native/external/libunwind/tests/Ltest-exc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-exc.c rename to src/native/external/libunwind/tests/Ltest-exc.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-init-local-signal-lib.c b/src/native/external/libunwind/tests/Ltest-init-local-signal-lib.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-init-local-signal-lib.c rename to src/native/external/libunwind/tests/Ltest-init-local-signal-lib.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-init-local-signal.c b/src/native/external/libunwind/tests/Ltest-init-local-signal.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-init-local-signal.c rename to src/native/external/libunwind/tests/Ltest-init-local-signal.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-init.cxx b/src/native/external/libunwind/tests/Ltest-init.cxx similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-init.cxx rename to src/native/external/libunwind/tests/Ltest-init.cxx diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-mem-validate.c b/src/native/external/libunwind/tests/Ltest-mem-validate.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-mem-validate.c rename to src/native/external/libunwind/tests/Ltest-mem-validate.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-nocalloc.c b/src/native/external/libunwind/tests/Ltest-nocalloc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-nocalloc.c rename to src/native/external/libunwind/tests/Ltest-nocalloc.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-nomalloc.c b/src/native/external/libunwind/tests/Ltest-nomalloc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-nomalloc.c rename to src/native/external/libunwind/tests/Ltest-nomalloc.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-resume-sig-rt.c b/src/native/external/libunwind/tests/Ltest-resume-sig-rt.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-resume-sig-rt.c rename to src/native/external/libunwind/tests/Ltest-resume-sig-rt.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-resume-sig.c b/src/native/external/libunwind/tests/Ltest-resume-sig.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-resume-sig.c rename to src/native/external/libunwind/tests/Ltest-resume-sig.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-trace.c b/src/native/external/libunwind/tests/Ltest-trace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-trace.c rename to src/native/external/libunwind/tests/Ltest-trace.c diff --git a/src/coreclr/pal/src/libunwind/tests/Ltest-varargs.c b/src/native/external/libunwind/tests/Ltest-varargs.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Ltest-varargs.c rename to src/native/external/libunwind/tests/Ltest-varargs.c diff --git a/src/coreclr/pal/src/libunwind/tests/Lx64-test-dwarf-expressions.c b/src/native/external/libunwind/tests/Lx64-test-dwarf-expressions.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Lx64-test-dwarf-expressions.c rename to src/native/external/libunwind/tests/Lx64-test-dwarf-expressions.c diff --git a/src/coreclr/pal/src/libunwind/tests/Makefile.am b/src/native/external/libunwind/tests/Makefile.am similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/Makefile.am rename to src/native/external/libunwind/tests/Makefile.am diff --git a/src/coreclr/pal/src/libunwind/tests/check-namespace.sh.in b/src/native/external/libunwind/tests/check-namespace.sh.in similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/check-namespace.sh.in rename to src/native/external/libunwind/tests/check-namespace.sh.in diff --git a/src/coreclr/pal/src/libunwind/tests/crasher.c b/src/native/external/libunwind/tests/crasher.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/crasher.c rename to src/native/external/libunwind/tests/crasher.c diff --git a/src/coreclr/pal/src/libunwind/tests/flush-cache.S b/src/native/external/libunwind/tests/flush-cache.S similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/flush-cache.S rename to src/native/external/libunwind/tests/flush-cache.S diff --git a/src/coreclr/pal/src/libunwind/tests/flush-cache.h b/src/native/external/libunwind/tests/flush-cache.h similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/flush-cache.h rename to src/native/external/libunwind/tests/flush-cache.h diff --git a/src/coreclr/pal/src/libunwind/tests/forker.c b/src/native/external/libunwind/tests/forker.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/forker.c rename to src/native/external/libunwind/tests/forker.c diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-dyn-asm.S b/src/native/external/libunwind/tests/ia64-dyn-asm.S similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-dyn-asm.S rename to src/native/external/libunwind/tests/ia64-dyn-asm.S diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-dyn1.c b/src/native/external/libunwind/tests/ia64-test-dyn1.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-dyn1.c rename to src/native/external/libunwind/tests/ia64-test-dyn1.c diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-nat-asm.S b/src/native/external/libunwind/tests/ia64-test-nat-asm.S similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-nat-asm.S rename to src/native/external/libunwind/tests/ia64-test-nat-asm.S diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-rbs-asm.S b/src/native/external/libunwind/tests/ia64-test-rbs-asm.S similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-rbs-asm.S rename to src/native/external/libunwind/tests/ia64-test-rbs-asm.S diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-rbs.h b/src/native/external/libunwind/tests/ia64-test-rbs.h similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-rbs.h rename to src/native/external/libunwind/tests/ia64-test-rbs.h diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-readonly-asm.S b/src/native/external/libunwind/tests/ia64-test-readonly-asm.S similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-readonly-asm.S rename to src/native/external/libunwind/tests/ia64-test-readonly-asm.S diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-setjmp.c b/src/native/external/libunwind/tests/ia64-test-setjmp.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-setjmp.c rename to src/native/external/libunwind/tests/ia64-test-setjmp.c diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-sig.c b/src/native/external/libunwind/tests/ia64-test-sig.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-sig.c rename to src/native/external/libunwind/tests/ia64-test-sig.c diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-stack-asm.S b/src/native/external/libunwind/tests/ia64-test-stack-asm.S similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-stack-asm.S rename to src/native/external/libunwind/tests/ia64-test-stack-asm.S diff --git a/src/coreclr/pal/src/libunwind/tests/ia64-test-stack.h b/src/native/external/libunwind/tests/ia64-test-stack.h similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ia64-test-stack.h rename to src/native/external/libunwind/tests/ia64-test-stack.h diff --git a/src/coreclr/pal/src/libunwind/tests/ident.c b/src/native/external/libunwind/tests/ident.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ident.c rename to src/native/external/libunwind/tests/ident.c diff --git a/src/coreclr/pal/src/libunwind/tests/mapper.c b/src/native/external/libunwind/tests/mapper.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/mapper.c rename to src/native/external/libunwind/tests/mapper.c diff --git a/src/coreclr/pal/src/libunwind/tests/perf-startup b/src/native/external/libunwind/tests/perf-startup similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/perf-startup rename to src/native/external/libunwind/tests/perf-startup diff --git a/src/coreclr/pal/src/libunwind/tests/ppc64-test-altivec-utils.c b/src/native/external/libunwind/tests/ppc64-test-altivec-utils.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ppc64-test-altivec-utils.c rename to src/native/external/libunwind/tests/ppc64-test-altivec-utils.c diff --git a/src/coreclr/pal/src/libunwind/tests/ppc64-test-altivec.c b/src/native/external/libunwind/tests/ppc64-test-altivec.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/ppc64-test-altivec.c rename to src/native/external/libunwind/tests/ppc64-test-altivec.c diff --git a/src/coreclr/pal/src/libunwind/tests/run-check-namespace b/src/native/external/libunwind/tests/run-check-namespace similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/run-check-namespace rename to src/native/external/libunwind/tests/run-check-namespace diff --git a/src/coreclr/pal/src/libunwind/tests/run-coredump-unwind b/src/native/external/libunwind/tests/run-coredump-unwind similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/run-coredump-unwind rename to src/native/external/libunwind/tests/run-coredump-unwind diff --git a/src/coreclr/pal/src/libunwind/tests/run-coredump-unwind-mdi b/src/native/external/libunwind/tests/run-coredump-unwind-mdi similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/run-coredump-unwind-mdi rename to src/native/external/libunwind/tests/run-coredump-unwind-mdi diff --git a/src/coreclr/pal/src/libunwind/tests/run-ia64-test-dyn1 b/src/native/external/libunwind/tests/run-ia64-test-dyn1 similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/run-ia64-test-dyn1 rename to src/native/external/libunwind/tests/run-ia64-test-dyn1 diff --git a/src/coreclr/pal/src/libunwind/tests/run-ptrace-mapper b/src/native/external/libunwind/tests/run-ptrace-mapper similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/run-ptrace-mapper rename to src/native/external/libunwind/tests/run-ptrace-mapper diff --git a/src/coreclr/pal/src/libunwind/tests/run-ptrace-misc b/src/native/external/libunwind/tests/run-ptrace-misc similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/run-ptrace-misc rename to src/native/external/libunwind/tests/run-ptrace-misc diff --git a/src/coreclr/pal/src/libunwind/tests/test-async-sig.c b/src/native/external/libunwind/tests/test-async-sig.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-async-sig.c rename to src/native/external/libunwind/tests/test-async-sig.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-coredump-unwind.c b/src/native/external/libunwind/tests/test-coredump-unwind.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-coredump-unwind.c rename to src/native/external/libunwind/tests/test-coredump-unwind.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-flush-cache.c b/src/native/external/libunwind/tests/test-flush-cache.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-flush-cache.c rename to src/native/external/libunwind/tests/test-flush-cache.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-init-remote.c b/src/native/external/libunwind/tests/test-init-remote.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-init-remote.c rename to src/native/external/libunwind/tests/test-init-remote.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-mem.c b/src/native/external/libunwind/tests/test-mem.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-mem.c rename to src/native/external/libunwind/tests/test-mem.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-proc-info.c b/src/native/external/libunwind/tests/test-proc-info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-proc-info.c rename to src/native/external/libunwind/tests/test-proc-info.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-ptrace-misc.c b/src/native/external/libunwind/tests/test-ptrace-misc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-ptrace-misc.c rename to src/native/external/libunwind/tests/test-ptrace-misc.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-ptrace.c b/src/native/external/libunwind/tests/test-ptrace.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-ptrace.c rename to src/native/external/libunwind/tests/test-ptrace.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-reg-state.c b/src/native/external/libunwind/tests/test-reg-state.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-reg-state.c rename to src/native/external/libunwind/tests/test-reg-state.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-setjmp.c b/src/native/external/libunwind/tests/test-setjmp.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-setjmp.c rename to src/native/external/libunwind/tests/test-setjmp.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-static-link-gen.c b/src/native/external/libunwind/tests/test-static-link-gen.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-static-link-gen.c rename to src/native/external/libunwind/tests/test-static-link-gen.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-static-link-loc.c b/src/native/external/libunwind/tests/test-static-link-loc.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-static-link-loc.c rename to src/native/external/libunwind/tests/test-static-link-loc.c diff --git a/src/coreclr/pal/src/libunwind/tests/test-strerror.c b/src/native/external/libunwind/tests/test-strerror.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/test-strerror.c rename to src/native/external/libunwind/tests/test-strerror.c diff --git a/src/coreclr/pal/src/libunwind/tests/x64-test-dwarf-expressions.S b/src/native/external/libunwind/tests/x64-test-dwarf-expressions.S similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/x64-test-dwarf-expressions.S rename to src/native/external/libunwind/tests/x64-test-dwarf-expressions.S diff --git a/src/coreclr/pal/src/libunwind/tests/x64-unwind-badjmp-signal-frame.c b/src/native/external/libunwind/tests/x64-unwind-badjmp-signal-frame.c similarity index 100% rename from src/coreclr/pal/src/libunwind/tests/x64-unwind-badjmp-signal-frame.c rename to src/native/external/libunwind/tests/x64-unwind-badjmp-signal-frame.c diff --git a/src/coreclr/pal/src/libunwind/CMakeLists.txt b/src/native/external/libunwind_extras/CMakeLists.txt similarity index 83% rename from src/coreclr/pal/src/libunwind/CMakeLists.txt rename to src/native/external/libunwind_extras/CMakeLists.txt index 168f407e7b80a..3da5f2c71cb46 100644 --- a/src/coreclr/pal/src/libunwind/CMakeLists.txt +++ b/src/native/external/libunwind_extras/CMakeLists.txt @@ -4,12 +4,6 @@ project(unwind) set(CMAKE_INCLUDE_CURRENT_DIR ON) -# define variables for the configure_file below - -set(PKG_MAJOR "1") -set(PKG_MINOR "5") -set(PKG_EXTRA "-rc2") - # The HAVE___THREAD set to 1 causes creation of thread local variable with tls_model("initial-exec") # which is incompatible with usage of the unwind code in a shared library. add_definitions(-DHAVE___THREAD=0) @@ -89,15 +83,6 @@ if(CLR_CMAKE_HOST_UNIX) # Our posix abstraction layer will provide these headers set(HAVE_ELF_H 1) set(HAVE_ENDIAN_H 1) - - # include paths - include_directories(include/tdep) - include_directories(include) - include_directories(${CMAKE_CURRENT_BINARY_DIR}/include/tdep) - include_directories(${CMAKE_CURRENT_BINARY_DIR}/include) - - # files for macos compilation - include_directories(../libunwind_mac/include) endif(CLR_CMAKE_HOST_OSX) endif(CLR_CMAKE_HOST_UNIX) @@ -145,13 +130,13 @@ if(CLR_CMAKE_HOST_WIN32) add_compile_options(/permissive-) # include paths - include_directories(include/tdep) - include_directories(include) - include_directories(${CMAKE_CURRENT_BINARY_DIR}/include/tdep) - include_directories(${CMAKE_CURRENT_BINARY_DIR}/include) + include_directories(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/tdep) + include_directories(${CLR_SRC_NATIVE_DIR}/external/libunwind/include) + include_directories(${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind/include/tdep) + include_directories(${CLR_ARTIFACTS_OBJ_DIR}/external/libunwind/include) # files for cross os compilation - include_directories(include/win) + include_directories(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/win) add_definitions(-D_CRT_DECLARE_NONSTDC_NAMES) @@ -170,8 +155,27 @@ if(CLR_CMAKE_TARGET_ARCH_ARM OR CLR_CMAKE_TARGET_ARCH_ARMV6) # The arm sources include ex_tables.h from include/tdep-arm without going through a redirection # in include/tdep like it works for similar files on other architectures. So we need to add # the include/tdep-arm to include directories - include_directories(include/tdep-arm) + include_directories(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/tdep-arm) endif() include(configure.cmake) -add_subdirectory(src) +include(${CLR_SRC_NATIVE_DIR}/external/libunwind.cmake) + +set(LIBUNWIND_SOURCES + ${LIBUNWIND_SOURCES} + ${CMAKE_CURRENT_LIST_DIR}/oop/_OOP_find_proc_info.c) + +if(CLR_CMAKE_HOST_UNIX) + if(CLR_CMAKE_HOST_OSX) + include_directories(${CMAKE_CURRENT_LIST_DIR}/mac) + add_library(libunwind_dac OBJECT + ${CMAKE_CURRENT_LIST_DIR}/mac/missing-functions.c + ${LIBUNWIND_SOURCES}) + else() + add_library(libunwind OBJECT ${LIBUNWIND_SOURCES}) + endif(CLR_CMAKE_HOST_OSX) +else(CLR_CMAKE_HOST_UNIX) + add_library(libunwind_xdac OBJECT + ${CLR_DIR}/pal/src/exception/remote-unwind.cpp + ${LIBUNWIND_SOURCES}) +endif(CLR_CMAKE_HOST_UNIX) diff --git a/src/coreclr/pal/src/libunwind/config.h.in b/src/native/external/libunwind_extras/config.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind/config.h.in rename to src/native/external/libunwind_extras/config.h.in diff --git a/src/coreclr/pal/src/libunwind/configure.cmake b/src/native/external/libunwind_extras/configure.cmake similarity index 72% rename from src/coreclr/pal/src/libunwind/configure.cmake rename to src/native/external/libunwind_extras/configure.cmake index 00d0d4dff088f..9a29046cbc324 100644 --- a/src/coreclr/pal/src/libunwind/configure.cmake +++ b/src/native/external/libunwind_extras/configure.cmake @@ -1,6 +1,3 @@ -# This is a custom file written for .NET Core's build system - - include(CheckCSourceCompiles) include(CheckIncludeFiles) @@ -13,13 +10,13 @@ if(CLR_CMAKE_HOST_WIN32) # Fake it until support is added check_include_files(stdalign.h HAVE_STDALIGN_H) if (NOT HAVE_STDALIGN_H) - configure_file(include/win/fakestdalign.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/stdalign.h COPYONLY) + configure_file(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/win/fakestdalign.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/stdalign.h COPYONLY) endif (NOT HAVE_STDALIGN_H) # MSVC compiler is currently missing C11 stdatomic.h header check_c_source_compiles("#include void main() { _Atomic int a; }" HAVE_STDATOMIC_H) if (NOT HAVE_STDATOMIC_H) - configure_file(include/win/fakestdatomic.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/stdatomic.h COPYONLY) + configure_file(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/win/fakestdatomic.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/stdatomic.h COPYONLY) endif (NOT HAVE_STDATOMIC_H) # MSVC compiler is currently missing C11 _Thread_local @@ -71,6 +68,6 @@ int main(void) configure_file(${CMAKE_CURRENT_LIST_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/config.h) add_definitions(-DHAVE_CONFIG_H=1) -configure_file(include/libunwind-common.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/libunwind-common.h) -configure_file(include/libunwind.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/libunwind.h) -configure_file(include/tdep/libunwind_i.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/tdep/libunwind_i.h) +configure_file(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/libunwind-common.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/libunwind-common.h) +configure_file(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/libunwind.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/libunwind.h) +configure_file(${CLR_SRC_NATIVE_DIR}/external/libunwind/include/tdep/libunwind_i.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/tdep/libunwind_i.h) diff --git a/src/coreclr/pal/src/libunwind_mac/include/elf.h b/src/native/external/libunwind_extras/mac/elf.h similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/elf.h rename to src/native/external/libunwind_extras/mac/elf.h diff --git a/src/coreclr/pal/src/libunwind_mac/include/endian.h b/src/native/external/libunwind_extras/mac/endian.h similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/endian.h rename to src/native/external/libunwind_extras/mac/endian.h diff --git a/src/coreclr/pal/src/libunwind_mac/include/fakestdalign.h.in b/src/native/external/libunwind_extras/mac/fakestdalign.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/fakestdalign.h.in rename to src/native/external/libunwind_extras/mac/fakestdalign.h.in diff --git a/src/coreclr/pal/src/libunwind_mac/include/fakestdatomic.h.in b/src/native/external/libunwind_extras/mac/fakestdatomic.h.in similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/fakestdatomic.h.in rename to src/native/external/libunwind_extras/mac/fakestdatomic.h.in diff --git a/src/coreclr/pal/src/libunwind_mac/include/freebsd-elf32.h b/src/native/external/libunwind_extras/mac/freebsd-elf32.h similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/freebsd-elf32.h rename to src/native/external/libunwind_extras/mac/freebsd-elf32.h diff --git a/src/coreclr/pal/src/libunwind_mac/include/freebsd-elf64.h b/src/native/external/libunwind_extras/mac/freebsd-elf64.h similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/freebsd-elf64.h rename to src/native/external/libunwind_extras/mac/freebsd-elf64.h diff --git a/src/coreclr/pal/src/libunwind_mac/include/freebsd-elf_common.h b/src/native/external/libunwind_extras/mac/freebsd-elf_common.h similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/freebsd-elf_common.h rename to src/native/external/libunwind_extras/mac/freebsd-elf_common.h diff --git a/src/coreclr/pal/src/libunwind_mac/src/missing-functions.c b/src/native/external/libunwind_extras/mac/missing-functions.c similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/src/missing-functions.c rename to src/native/external/libunwind_extras/mac/missing-functions.c diff --git a/src/coreclr/pal/src/libunwind_mac/include/ucontext.h b/src/native/external/libunwind_extras/mac/ucontext.h similarity index 100% rename from src/coreclr/pal/src/libunwind_mac/include/ucontext.h rename to src/native/external/libunwind_extras/mac/ucontext.h diff --git a/src/coreclr/pal/src/libunwind/src/oop/_OOP_find_proc_info.c b/src/native/external/libunwind_extras/oop/_OOP_find_proc_info.c similarity index 100% rename from src/coreclr/pal/src/libunwind/src/oop/_OOP_find_proc_info.c rename to src/native/external/libunwind_extras/oop/_OOP_find_proc_info.c diff --git a/src/coreclr/pal/src/libunwind/src/oop/_OOP_internal.h b/src/native/external/libunwind_extras/oop/_OOP_internal.h similarity index 100% rename from src/coreclr/pal/src/libunwind/src/oop/_OOP_internal.h rename to src/native/external/libunwind_extras/oop/_OOP_internal.h