Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: gdb-patches@sourceware.org
Subject: [COMMIT] Disentangle SPARC Linux from Solaris
Date: Fri, 22 Apr 2005 19:07:00 -0000	[thread overview]
Message-ID: <200504221907.j3MJ7APM000140@elgar.sibelius.xs4all.nl> (raw)

It doesn't really make sense anymore for the Linux targets to be based
on thee Solaris targets.

Committed,

Mark


Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>

	* sparc-linux-tdep.c: Update copyright year.
	(sparc32_linux_init_abi): Set skip_trampoline_code and
	solib_svr4_fetch_link_map_offsets.  Set TDEP->plt_entry_size.
	Don't set software_single_step and don't call
	sparc32_sol2_init_abi.
	* sparc64-linux-tdep.c: Update copyright year.
	(sparc64_linux_init_abi): Set skip_trampoline_code and
	solib_svr4_fetch_link_map_offsets.  Set TDEP->plt_entry_size.
	Don't set software_single_step and don't call
	sparc64_sol2_init_abi.

Index: sparc-linux-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sparc-linux-tdep.c,v
retrieving revision 1.11
diff -u -p -r1.11 sparc-linux-tdep.c
--- sparc-linux-tdep.c 21 Apr 2005 22:04:04 -0000 1.11
+++ sparc-linux-tdep.c 22 Apr 2005 19:04:19 -0000
@@ -1,6 +1,6 @@
 /* Target-dependent code for GNU/Linux SPARC.
 
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -144,14 +144,19 @@ sparc32_linux_sigframe_init (const struc
 static void
 sparc32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 {
+  struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
+
   tramp_frame_prepend_unwinder (gdbarch, &sparc32_linux_sigframe);
   tramp_frame_prepend_unwinder (gdbarch, &sparc32_linux_rt_sigframe);
 
-  /* GNU/Linux is very similar to Solaris ...  */
-  sparc32_sol2_init_abi (info, gdbarch);
-
-  /* ... but doesn't have kernel-assisted single-stepping support.  */
-  set_gdbarch_software_single_step (gdbarch, sparc_software_single_step);
+  /* GNU/Linux has SVR4-style shared libraries...  */
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
+  set_solib_svr4_fetch_link_map_offsets
+    (gdbarch, svr4_ilp32_fetch_link_map_offsets);
+
+  /* ...which means that we need some special handling when doing
+     prologue analysis.  */
+  tdep->plt_entry_size = 12;
 
   /* GNU/Linux doesn't support the 128-bit `long double' from the psABI.  */
   set_gdbarch_long_double_bit (gdbarch, 64);
Index: sparc64-linux-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sparc64-linux-tdep.c,v
retrieving revision 1.6
diff -u -p -r1.6 sparc64-linux-tdep.c
--- sparc64-linux-tdep.c 21 Apr 2005 22:04:04 -0000 1.6
+++ sparc64-linux-tdep.c 22 Apr 2005 19:04:20 -0000
@@ -1,6 +1,6 @@
 /* Target-dependent code for GNU/Linux UltraSPARC.
 
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -106,11 +106,14 @@ sparc64_linux_init_abi (struct gdbarch_i
 
   tramp_frame_prepend_unwinder (gdbarch, &sparc64_linux_rt_sigframe);
 
-  /* GNU/Linux is very similar to Solaris ...  */
-  sparc64_sol2_init_abi (info, gdbarch);
-
-  /* ... but doesn't have kernel-assisted single-stepping support.  */
-  set_gdbarch_software_single_step (gdbarch, sparc_software_single_step);
+  /* GNU/Linux has SVR4-style shared libraries...  */
+  set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
+  set_solib_svr4_fetch_link_map_offsets
+    (gdbarch, svr4_lp64_fetch_link_map_offsets);
+
+  /* ...which means that we need some special handling when doing
+     prologue analysis.  */
+  tdep->plt_entry_size = 16;
 
   /* Enable TLS support.  */
   set_gdbarch_fetch_tls_load_module_address (gdbarch,


             reply	other threads:[~2005-04-22 19:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-22 19:07 Mark Kettenis [this message]
2005-04-22 19:12 ` David S. Miller
2005-04-22 20:00   ` Mark Kettenis
2005-04-22 22:31     ` David S. Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200504221907.j3MJ7APM000140@elgar.sibelius.xs4all.nl \
    --to=mark.kettenis@xs4all.nl \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox