From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca (simark.ca [158.69.221.121]) by sourceware.org (Postfix) with ESMTPS id F0DC53858C20 for ; Fri, 24 Nov 2023 21:31:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F0DC53858C20 Authentication-Results: sourceware.org; dmarc=fail (p=none dis=none) header.from=efficios.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=efficios.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org F0DC53858C20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=158.69.221.121 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1700861468; cv=none; b=ADq/rC7MkJYW3kh2cv1JyYxO2MfXSdF2SFbkUyEVvGX3q5FqikygcB4MOYmolhfUmhm09WKkz7GHXrWomaXoNfnUpIjBEYrkmWejMweae+VMN7zWUeE6mMLQ0OqCZEha0EJ31J5RLF6CM53Xsb5UyXIMjuQ6bMceHSdoMPz3f9g= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1700861468; c=relaxed/simple; bh=gKJ+zPCy5hknRfLmnXZGneGil79bpgDMcUEQtEqX6LY=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=LTP0lJxcOcawlDuFPEejfJfAkQoVM7fMw6IOvPQa+LGhoL0TBgPzVmmzGCycPMHImFlh1CfSJoxtkH58rGz2Wy+9uPgTGULYk+0Ujd2pRNdRePhqkiQvsgBg6SUqC0UQ2BPDOPXhhF/NAtNDUfWWkQPYkaBue6elLB9FbyKVVZY= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from smarchi-efficios.internal.efficios.com (192-222-143-198.qc.cable.ebox.net [192.222.143.198]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPSA id 3AB531E11B; Fri, 24 Nov 2023 16:31:06 -0500 (EST) From: Simon Marchi To: gdb-patches@sourceware.org Cc: Luis Machado , John Baldwin , Andrew Burgess , Simon Marchi , John Baldwin Subject: [PATCH v2 19/24] gdb: make aarch64_za_offsets_from_regnum return za_offsets Date: Fri, 24 Nov 2023 16:26:36 -0500 Message-ID: <20231124212656.96801-20-simon.marchi@efficios.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231124212656.96801-1-simon.marchi@efficios.com> References: <20231124212656.96801-1-simon.marchi@efficios.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3496.7 required=5.0 tests=BAYES_00,GIT_PATCH_0,KAM_DMARC_NONE,KAM_DMARC_STATUS,SPF_HELO_PASS,SPF_SOFTFAIL,TXREP,T_SCC_BODY_TEXT_LINE 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: This is not necessary, but it seems more natural to me to make aarch64_za_offsets_from_regnum return a za_offsets object, rather than fill an instance passed by parameter. Change-Id: I40a185f055727da887ce7774be193eef1f4b9147 Reviewed-By: John Baldwin --- gdb/aarch64-tdep.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/gdb/aarch64-tdep.c b/gdb/aarch64-tdep.c index d1a6d46fb1f2..e9f5bdd141c8 100644 --- a/gdb/aarch64-tdep.c +++ b/gdb/aarch64-tdep.c @@ -3114,12 +3114,11 @@ aarch64_pseudo_read_value_1 (frame_info_ptr next_frame, } /* Helper function for reading/writing ZA pseudo-registers. Given REGNUM, - a ZA pseudo-register number, return, in OFFSETS, the information on positioning - of the bytes that must be read from/written to. */ + a ZA pseudo-register number, return the information on positioning of the + bytes that must be read from/written to. */ -static void -aarch64_za_offsets_from_regnum (struct gdbarch *gdbarch, int regnum, - struct za_offsets &offsets) +static za_offsets +aarch64_za_offsets_from_regnum (struct gdbarch *gdbarch, int regnum) { aarch64_gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); @@ -3135,6 +3134,7 @@ aarch64_za_offsets_from_regnum (struct gdbarch *gdbarch, int regnum, /* Fetch the streaming vector length. */ size_t svl = sve_vl_from_vq (tdep->sme_svq); + za_offsets offsets; if (is_sme_tile_slice_pseudo_register (gdbarch, regnum)) { @@ -3190,6 +3190,8 @@ aarch64_za_offsets_from_regnum (struct gdbarch *gdbarch, int regnum, /* The chunk size is always svl bytes. */ offsets.chunk_size = svl; } + + return offsets; } /* Given REGNUM, a SME pseudo-register number, return its value in RESULT. */ @@ -3207,8 +3209,8 @@ aarch64_sme_pseudo_register_read (gdbarch *gdbarch, frame_info_ptr next_frame, /* Fetch the offsets that we need in order to read from the correct blocks of ZA. */ - struct za_offsets offsets; - aarch64_za_offsets_from_regnum (gdbarch, pseudo_reg_num, offsets); + za_offsets offsets + = aarch64_za_offsets_from_regnum (gdbarch, pseudo_reg_num); /* Fetch the contents of ZA. */ value *za_value = value_of_register (tdep->sme_za_regnum, next_frame); @@ -3330,8 +3332,7 @@ aarch64_sme_pseudo_register_write (struct gdbarch *gdbarch, /* Fetch the offsets that we need in order to write to the correct blocks of ZA. */ - struct za_offsets offsets; - aarch64_za_offsets_from_regnum (gdbarch, regnum, offsets); + za_offsets offsets = aarch64_za_offsets_from_regnum (gdbarch, regnum); /* Fetch the contents of ZA. */ size_t svl = sve_vl_from_vq (tdep->sme_svq); -- 2.43.0