From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: gdb-patches@sourceware.org
Subject: [PATCH] Get rid of generic_push_dummy_code
Date: Sun, 14 Sep 2008 20:49:00 -0000 [thread overview]
Message-ID: <200809142049.m8EKn3Df003411@brahms.sibelius.xs4all.nl> (raw)
Nothing uses this function anymore, and it uses gdbarch_frame_align()
in a somewhat bogus way since it assumes it is suitable for
instruction alignment.
ok?
Index: ChangeLog
from Mark Kettenis <kettenis@gnu.org>
* infcall.c (generic_push_dummy_code): Remove.
(push_dummy_code): Unconditionally call gdbarch_push_dummy_code.
Index: infcall.c
===================================================================
RCS file: /cvs/src/src/gdb/infcall.c,v
retrieving revision 1.103
diff -u -p -r1.103 infcall.c
--- infcall.c 11 Sep 2008 14:25:04 -0000 1.103
+++ infcall.c 14 Sep 2008 20:46:06 -0000
@@ -270,43 +270,6 @@ breakpoint_auto_delete_contents (void *a
breakpoint_auto_delete (inferior_thread ()->stop_bpstat);
}
-static CORE_ADDR
-generic_push_dummy_code (struct gdbarch *gdbarch,
- CORE_ADDR sp, CORE_ADDR funaddr,
- struct value **args, int nargs,
- struct type *value_type,
- CORE_ADDR *real_pc, CORE_ADDR *bp_addr,
- struct regcache *regcache)
-{
- /* Something here to findout the size of a breakpoint and then
- allocate space for it on the stack. */
- int bplen;
- /* This code assumes frame align. */
- gdb_assert (gdbarch_frame_align_p (gdbarch));
- /* Force the stack's alignment. The intent is to ensure that the SP
- is aligned to at least a breakpoint instruction's boundary. */
- sp = gdbarch_frame_align (gdbarch, sp);
- /* Allocate space for, and then position the breakpoint on the
- stack. */
- if (gdbarch_inner_than (gdbarch, 1, 2))
- {
- CORE_ADDR bppc = sp;
- gdbarch_breakpoint_from_pc (gdbarch, &bppc, &bplen);
- sp = gdbarch_frame_align (gdbarch, sp - bplen);
- (*bp_addr) = sp;
- /* Should the breakpoint size/location be re-computed here? */
- }
- else
- {
- (*bp_addr) = sp;
- gdbarch_breakpoint_from_pc (gdbarch, bp_addr, &bplen);
- sp = gdbarch_frame_align (gdbarch, sp + bplen);
- }
- /* Inferior resumes at the function entry point. */
- (*real_pc) = funaddr;
- return sp;
-}
-
/* For CALL_DUMMY_ON_STACK, push a breakpoint sequence that the called
function returns to. */
@@ -318,14 +281,11 @@ push_dummy_code (struct gdbarch *gdbarch
CORE_ADDR *real_pc, CORE_ADDR *bp_addr,
struct regcache *regcache)
{
- if (gdbarch_push_dummy_code_p (gdbarch))
- return gdbarch_push_dummy_code (gdbarch, sp, funaddr,
- args, nargs, value_type, real_pc, bp_addr,
- regcache);
- else
- return generic_push_dummy_code (gdbarch, sp, funaddr,
- args, nargs, value_type, real_pc, bp_addr,
- regcache);
+ gdb_assert (gdbarch_push_dummy_code_p (gdbarch));
+
+ return gdbarch_push_dummy_code (gdbarch, sp, funaddr,
+ args, nargs, value_type, real_pc, bp_addr,
+ regcache);
}
/* All this stuff with a dummy frame may seem unnecessarily complicated
next reply other threads:[~2008-09-14 20:49 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-14 20:49 Mark Kettenis [this message]
2008-09-15 3:21 ` Daniel Jacobowitz
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=200809142049.m8EKn3Df003411@brahms.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