From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 46919 invoked by alias); 7 Jul 2015 12:52:09 -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 46906 invoked by uid 89); 7 Jul 2015 12:52:09 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.8 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.2 X-HELO: eu-smtp-delivery-143.mimecast.com Received: from eu-smtp-delivery-143.mimecast.com (HELO eu-smtp-delivery-143.mimecast.com) (207.82.80.143) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 07 Jul 2015 12:52:07 +0000 Received: from cam-owa1.Emea.Arm.com (fw-tnat.cambridge.arm.com [217.140.96.140]) by eu-smtp-1.mimecast.com with ESMTP id uk-mta-14-Tz63e1XUS7qPCAP2z0CQrw-1 Received: from e105615-lin.cambridge.arm.com ([10.1.2.79]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 7 Jul 2015 13:51:59 +0100 From: Pierre Langlois To: gdb-patches@sourceware.org Cc: Pierre Langlois Subject: [PATCH 0/8] [AArch64] Add support for tracepoints Date: Tue, 07 Jul 2015 12:52:00 -0000 Message-Id: <1436273518-5959-1-git-send-email-pierre.langlois@arm.com> X-MC-Unique: Tz63e1XUS7qPCAP2z0CQrw-1 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2015-07/txt/msg00159.txt.bz2 Hi all, These patches enable tracepoints for AArch64. Although tracepoints are enabled in GDBServer with the last patch, most of the changes are in GDB. The most important changes teach AArch64's frame unwinders to report when the inferior is unavailable. The first three patches refactor the frame caches. The idea is to keep accesses to the inferior's registers in aarch64_make_prologue_cache and aarch64_make_stub_cache. This way the following patches can easily catch exceptions when the inferior is unavailable. The following two patches teach AArch64's unwinders to terminate gracefully, in a similar way as it was done for x86 here: https://sourceware.org/ml/gdb-patches/2011-02/msg00611.html It fixes cases where we do not have debugging information and AArch64's unwinders need to be used when examining a trace buffer. In this context we cannot assume that the inferior's memory and registers are available. Thanks, Pierre Pierre Langlois (8): [AArch64] Refactor aarch64_make_prologue_cache [AArch64] Refactor aarch64_make_stub_cache [AArch64] Only access inferior registers when creating a frame cache [AArch64] Teach prologue unwinder to terminate gracefully [AArch64] Teach stub unwinder to terminate gracefully [AArch64] Implement gdbarch_gen_return_address gdbarch method [testsuite][AArch64] Port gdb.trace [GDBServer][AArch64] Enable support for tracepoints gdb/aarch64-tdep.c | 183 +++++++++++++++--= ---- gdb/gdbserver/linux-aarch64-low.c | 10 ++ gdb/testsuite/gdb.trace/backtrace.exp | 3 + gdb/testsuite/gdb.trace/collection.exp | 4 + .../gdb.trace/mi-trace-frame-collected.exp | 2 + gdb/testsuite/gdb.trace/mi-trace-unavailable.exp | 2 + gdb/testsuite/gdb.trace/report.exp | 4 + gdb/testsuite/gdb.trace/trace-break.exp | 2 + gdb/testsuite/gdb.trace/unavailable.exp | 4 + gdb/testsuite/gdb.trace/while-dyn.exp | 2 + 10 files changed, 166 insertions(+), 50 deletions(-) --=20 2.1.0