From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out199-8.us.a.mail.aliyun.com (out199-8.us.a.mail.aliyun.com [47.90.199.8]) by sourceware.org (Postfix) with ESMTPS id 161653858D33 for ; Wed, 9 Nov 2022 11:46:05 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 161653858D33 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=linux.alibaba.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linux.alibaba.com X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R831e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046051;MF=jiangshuai_li@linux.alibaba.com;NM=1;PH=DS;RN=2;SR=0;TI=SMTPD_---0VUO0107_1667994361; Received: from lijsh-VirtualBox.hz.ali.com(mailfrom:jiangshuai_li@linux.alibaba.com fp:SMTPD_---0VUO0107_1667994361) by smtp.aliyun-inc.com; Wed, 09 Nov 2022 19:46:02 +0800 From: Jiangshuai Li To: gdb-patches@sourceware.org Cc: Jiangshuai Li Subject: [PATCH] gdb/csky return type int32 for float and vector pseudo regs Date: Wed, 9 Nov 2022 19:46:00 +0800 Message-Id: <20221109114600.48002-1-jiangshuai_li@linux.alibaba.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-20.0 required=5.0 tests=BAYES_00,ENV_AND_HDR_SPF_MATCH,GIT_PATCH_0,KAM_DMARC_STATUS,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP,UNPARSEABLE_RELAY,USER_IN_DEF_SPF_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: When reg_nr is one of the float and vector pseudo registers, return builtin_type (gdbarch)->builtin_int32 for it. --- gdb/csky-tdep.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gdb/csky-tdep.c b/gdb/csky-tdep.c index e377e37b26e..ced1b032a7b 100644 --- a/gdb/csky-tdep.c +++ b/gdb/csky-tdep.c @@ -700,6 +700,17 @@ csky_vector_type (struct gdbarch *gdbarch) static struct type * csky_register_type (struct gdbarch *gdbarch, int reg_nr) { + int num_regs = gdbarch_num_regs (gdbarch); + csky_gdbarch_tdep *tdep + = gdbarch_tdep (gdbarch); + + if (tdep->fv_pseudo_registers_count) + { + if ((reg_nr >= num_regs) + && (reg_nr < (num_regs + tdep->fv_pseudo_registers_count))) + return builtin_type (gdbarch)->builtin_int32; + } + /* If type has been described in tdesc-xml, use it. */ if (tdesc_has_registers (gdbarch_target_desc (gdbarch))) { -- 2.34.1