summaryrefslogtreecommitdiff
path: root/gdb/infcall.c
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@gnu.org>2005-09-02 19:02:46 +0000
committerMark Kettenis <kettenis@gnu.org>2005-09-02 19:02:46 +0000
commit56f2bb16b42f2a9de2dcb2c6f460726e3b1e3e6a (patch)
tree6ef520599e5b04b557d34b3a6baffd6174d17f7d /gdb/infcall.c
parent4d8b953ff42d3cfb4f9dfb1c460d29dc06ba584c (diff)
downloadgdb-56f2bb16b42f2a9de2dcb2c6f460726e3b1e3e6a.tar.gz
* infcall.c (call_function_by_hand): Remove code handling
deprecated_push_arguments. Bail out early if push_dummy_call isn't available. * gdbarch.sh (deprecated_push_arguments): Delete. Adjust a few comments accordingly. * gdbarch.h, gdbarch.c: Regenerate.
Diffstat (limited to 'gdb/infcall.c')
-rw-r--r--gdb/infcall.c19
1 files changed, 6 insertions, 13 deletions
diff --git a/gdb/infcall.c b/gdb/infcall.c
index 54d40d0c40a..9c104ad0fcc 100644
--- a/gdb/infcall.c
+++ b/gdb/infcall.c
@@ -333,6 +333,9 @@ call_function_by_hand (struct value *function, int nargs, struct value **args)
if (!target_has_execution)
noprocess ();
+ if (!gdbarch_push_dummy_call_p (current_gdbarch))
+ error (_("This target does not support function calls"));
+
/* Create a cleanup chain that contains the retbuf (buffer
containing the register values). This chain is create BEFORE the
inf_status chain so that the inferior status can cleaned up
@@ -653,19 +656,9 @@ You must use a pointer to function type variable. Command ignored."), arg_name);
/* Create the dummy stack frame. Pass in the call dummy address as,
presumably, the ABI code knows where, in the call dummy, the
return address should be pointed. */
- if (gdbarch_push_dummy_call_p (current_gdbarch))
- /* When there is no push_dummy_call method, should this code
- simply error out. That would the implementation of this method
- for all ABIs (which is probably a good thing). */
- sp = gdbarch_push_dummy_call (current_gdbarch, function, current_regcache,
- bp_addr, nargs, args, sp, struct_return,
- struct_addr);
- else if (DEPRECATED_PUSH_ARGUMENTS_P ())
- /* Keep old targets working. */
- sp = DEPRECATED_PUSH_ARGUMENTS (nargs, args, sp, struct_return,
- struct_addr);
- else
- error (_("This target does not support function calls"));
+ sp = gdbarch_push_dummy_call (current_gdbarch, function, current_regcache,
+ bp_addr, nargs, args, sp, struct_return,
+ struct_addr);
/* Set up a frame ID for the dummy frame so we can pass it to
set_momentary_breakpoint. We need to give the breakpoint a frame