Hello, I was finding that for a non-GNU/Linux SVR4 PPC platform malloc() was failing because RS6000 TOC func-ptr code was being selected: /* Handle RS/6000 function pointers. */ set_gdbarch_convert_from_func_ptr_addr (gdbarch, rs6000_convert_from_func_ptr_addr); the attached patch changes things to select all of: set_gdbarch_frameless_function_invocation (gdbarch, ppc_linux_frameless_function_invocation); set_gdbarch_frame_chain (gdbarch, ppc_linux_frame_chain); set_gdbarch_frame_saved_pc (gdbarch, ppc_linux_frame_saved_pc); set_gdbarch_frame_init_saved_regs (gdbarch, ppc_linux_frame_init_saved_regs); set_gdbarch_init_extra_frame_info (gdbarch, ppc_linux_init_extra_frame_info); set_gdbarch_memory_remove_breakpoint (gdbarch, ppc_linux_memory_remove_breakpoint); set_solib_svr4_fetch_link_map_offsets (gdbarch, ppc_linux_svr4_fetch_link_map_offsets); when svr4_abi. It certainly improves things (fails went from 136 -> 80) but I'm not 100% certain if this is correct for all the above - I suspect it is overkill :-/ Andrew