From 9ed9c3b5e5e94033adf149e7493997e31b9a44dd Mon Sep 17 00:00:00 2001 From: Viktor Kutuzov Date: Wed, 6 May 2015 10:32:28 +0000 Subject: Fix libunwind to build on FreeBSD Differential Revision: http://reviews.llvm.org/D9272 git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@236585 91177308-0d34-0410-b5e6-96231b3b80d8 --- src/AddressSpace.hpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/AddressSpace.hpp b/src/AddressSpace.hpp index e8acb46..4d74129 100644 --- a/src/AddressSpace.hpp +++ b/src/AddressSpace.hpp @@ -395,8 +395,15 @@ inline bool LocalAddressSpace::findUnwindSections(pint_t targetAddr, return false; } - for (ElfW(Half) i = 0; i < pinfo->dlpi_phnum; i++) { - const ElfW(Phdr) *phdr = &pinfo->dlpi_phdr[i]; +#if !defined(Elf_Half) + typedef ElfW(Half) Elf_Half; +#endif +#if !defined(Elf_Phdr) + typedef ElfW(Phdr) Elf_Phdr; +#endif + + for (Elf_Half i = 0; i < pinfo->dlpi_phnum; i++) { + const Elf_Phdr *phdr = &pinfo->dlpi_phdr[i]; if (phdr->p_type == PT_LOAD) { uintptr_t begin = pinfo->dlpi_addr + phdr->p_vaddr; uintptr_t end = begin + phdr->p_memsz; -- cgit v1.2.3