From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22465 invoked by alias); 7 Jun 2013 13:44:41 -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 22436 invoked by uid 89); 7 Jun 2013 13:44:35 -0000 X-Spam-SWARE-Status: No, score=-3.9 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,RCVD_IN_DNSWL_MED,RCVD_IN_HOSTKARMA_W,RP_MATCHES_RCVD autolearn=ham version=3.3.1 Received: from e06smtp14.uk.ibm.com (HELO e06smtp14.uk.ibm.com) (195.75.94.110) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Fri, 07 Jun 2013 13:44:34 +0000 Received: from /spool/local by e06smtp14.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 7 Jun 2013 14:37:44 +0100 Received: from d06dlp03.portsmouth.uk.ibm.com (9.149.20.15) by e06smtp14.uk.ibm.com (192.168.101.144) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Fri, 7 Jun 2013 14:37:42 +0100 Received: from b06cxnps3075.portsmouth.uk.ibm.com (d06relay10.portsmouth.uk.ibm.com [9.149.109.195]) by d06dlp03.portsmouth.uk.ibm.com (Postfix) with ESMTP id D92A61B08066 for ; Fri, 7 Jun 2013 14:44:29 +0100 (BST) Received: from d06av09.portsmouth.uk.ibm.com (d06av09.portsmouth.uk.ibm.com [9.149.37.250]) by b06cxnps3075.portsmouth.uk.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r57DiIVU17891454 for ; Fri, 7 Jun 2013 13:44:18 GMT Received: from d06av09.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av09.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id r57DiTHF015737 for ; Fri, 7 Jun 2013 07:44:29 -0600 Received: from br87z6lw.de.ibm.com (dyn-9-152-212-143.boeblingen.de.ibm.com [9.152.212.143]) by d06av09.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVin) with ESMTP id r57DiSSs015726; Fri, 7 Jun 2013 07:44:28 -0600 From: Andreas Arnez To: gdb-patches@sourceware.org, Ulrich Weigand Subject: [RFA/RFT PATCH 0/3] Add TDB regset support Date: Fri, 07 Jun 2013 13:44:00 -0000 Message-ID: <87fvwu5937.fsf@br87z6lw.de.ibm.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-TM-AS-MML: No X-Content-Scanned: Fidelis XPS MAILER x-cbid: 13060713-1948-0000-0000-0000055E1478 X-SW-Source: 2013-06/txt/msg00151.txt.bz2 The new z/Architecture introduces restricted hardware transactional memory with the "transactional-execution facility". Diagnostic capabilities of this feature include the "program interruption transaction diagnostic block" (TDB), which is written by the hardware whenever a transaction is aborted due to a program interruption. This patch set makes the TDB accessible from GDB as a new register set. The first patch reworks the S/390 register map handling without any functional changes, the second adds the new TDB register set, and the third implements "dynamic regset" support. The third patch changes GDB's approach for enumerating core file register note sections: Instead of a static array, an iterator function is now provided by the target-dependent code. This allows for dynamically selecting a register set for inclusion in a core file (written with gcore), and making the selection dependent on the current register values. This is needed for correct treatment of the TDB register set, because its register values are unavailable when the inferior was interrupted outside transactions, and then the TDB should *not* be written into the core file. This last patch affects multiple architectures, specifically: - GNU/Linux ARM - GNU/Linux PowerPC - GNU/Linux S/390 - GNU/Linux x86 In most cases the patch simplifies the target-dependent logic. I've tested on S/390 and x86 and did not find any regressions.