Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [rfa/rfc:ppc] svr4 and not just ELFOSABI_LINUX for function parsing et.al.
@ 2002-04-21 21:29 Andrew Cagney
  2002-04-22  0:59 ` Kevin Buettner
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Cagney @ 2002-04-21 21:29 UTC (permalink / raw)
  To: gdb-patches

[-- Attachment #1: Type: text/plain, Size: 1224 bytes --]

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



[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 872 bytes --]

2002-04-21  Andrew Cagney  <ac131313@redhat.com>

	* rs6000-tdep.c (rs6000_gdbarch_init): Set
	frameless_function_invocation et.al. when sysv_abi and not just
	ELFOSABI_LINUX.

Index: rs6000-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/rs6000-tdep.c,v
retrieving revision 1.59
diff -u -r1.59 rs6000-tdep.c
--- rs6000-tdep.c	20 Apr 2002 03:09:28 -0000	1.59
+++ rs6000-tdep.c	22 Apr 2002 04:17:40 -0000
@@ -2720,7 +2720,7 @@
   set_gdbarch_frame_chain_valid (gdbarch, file_frame_chain_valid);
   /* Note: kevinb/2002-04-12: See note above regarding *_push_arguments().
      The same remarks hold for the methods below.  */
-  if (osabi == ELFOSABI_LINUX && wordsize == 4)
+  if (sysv_abi && wordsize == 4)
     {
       set_gdbarch_frameless_function_invocation (gdbarch,
 	ppc_linux_frameless_function_invocation);

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-04-26  4:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-21 21:29 [rfa/rfc:ppc] svr4 and not just ELFOSABI_LINUX for function parsing et.al Andrew Cagney
2002-04-22  0:59 ` Kevin Buettner
2002-04-25 21:31   ` Andrew Cagney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox