| 588 | } |
| 589 | |
| 590 | static void xh_elf_dump_programheader(xh_elf_t *self) |
| 591 | { |
| 592 | ElfW(Phdr) *phdr = self->phdr; |
| 593 | size_t i; |
| 594 | |
| 595 | XH_LOG_DEBUG("Program Headers:\n"); |
| 596 | XH_LOG_DEBUG(" %-8s " \ |
| 597 | "%-"XH_UTIL_FMT_FIXED_S" " \ |
| 598 | "%-"XH_UTIL_FMT_FIXED_S" " \ |
| 599 | "%-"XH_UTIL_FMT_FIXED_S" " \ |
| 600 | "%-"XH_UTIL_FMT_FIXED_S" " \ |
| 601 | "%-"XH_UTIL_FMT_FIXED_S" " \ |
| 602 | "%-8s " \ |
| 603 | "%-s\n", |
| 604 | "Type", |
| 605 | "Offset", |
| 606 | "VirtAddr", |
| 607 | "PhysAddr", |
| 608 | "FileSiz", |
| 609 | "MemSiz", |
| 610 | "Flg", |
| 611 | "Align"); |
| 612 | for(i = 0; i < self->ehdr->e_phnum; i++, phdr++) |
| 613 | { |
| 614 | XH_LOG_DEBUG(" %-8x " \ |
| 615 | "%."XH_UTIL_FMT_FIXED_X" " \ |
| 616 | "%."XH_UTIL_FMT_FIXED_X" " \ |
| 617 | "%."XH_UTIL_FMT_FIXED_X" " \ |
| 618 | "%."XH_UTIL_FMT_FIXED_X" " \ |
| 619 | "%."XH_UTIL_FMT_FIXED_X" " \ |
| 620 | "%-8x " \ |
| 621 | "%"XH_UTIL_FMT_X"\n", |
| 622 | phdr->p_type, |
| 623 | phdr->p_offset, |
| 624 | phdr->p_vaddr, |
| 625 | phdr->p_paddr, |
| 626 | phdr->p_filesz, |
| 627 | phdr->p_memsz, |
| 628 | phdr->p_flags, |
| 629 | phdr->p_align); |
| 630 | } |
| 631 | } |
| 632 | |
| 633 | static void xh_elf_dump_dynamic(xh_elf_t *self) |
| 634 | { |