Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Randolph Chung <tausq@debian.org>
To: gdb-patches@sources.redhat.com
Subject: [patch/resend/rfa] (1/4) Cleanup static function usage in hppa-tdep.c
Date: Wed, 14 Apr 2004 06:24:00 -0000	[thread overview]
Message-ID: <20040414062438.GJ31873@tausq.org> (raw)

Resending some patches from last week. I've cleaned them up based on the
feedback and reorganized for easier review (I hope). ok to checkin?

This (and the other 3 patches) were tested against hppa2.0-hp-hpux11.11
and hppa-linux (gcc-3.3 on both targets).

Sumamry:
1/4: simple cleanups of hppa-tdep.c; add use_struct_convention to
     gdbarch.
2/4: Move important bits out of tm-hppa.h into hppa-tdep.h; remove
     unneeded contents.
3/4: DEPRECATED_CLEAN_UP_REGISTER_VALUE is no longer needed, remove.
4/4: Make the frame unwinder work for all hppa elf targets, not just
     64-bit ones.

thanks
randolph

2004-04-13  Randolph Chung  <tausq@debian.org>

	* hppa-tdep.c (hppa_reg_struct_has_addr, hppa_skip_prologue,
	hppa_skip_trampoline_code, hppa_in_solib_call_trampoline,
	hppa_in_solib_return_trampoline, hppa_cannot_store_register,
	hppa_smash_text_address, hppa_target_read_pc, hppa_target_write_pc):
	Remove forward declaration and make static.
	(hppa_reg_struct_has_addr): Rename to hppa_use_struct_convention.
	(hppa_gdbarch_init): Set use_struct_convention.

Index: hppa-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/hppa-tdep.c,v
retrieving revision 1.143
diff -u -p -r1.143 hppa-tdep.c
--- hppa-tdep.c	11 Apr 2004 04:20:51 -0000	1.143
+++ hppa-tdep.c	14 Apr 2004 05:01:21 -0000
@@ -121,17 +123,8 @@ static void internalize_unwinds (struct 
 static void record_text_segment_lowaddr (bfd *, asection *, void *);
 /* FIXME: brobecker 2002-11-07: We will likely be able to make the
    following functions static, once we hppa is partially multiarched.  */
-int hppa_reg_struct_has_addr (int gcc_p, struct type *type);
-CORE_ADDR hppa_skip_prologue (CORE_ADDR pc);
-CORE_ADDR hppa_skip_trampoline_code (CORE_ADDR pc);
-int hppa_in_solib_call_trampoline (CORE_ADDR pc, char *name);
-int hppa_in_solib_return_trampoline (CORE_ADDR pc, char *name);
 int hppa_pc_requires_run_before_use (CORE_ADDR pc);
 int hppa_instruction_nullified (void);
-int hppa_cannot_store_register (int regnum);
-CORE_ADDR hppa_smash_text_address (CORE_ADDR addr);
-CORE_ADDR hppa_target_read_pc (ptid_t ptid);
-void hppa_target_write_pc (CORE_ADDR v, ptid_t ptid);
 
 /* Handle 32/64-bit struct return conventions.  */
 
@@ -1024,7 +1001,7 @@ hppa64_frame_align (struct gdbarch *gdba
 /* Get the PC from %r31 if currently in a syscall.  Also mask out privilege
    bits.  */
 
-CORE_ADDR
+static CORE_ADDR
 hppa_target_read_pc (ptid_t ptid)
 {
   int flags = read_register_pid (FLAGS_REGNUM, ptid);
@@ -1041,7 +1018,7 @@ hppa_target_read_pc (ptid_t ptid)
 /* Write out the PC.  If currently in a syscall, then also write the new
    PC value into %r31.  */
 
-void
+static void
 hppa_target_write_pc (CORE_ADDR v, ptid_t ptid)
 {
   int flags = read_register_pid (FLAGS_REGNUM, ptid);
@@ -1098,7 +1075,7 @@ hppa_alignof (struct type *type)
    Note we return one for *any* call trampoline (long-call, arg-reloc), not
    just shared library trampolines (import, export).  */
 
-int
+static int
 hppa_in_solib_call_trampoline (CORE_ADDR pc, char *name)
 {
   struct minimal_symbol *minsym;
@@ -1259,7 +1236,7 @@ hppa_in_solib_call_trampoline (CORE_ADDR
    Note we return one for *any* call trampoline (long-call, arg-reloc), not
    just shared library trampolines (import, export).  */
 
-int
+static int
 hppa_in_solib_return_trampoline (CORE_ADDR pc, char *name)
 {
   struct unwind_table_entry *u;
@@ -1332,7 +1309,7 @@ hppa_in_solib_return_trampoline (CORE_AD
    calling an argument relocation stub.  It even handles some stubs
    used in dynamic executables.  */
 
-CORE_ADDR
+static CORE_ADDR
 hppa_skip_trampoline_code (CORE_ADDR pc)
 {
   long orig_pc = pc;
@@ -2014,7 +1991,7 @@ after_prologue (CORE_ADDR pc)
    Currently we must not skip more on the alpha, but we might the lenient
    stuff some day.  */
 
-CORE_ADDR
+static CORE_ADDR
 hppa_skip_prologue (CORE_ADDR pc)
 {
   unsigned long inst;
@@ -2458,8 +2429,8 @@ hppa_skip_permanent_breakpoint (void)
   /* We can leave the tail's space the same, since there's no jump.  */
 }
 
-int
-hppa_reg_struct_has_addr (int gcc_p, struct type *type)
+static int
+hppa_use_struct_convention (int gcc_p, struct type *type)
 {
   /* On the PA, any pass-by-value structure > 8 bytes is actually passed
      via a pointer regardless of its type or the compiler used.  */
@@ -2533,7 +2504,7 @@ hppa64_register_type (struct gdbarch *gd
 /* Return True if REGNUM is not a register available to the user
    through ptrace().  */
 
-int
+static int
 hppa_cannot_store_register (int regnum)
 {
   return (regnum == 0
@@ -2543,7 +2514,7 @@ hppa_cannot_store_register (int regnum)
 
 }
 
-CORE_ADDR
+static CORE_ADDR
 hppa_smash_text_address (CORE_ADDR addr)
 {
   /* The low two bits of the PC on the PA contain the privilege level.
@@ -2678,6 +2658,8 @@ hppa_gdbarch_init (struct gdbarch_info i
   set_gdbarch_read_pc (gdbarch, hppa_target_read_pc);
   set_gdbarch_write_pc (gdbarch, hppa_target_write_pc);
 
+  set_gdbarch_use_struct_convention (gdbarch, hppa_use_struct_convention);
+
   /* Helper for function argument information.  */
   set_gdbarch_fetch_pointer_argument (gdbarch, hppa_fetch_pointer_argument);
 
-- 
Randolph Chung
Debian GNU/Linux Developer, hppa/ia64 ports
http://www.tausq.org/


             reply	other threads:[~2004-04-14  6:24 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-14  6:24 Randolph Chung [this message]
2004-04-15 16:04 ` Andrew Cagney
2004-04-17 16:23   ` Randolph Chung

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=20040414062438.GJ31873@tausq.org \
    --to=tausq@debian.org \
    --cc=gdb-patches@sources.redhat.com \
    /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