From patchwork Mon Mar 2 17:59:15 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Terekhov, Mikhail via Gdb-patches" X-Patchwork-Id: 38373 Received: (qmail 88559 invoked by alias); 2 Mar 2020 17:59:23 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 88549 invoked by uid 89); 2 Mar 2020 17:59:23 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-21.4 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_PASS autolearn=ham version=3.3.1 spammy=doctype, !doctype, DOCTYPE, !DOCTYPE X-HELO: mail-yw1-f74.google.com Received: from mail-yw1-f74.google.com (HELO mail-yw1-f74.google.com) (209.85.161.74) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 02 Mar 2020 17:59:20 +0000 Received: by mail-yw1-f74.google.com with SMTP id y81so279166ywd.20 for ; Mon, 02 Mar 2020 09:59:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:message-id:mime-version:subject:from:to:cc; bh=oM2TEhXdnOhmyoAoZ+x5YT1PDIJ8ILLDalWDkdfwkSY=; b=m03+1bJBeljTp+N2t60PFUrCijtRrj9DNGWAAgU2QkSuK6Cnbz41weRE5L+1NA5/gi h1J7SIykZXI3RH1GEaTJFSXpLbfn2JMvOxjqD6bmoCNyhmZlNcSXNDkll4c/l8vBxTai h9HkQYTUonhziQfN0AH9Yf5n7eIFpj5Mve/hR8stW4g+RMBShzzsSqP1v4H6hM9IDdiL 4YVYWRq7oiJ/spEEkqsMIgk7lJPRg4E51NvHSHkccGkbOcl458WlC8ZTYU23JNR+je9l BKcRevo4euFvS6fL86e6+p0p7t3E8Hxnh6dI/7+pKRweSIoWgnwfqhbnHwSpfLL3Kptn qrGQ== Date: Mon, 2 Mar 2020 11:59:15 -0600 Message-Id: <20200302175915.176614-1-cbiesinger@google.com> Mime-Version: 1.0 Subject: [PATCH] Explicitly put registers in the general group for ARM X-Patchwork-Original-From: "Christian Biesinger via gdb-patches" From: "Terekhov, Mikhail via Gdb-patches" Reply-To: Christian Biesinger To: gdb-patches@sourceware.org Cc: Christian Biesinger X-IsSubscribed: yes This seems like the right thing per the documentation: https://sourceware.org/gdb/current/onlinedocs/gdb/Target-Description-Format.html#Target-Description-Format "If no group is specified, GDB will not display the register in info registers." but should also help with this issue: https://sourceware.org/ml/gdb-patches/2020-02/msg01038.html] Note that "set tdesc filename features/arm/arm-core.xml; maint print c-tdesc" prints an empty target description both before and after this change, so I just manually edited the .c file to specify the group. gdb/ChangeLog: 2020-03-02 Christian Biesinger * features/aarch64-core.c (create_feature_aarch64_core): Put all registers in the "general" group. * features/aarch64-core.xml: Likewise. * features/arm/arm-core.c (create_feature_arm_arm_core): Likewise. * features/arm/arm-core.xml: Likewise. --- gdb/features/aarch64-core.c | 68 +++++++++++++++++------------------ gdb/features/aarch64-core.xml | 68 +++++++++++++++++------------------ gdb/features/arm/arm-core.c | 34 +++++++++--------- gdb/features/arm/arm-core.xml | 34 +++++++++--------- 4 files changed, 102 insertions(+), 102 deletions(-) diff --git a/gdb/features/aarch64-core.c b/gdb/features/aarch64-core.c index a080a641c4..f929b2cbf9 100644 --- a/gdb/features/aarch64-core.c +++ b/gdb/features/aarch64-core.c @@ -30,39 +30,39 @@ create_feature_aarch64_core (struct target_desc *result, long regnum) tdesc_add_flag (type_with_fields, 30, "Z"); tdesc_add_flag (type_with_fields, 31, "N"); - tdesc_create_reg (feature, "x0", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x1", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x2", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x3", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x4", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x5", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x6", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x7", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x8", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x9", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x10", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x11", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x12", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x13", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x14", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x15", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x16", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x17", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x18", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x19", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x20", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x21", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x22", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x23", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x24", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x25", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x26", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x27", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x28", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x29", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "x30", regnum++, 1, NULL, 64, "int"); - tdesc_create_reg (feature, "sp", regnum++, 1, NULL, 64, "data_ptr"); - tdesc_create_reg (feature, "pc", regnum++, 1, NULL, 64, "code_ptr"); - tdesc_create_reg (feature, "cpsr", regnum++, 1, NULL, 32, "cpsr_flags"); + tdesc_create_reg (feature, "x0", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x1", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x2", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x3", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x4", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x5", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x6", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x7", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x8", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x9", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x10", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x11", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x12", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x13", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x14", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x15", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x16", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x17", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x18", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x19", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x20", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x21", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x22", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x23", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x24", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x25", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x26", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x27", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x28", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x29", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "x30", regnum++, 1, "general", 64, "int"); + tdesc_create_reg (feature, "sp", regnum++, 1, "general", 64, "data_ptr"); + tdesc_create_reg (feature, "pc", regnum++, 1, "general", 64, "code_ptr"); + tdesc_create_reg (feature, "cpsr", regnum++, 1, "general", 32, "cpsr_flags"); return regnum; } diff --git a/gdb/features/aarch64-core.xml b/gdb/features/aarch64-core.xml index ee6a3a6dfa..2f66088c6d 100644 --- a/gdb/features/aarch64-core.xml +++ b/gdb/features/aarch64-core.xml @@ -8,40 +8,40 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -86,6 +86,6 @@ - + diff --git a/gdb/features/arm/arm-core.c b/gdb/features/arm/arm-core.c index e401411fc5..4519752975 100644 --- a/gdb/features/arm/arm-core.c +++ b/gdb/features/arm/arm-core.c @@ -9,23 +9,23 @@ create_feature_arm_arm_core (struct target_desc *result, long regnum) struct tdesc_feature *feature; feature = tdesc_create_feature (result, "org.gnu.gdb.arm.core"); - tdesc_create_reg (feature, "r0", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r1", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r2", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r3", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r4", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r5", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r6", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r7", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r8", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r9", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r10", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r11", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "r12", regnum++, 1, NULL, 32, "uint32"); - tdesc_create_reg (feature, "sp", regnum++, 1, NULL, 32, "data_ptr"); - tdesc_create_reg (feature, "lr", regnum++, 1, NULL, 32, "int"); - tdesc_create_reg (feature, "pc", regnum++, 1, NULL, 32, "code_ptr"); + tdesc_create_reg (feature, "r0", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r1", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r2", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r3", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r4", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r5", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r6", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r7", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r8", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r9", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r10", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r11", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "r12", regnum++, 1, "general", 32, "uint32"); + tdesc_create_reg (feature, "sp", regnum++, 1, "general", 32, "data_ptr"); + tdesc_create_reg (feature, "lr", regnum++, 1, "general", 32, "int"); + tdesc_create_reg (feature, "pc", regnum++, 1, "general", 32, "code_ptr"); regnum = 25; - tdesc_create_reg (feature, "cpsr", regnum++, 1, NULL, 32, "int"); + tdesc_create_reg (feature, "cpsr", regnum++, 1, "general", 32, "int"); return regnum; } diff --git a/gdb/features/arm/arm-core.xml b/gdb/features/arm/arm-core.xml index 144fc4638a..d506004fe1 100644 --- a/gdb/features/arm/arm-core.xml +++ b/gdb/features/arm/arm-core.xml @@ -7,25 +7,25 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - +