From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19785 invoked by alias); 4 Feb 2014 11:28:23 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 19776 invoked by uid 89); 4 Feb 2014 11:28:22 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.3 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-yk0-f171.google.com Received: from mail-yk0-f171.google.com (HELO mail-yk0-f171.google.com) (209.85.160.171) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Tue, 04 Feb 2014 11:28:20 +0000 Received: by mail-yk0-f171.google.com with SMTP id 142so46132567ykq.2 for ; Tue, 04 Feb 2014 03:28:18 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=rc8MN7mYLOmU3Q88tNCC+ZBPYIua3mXS0/j1LCY8qu8=; b=DMTI1ejZvbl1/WBr60RgSmrsAGSW1e8RSLlrZ6kv8wZt6C4ONcx3TG2he0rz4f9aYC GzelFq9sCIEpbYLfe7775L0wdhUp/C29uA7Drx45qijKcoMHQWMFesTtkqOKMMmSdjQl ajJD4Bkm7jcQrjr+duvVONw3tVDZ+Jv9wk1BRXajAMEqU9hMJ6p0RDbqVIaIf2XNI+uw PRyOgzMqyIb6vW40bI1fshCCioWPqNaFBgchIRh8UZp2+686Bunedmgu8UELGZZc/ZuA ABcpUT2+zgQHtOD0XFzwSmRASQYA/jW4hLlnLOw6zJn2rBZ4nxQcbOMftM3iyrTEfzCg ehQQ== X-Gm-Message-State: ALoCoQl38btGTSRgc7CdEwZ3a0qNDonZsMJZGKXX4vKFoHVjpq8IbkVxDip3QxO4cIgmhWqNTiGS MIME-Version: 1.0 X-Received: by 10.236.221.167 with SMTP id r37mr671563yhp.85.1391513298825; Tue, 04 Feb 2014 03:28:18 -0800 (PST) Received: by 10.170.121.13 with HTTP; Tue, 4 Feb 2014 03:28:18 -0800 (PST) In-Reply-To: References: <52AF4563.2090304@linaro.org> Date: Tue, 04 Feb 2014 11:28:00 -0000 Message-ID: Subject: Re: [PATCH] gdb/elfread.c: Enable ifunc support on ARM. From: Will Newton To: "gdb-patches@sourceware.org" Cc: Patch Tracking Content-Type: text/plain; charset=ISO-8859-1 X-IsSubscribed: yes X-SW-Source: 2014-02/txt/msg00019.txt.bz2 On 23 January 2014 15:21, Will Newton wrote: > On 16 December 2013 18:24, Will Newton wrote: >> >> There are two failures in the gnu-ifunc.exp test on ARM. These are >> due to the failure to resolve the correct target function when >> attempting to breakpoint a GNU ifunc resolved function: >> >> (gdb) break gnu_ifunc >> Breakpoint 4 at gnu-indirect-function resolver at 0x2aacb5a2 >> >> when gnu_ifunc has been resolved this should actually be: >> >> (gdb) break gnu_ifunc >> Breakpoint 4 at 0x868c >> >> There are two reasons for this. The first is that ARM does not have a >> separate .got.plt section so looking this up will always fail. The second >> is that the Thumb bit needs to be stripped from the address to allow >> it to be reliably compared when inserting into the ifunc cache. >> >> Tested with no regressions on arm-linux-gnueabihf and >> x86_64-unknown-linux-gnu. >> >> gdb/ChangeLog: >> >> 2013-12-16 Will Newton >> >> * elfread.c (elf_rel_plt_read): Look for a .got section if >> looking up .got.plt fails. >> (elf_gnu_ifunc_resolve_by_got): Call gdbarch_addr_bits_remove >> on address passed to elf_gnu_ifunc_record_cache. >> (elf_gnu_ifunc_resolve_addr): Likewise. >> (elf_gnu_ifunc_resolver_return_stop): Likewise. >> --- >> gdb/elfread.c | 10 +++++++++- >> 1 file changed, 9 insertions(+), 1 deletion(-) > > Ping? Ping? Despite the subject the contents of this patch are not ARM specific and change generic functionality. -- Will Newton Toolchain Working Group, Linaro