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]

Re: [commit] infcall.c cleanup - explict bp_addr variable


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).

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]