From: Richard Earnshaw <Richard.Earnshaw@foss.arm.com>
To: Stamatis Markianos-Wright <stam.markianos-wright@arm.com>,
"gcc-patches@gcc.gnu.org" <gcc-patches@gcc.gnu.org>
Cc: Kyrylo Tkachov <Kyrylo.Tkachov@arm.com>,
Richard Earnshaw <Richard.Earnshaw@arm.com>,
richard.sandiford@arm.com, ramana.gcc@gmail.com
Subject: Re: [PATCH 1/2] arm: Add define_attr to to create a mapping between MVE predicated and unpredicated insns
Date: Tue, 12 Dec 2023 10:33:11 +0000 [thread overview]
Message-ID: <63733136-6274-4d83-9cb4-b1b0c1f8b499@foss.arm.com> (raw)
In-Reply-To: <701bb1cb-e7e5-4b3a-ab87-11d03647644e@arm.com>
On 06/11/2023 11:20, Stamatis Markianos-Wright wrote:
> Patch has already been approved at:
>
> https://gcc.gnu.org/pipermail/gcc-patches/2023-September/630326.html
>
>
> ... But I'm sending this again for archiving on the list after rebasing
A couple of minor nits:
1)
+#define MVE_VPT_PREDICABLE_INSN_P(INSN) \
+ (recog_memoized (INSN) >= 0 \
+ && get_attr_mve_unpredicated_insn (INSN) != 0) \
I think it's better to write "!= CODE_FOR_nothing".
+(define_attr "mve_unpredicated_insn" "" (const_int 0))
+
And the default value here should similarly be 'symbol_ref
"CODE_FOR_nothing"'.
So that the style matches the symbol refs elsewhere.
2)
+(define_insn "*predicated_doloop_end_internal"
+ [(set (pc)
+ (if_then_else
+ (ge (plus:SI (reg:SI LR_REGNUM)
+ (match_operand:SI 0 "const_int_operand" ""))
+ (const_int 0))
+ (label_ref (match_operand 1 "" ""))
+ (pc)))
+ (set (reg:SI LR_REGNUM)
+ (plus:SI (reg:SI LR_REGNUM) (match_dup 0)))
+ (clobber (reg:CC CC_REGNUM))]
+ "TARGET_32BIT && TARGET_HAVE_LOB && TARGET_HAVE_MVE && TARGET_THUMB2"
TARGET_THUMB2 => TARGET_32BIT, so the first test is redundant. In fact,
given that TARGET_HAVE_LOB => armv8.1-m.main => thumb2, why do we need
either?
So
TARGET_HAVE_LOB && TARGET_HAVE_MVE
should be sufficient.
+(define_insn "dlstp<mode1>_insn"
+ [
+ (set (reg:SI LR_REGNUM)
+ (unspec:SI [(match_operand:SI 0 "s_register_operand" "r")]
+ DLSTP))
+ ]
+ "TARGET_32BIT && TARGET_HAVE_LOB && TARGET_HAVE_MVE && TARGET_THUMB2"
Same here.
Otherwise, OK.
R.
next prev parent reply other threads:[~2023-12-12 10:33 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-06 11:20 Stamatis Markianos-Wright
2023-12-12 10:33 ` Richard Earnshaw [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-12-18 11:53 [PATCH 0/2] arm: Add support for MVE Tail-Predicated Low Overhead Loops Andre Vieira
2023-12-18 11:53 ` [PATCH 1/2] arm: Add define_attr to to create a mapping between MVE predicated and unpredicated insns Andre Vieira
2023-12-20 16:54 ` Andre Vieira (lists)
2023-08-17 10:30 Stamatis Markianos-Wright
2023-06-15 11:47 Stamatis Markianos-Wright
2022-11-11 17:39 Stam Markianos-Wright
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=63733136-6274-4d83-9cb4-b1b0c1f8b499@foss.arm.com \
--to=richard.earnshaw@foss.arm.com \
--cc=Kyrylo.Tkachov@arm.com \
--cc=Richard.Earnshaw@arm.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=ramana.gcc@gmail.com \
--cc=richard.sandiford@arm.com \
--cc=stam.markianos-wright@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).