This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Andrew Cagney <ac131313@redhat.com> writes:
|> @@ -649,7 +663,13 @@ |> return-address register as appropriate. Formerly this has been |> done in PUSH_ARGUMENTS, but that's overloading its |> functionality a bit, so I'm making it explicit to do it here. */ |> - sp = DEPRECATED_PUSH_RETURN_ADDRESS (real_pc, sp); |> + /* NOTE: cagney/2003-04-22: The first parameter ("real_pc") has |> + been replaced with zero, it turns out that no implementation |> + used that parameter. This occured because the value being
This is obviously wrong. See ia64_push_return_address. Fixes PR1256 and most testsuite failures (there are a few new failures of things that weren't tested before, especially backtraces from call dummies are broken).
static CORE_ADDR ia64_push_return_address (CORE_ADDR pc, CORE_ADDR sp) { CORE_ADDR global_pointer = FIND_GLOBAL_POINTER (pc);
if (global_pointer != 0) write_register (IA64_GR1_REGNUM, global_pointer);
write_register (IA64_BR0_REGNUM, CALL_DUMMY_ADDRESS ()); return sp; }
Andreas.
2003-06-27 Andreas Schwab <schwab@suse.de>
* infcall.c (call_function_by_hand): Partially revert change of 2003-04-22: do pass real_pc to DEPRECATED_PUSH_RETURN_ADDRESS.
--- gdb/infcall.c.~1.17.~ 2003-06-20 11:44:27.000000000 +0200
+++ gdb/infcall.c 2003-06-27 21:58:41.000000000 +0200
@@ -768,13 +768,7 @@ You must use a pointer to function type return-address register as appropriate. Formerly this has been
done in PUSH_ARGUMENTS, but that's overloading its
functionality a bit, so I'm making it explicit to do it here. */
- /* NOTE: cagney/2003-04-22: The first parameter ("real_pc") has
- been replaced with zero, it turns out that no implementation
- used that parameter. This occured because the value being
- supplied - the address of the called function's entry point
- instead of the address of the breakpoint that the called
- function should return to - wasn't useful. */
- sp = DEPRECATED_PUSH_RETURN_ADDRESS (0, sp);
+ sp = DEPRECATED_PUSH_RETURN_ADDRESS (real_pc, sp);
/* NOTE: cagney/2003-03-23: Diable this code when there is a
push_dummy_call() method. Since that method will have already
-- Andreas Schwab, SuSE Labs, schwab@suse.de SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |