Build failures occured primarily due to - attempts to build the 32bit powerpc code as 64bit and vise versa. - solved by changing how configure checks for a 64bit compilation - libunwind-coredump lacking ppc support. - solved by making coredump an optional component and disabling it on everything but x86*.
Runtime failures occured due to: - lack of actual ptrace support (no register offsets defined). - tdep_get_func_addr using access_mem with a NULL argument. Still not quite right: - elf_w(get_proc_name_in_image)() calls elf_w(lookup_symbol)() calls tdep_get_func_addr() calls _UPT_access_mem. In order to properly call _UPT_access_mem, we need a cursor (or some other way to get the UPT_state). get_proc_name_in_image() is called with a unw_addr_space_t, so right now we have no way to get UPT_state. The result right now is that calling elf_w(get_proc_name_in_image)() on PPC64 via _UPT always results in -UNW_EINVAL. Note: I reverted 8203c955c8bde94bba609d20abb39c576acf3e38 to build these changes on top of the current tree. Since v2: - Remove AX_ARG_ENABLE - s/#/dnl/ - Fixed PPC register offsets for UPT. - Add some register names & generally improve Debug prints. - Move configure.in to configure.ac (Which is "prefered" over configure.in) Since v1: - removed empty lines - fixed libunwind-coredump build not building by default on x86* - replace AC_HELP_STRING with AS_HELP_STRING - factor out common AC_ARG_ENABLE useage into AX_ARG_ENABLE - Add ptrace register offsets for ppc64 & ppc32 _______________________________________________ Libunwind-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/libunwind-devel
