From patchwork Tue Mar 6 19:30:00 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Burgess X-Patchwork-Id: 26216 Received: (qmail 27820 invoked by alias); 6 Mar 2018 19:30:41 -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 27638 invoked by uid 89); 6 Mar 2018 19:30:23 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-25.9 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.2 spammy= X-HELO: mail-wm0-f68.google.com Received: from mail-wm0-f68.google.com (HELO mail-wm0-f68.google.com) (74.125.82.68) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 06 Mar 2018 19:30:14 +0000 Received: by mail-wm0-f68.google.com with SMTP id 188so362505wme.1 for ; Tue, 06 Mar 2018 11:30:11 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:in-reply-to:references; bh=dRFeY5SswT7JhvhdoiWD0dnpGNC65B11mcFPFQEwHSM=; b=fc4Tk3q0aYtBRW2pMWPHyZbrMUM9wIigryfddkBqp0CATNJvxKXUZNMyCiLwlvy6Wq czPezT4dpBfNrA+kqlvRfohC+iguZ/wdWP3vtoEPwclnqZ5W2QPuHZMsfnLG/bYh/XF9 AiHyLI3IrTIULryUoLPKgUmctm4yIrTjTn76HkUqrtK0jcBDh3EBo66eN5cGbOFmZIOg SjX2IlWF/wy66GTXYnh1Vi2JYeUu7BG4Eg+D+ccb2X5Q+lgrYCpHO627r+ilY+IoQHNO gvo4rv7NUoNStwLbS9vTXFq04JqnE0NZjVDY616pUjVzRyuv6+sEpfZfJnS8zs0cAkbv ErSw== X-Gm-Message-State: AElRT7F5t9QhD+lzH8kgkUE/C8lhB7cyAGAxCR5bqyoUUfkC0fvNFtf5 bagjVvV9IZ/Rrd/8TKa9AAb9wOUS X-Google-Smtp-Source: AG47ELt0JwFQ5hBsM24/vSiaRhLbwJW69UvQ38BeVpfKQ+4bY1q7Wz7yJLpTR8t+Qiz3vUJYRz2ZUg== X-Received: by 10.28.167.151 with SMTP id q145mr13344983wme.64.1520364609883; Tue, 06 Mar 2018 11:30:09 -0800 (PST) Received: from localhost (host86-164-103-156.range86-164.btcentralplus.com. [86.164.103.156]) by smtp.gmail.com with ESMTPSA id c14sm12572395wmi.16.2018.03.06.11.30.09 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 06 Mar 2018 11:30:09 -0800 (PST) From: Andrew Burgess To: gdb-patches@sourceware.org Cc: Yao Qi , Andrew Burgess Subject: [PATCH 1/3] gdb/riscv: Remove use of pseudo registers Date: Tue, 6 Mar 2018 19:30:00 +0000 Message-Id: In-Reply-To: References: In-Reply-To: References: X-IsSubscribed: yes The code making use of pseudo registers was initially intended to support running 32-bit ABI files on 64-bit riscv targets. However, the implementation was incomplete, and broken. For now I've removed all reference to pseudo registers from the riscv target, we've not lost any functionality, and this cleans up failures in the selftests. Once the riscv target has matured a little we'll probably end up bringing back some of the use of pseudo registers in order to better support running 32-bit executables on a 64-bit target. gdb/ChangeLog: * riscv-tdep.c (riscv_pseudo_register_read): Delete. (riscv_pseudo_register_write): Delete. (riscv_gdbarch_init): Remove all use of pseudo registers. --- gdb/ChangeLog | 6 ++++++ gdb/riscv-tdep.c | 25 ------------------------- 2 files changed, 6 insertions(+), 25 deletions(-) diff --git a/gdb/riscv-tdep.c b/gdb/riscv-tdep.c index 3e1ad99c673..ce148067216 100644 --- a/gdb/riscv-tdep.c +++ b/gdb/riscv-tdep.c @@ -499,28 +499,6 @@ riscv_register_name (struct gdbarch *gdbarch, int regnum) return NULL; } -/* Implement the pseudo_register_read gdbarch method. */ - -static enum register_status -riscv_pseudo_register_read (struct gdbarch *gdbarch, - readable_regcache *regcache, - int regnum, - gdb_byte *buf) -{ - return regcache->raw_read (regnum, buf); -} - -/* Implement the pseudo_register_write gdbarch method. */ - -static void -riscv_pseudo_register_write (struct gdbarch *gdbarch, - struct regcache *regcache, - int cookednum, - const gdb_byte *buf) -{ - regcache_raw_write (regcache, cookednum, buf); -} - /* Implement the register_type gdbarch method. */ static struct type * @@ -2559,10 +2537,7 @@ riscv_gdbarch_init (struct gdbarch_info info, set_gdbarch_sw_breakpoint_from_kind (gdbarch, riscv_sw_breakpoint_from_kind); /* Register architecture. */ - set_gdbarch_pseudo_register_read (gdbarch, riscv_pseudo_register_read); - set_gdbarch_pseudo_register_write (gdbarch, riscv_pseudo_register_write); set_gdbarch_num_regs (gdbarch, RISCV_LAST_REGNUM + 1); - set_gdbarch_num_pseudo_regs (gdbarch, RISCV_LAST_REGNUM + 1); set_gdbarch_sp_regnum (gdbarch, RISCV_SP_REGNUM); set_gdbarch_pc_regnum (gdbarch, RISCV_PC_REGNUM); set_gdbarch_ps_regnum (gdbarch, RISCV_FP_REGNUM);