Fix libunwind to build on FreeBSD

Differential Revision: http://reviews.llvm.org/D9272

llvm-svn: 236585
This commit is contained in:
Viktor Kutuzov 2015-05-06 10:32:28 +00:00
parent 9f1fb9d1ef
commit 66f711d185
1 changed files with 9 additions and 2 deletions

View File

@ -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;