dheaton-arm opened PR #4399 from isle-iabs
to main
:
Converts the existing implementation of
iabs
for AArch64 into ISLE,
and fixes support foriabs
on scalar values.Copyright (c) 2022 Arm Limited.
<!--
Please ensure that the following steps are all taken care of before submitting
the PR.
[ ] This has been discussed in issue #..., or if not, please tell us why
here.[ ] A short description of what this does, why it is needed; if the
description becomes long, the matter should probably be discussed in an issue
first.[ ] This PR contains test cases, if meaningful.
- [ ] A reviewer from the core maintainer team has been assigned for this PR.
If you don't know who could review this, please indicate so. The list of
suggested reviewers on the right can help you.Please ensure all communication adheres to the code of conduct.
-->
alexcrichton submitted PR review.
alexcrichton created PR review comment:
Just a drive-by-comment from me, but I think that the intention is that while this technically works today we'd one day like to add a "chaos mode" of sorts to ISLE selection where any matching rule can be chosen for a lowering. In that sense
iabs
with ani64
result would match this rule but it's not valid to match this rule since it only works for vectors. I think that this would probably be best to have a matcher/extractor of some sort for thety
here likemulti_lane
(or ideally something likemulti_integer_lane
to avoid matchingf64x2
but I don't think we have that yet)
cfallin created PR review comment:
Yep, this is a somewhat persistent subtle issue to keep in mind, sorry @dheaton-arm -- each rule has to be correct on its own. One can use rule priorities to make one rule semantically shadowed by others though; that's probably the easiest approach here. So
(rule -1 (lower (has_type ty ...)))
(lower numbers are lower priority).
cfallin submitted PR review.
dheaton-arm updated PR #4399 from isle-iabs
to main
.
cfallin submitted PR review.
cfallin merged PR #4399.
Last updated: Dec 23 2024 at 12:05 UTC