elliottt opened PR #5630 from trevor/remove-brz-brnz
to main
:
- Remove brz and brnz
- Start removing
- Update filetests
- Update more tests
- Update function generation for fuzzing
- Fix frontend tests
- Fix cranelift-wasm
- Format
<!--
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.
-->
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt edited PR #5630 from trevor/remove-brz-brnz
to main
:
Remove the
brz
andbrnz
instructions, as their behavior is now redundant withbrif
.
<!--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.
-->
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt has marked PR #5630 as ready for review.
elliottt edited PR #5630 from trevor/remove-brz-brnz
to main
:
Remove the
brz
andbrnz
instructions, as their behavior is now redundant withbrif
. I've also updated docs and removed all references in comments tobrz
andbrnz
.
<!--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.
-->
elliottt submitted PR review.
elliottt created PR review comment:
The TODO on line 523 is referring to this unnecessary indirection introduced by the switch compilation. I'm not sure if there's a good way to rework
build_search_branches
to avoid this, but perhaps it's not worth thinking too hard about as VCode will skip the intermeidate block.
elliottt submitted PR review.
elliottt created PR review comment:
Similarly, this unnecessary intermediate block is introduced as an effect of the changes to
build_search_branches
, and is the subject of the TODO on line 451.
elliottt submitted PR review.
elliottt created PR review comment:
This PR introduced a lot of noise for cases where a
brz
was replaced with abrif
with the branch order reversed. This change is equivalent in behavior to the previous output, but ends up changing the label names.
elliottt submitted PR review.
elliottt created PR review comment:
This ballooned a bit because it's now testing
ult
, rather than the negation ofult
which is justge
. We could get back to the old implementation by swapping the branches and inverting the condition code.
elliottt requested cfallin for a review on PR #5630.
elliottt requested fitzgen for a review on PR #5630.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
fitzgen submitted PR review.
fitzgen submitted PR review.
fitzgen created PR review comment:
:tada:
fitzgen created PR review comment:
Is this something we should have a lowering rule for? Fine to file as a follow up issue, IMO.
fitzgen created PR review comment:
Can this reuse the existing temporary
SmallVec
just above above?
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt submitted PR review.
elliottt created PR review comment:
I fixed this separately in #5636. I realized we could invert the condition code and branches to avoid the cost of the unordered comparison in the riscv64 backend :+1:
elliottt submitted PR review.
elliottt created PR review comment:
Unfortunately no, as
canonicalise_v128_values
returns the smallvec as a slice, and we need the two slices at the same time.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt has marked PR #5630 as ready for review.
jameysharp submitted PR review.
jameysharp submitted PR review.
jameysharp created PR review comment:
I don't know exactly what
use_srcloc
does but does using.replace(inst)
above effectively do the same thing as this?
jameysharp created PR review comment:
Just to check: is this fixing a bug introduced in one of the previous PRs in this series?
jameysharp submitted PR review.
jameysharp created PR review comment:
I believe this test is now identical to
i128_brif_false
above, right?
jameysharp submitted PR review.
jameysharp created PR review comment:
And same for all the other
*_brif_false
/*_brif_true
tests below.
elliottt submitted PR review.
elliottt created PR review comment:
I think that that the effects of
use_srcloc
are lost in my new version, as any instructions inserted usingpos
will not inherit that location. Thanks for catching this!
elliottt submitted PR review.
elliottt created PR review comment:
Yes. The
BlockCall
pr was unconditionally removing parameters from all branches, so any use ofbugpoint::run
withbrif
would potentially producebrif
calls with incorrect block arguments.
elliottt updated PR #5630 from trevor/remove-brz-brnz
to main
.
elliottt has enabled auto merge for PR #5630.
elliottt merged PR #5630.
Last updated: Dec 23 2024 at 12:05 UTC