aboutsummaryrefslogtreecommitdiff
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
commita86c5fc9d872cff24a45c4e19f4cf1e8c9df4c16 (patch)
tree19950754d0d68d5185c5578c189b03249cb6f842 /gdb/infcall.c
parentc66a62d36f92801c767d0f8e36119a32783d6201 (diff)
downloadgdb-a86c5fc9d872cff24a45c4e19f4cf1e8c9df4c16.zip
gdb-a86c5fc9d872cff24a45c4e19f4cf1e8c9df4c16.tar.gz
gdb-a86c5fc9d872cff24a45c4e19f4cf1e8c9df4c16.tar.bz2
* 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 54d40d0..9c104ad 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