From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19067 invoked by alias); 27 Jun 2003 21:00:19 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 19000 invoked from network); 27 Jun 2003 21:00:16 -0000 Received: from unknown (HELO Cantor.suse.de) (213.95.15.193) by sources.redhat.com with SMTP; 27 Jun 2003 21:00:16 -0000 Received: from Hermes.suse.de (Hermes.suse.de [213.95.15.136]) by Cantor.suse.de (Postfix) with ESMTP id 56B2614E79; Fri, 27 Jun 2003 22:59:50 +0200 (MEST) To: Andrew Cagney Cc: gdb-patches@sources.redhat.com Subject: Re: [commit] infcall.c cleanup - explict bp_addr variable References: <3EA6AE7F.7060708@redhat.com> From: Andreas Schwab X-Yow: I predict that by 1993 everyone will live in and around LAS VEGAS and wear BEATLE HAIRCUTS! Date: Fri, 27 Jun 2003 21:00:00 -0000 Message-ID: User-Agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-SW-Source: 2003-06/txt/msg00833.txt.bz2 Andrew Cagney 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 * 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."