abrown opened PR #1444 from fix-1342
to master
:
This relates to #1342; in #1335, @bnjbvr and I discussed that we should disallow code like
infer_rex().w()
in the meta crate since the presence of a REX.W by necessity requires a REX prefix. To avoid ambiguity, we now requirerex().w()
instead.Though all the tests pass, the tricky part of this PR is deciding whether the subsequent two commits, the "Skip extra work..." optimizations, are always correct. What these should do is avoid checks on the REX.W bit when we are dealing with a recipe that has inferred REX prefixes; since
infer_rex()
andw()
can no longer go together, the thought is that we could avoid some (negligible) extra work checking for this bit when determining if a REX prefix is needed--i.e. we only need to check the RXB bits. I am open to removing these commits or adding tests (but which ones?) to prove this is correct since I am rather wary that the "we are dealing with a recipe that has inferred REX prefixes" assumption always holds.I'll tag multiple people as reviewers for extra eyes.
<!--
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.
-->
abrown requested iximeow for a review on PR #1444.
abrown requested bnjbvr and iximeow for a review on PR #1444.
iximeow submitted PR Review.
abrown updated PR #1444 from fix-1342
to master
:
This relates to #1342; in #1335, @bnjbvr and I discussed that we should disallow code like
infer_rex().w()
in the meta crate since the presence of a REX.W by necessity requires a REX prefix. To avoid ambiguity, we now requirerex().w()
instead.Though all the tests pass, the tricky part of this PR is deciding whether the subsequent two commits, the "Skip extra work..." optimizations, are always correct. What these should do is avoid checks on the REX.W bit when we are dealing with a recipe that has inferred REX prefixes; since
infer_rex()
andw()
can no longer go together, the thought is that we could avoid some (negligible) extra work checking for this bit when determining if a REX prefix is needed--i.e. we only need to check the RXB bits. I am open to removing these commits or adding tests (but which ones?) to prove this is correct since I am rather wary that the "we are dealing with a recipe that has inferred REX prefixes" assumption always holds.I'll tag multiple people as reviewers for extra eyes.
<!--
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.
-->
abrown updated PR #1444 from fix-1342
to master
:
This relates to #1342; in #1335, @bnjbvr and I discussed that we should disallow code like
infer_rex().w()
in the meta crate since the presence of a REX.W by necessity requires a REX prefix. To avoid ambiguity, we now requirerex().w()
instead.Though all the tests pass, the tricky part of this PR is deciding whether the subsequent two commits, the "Skip extra work..." optimizations, are always correct. What these should do is avoid checks on the REX.W bit when we are dealing with a recipe that has inferred REX prefixes; since
infer_rex()
andw()
can no longer go together, the thought is that we could avoid some (negligible) extra work checking for this bit when determining if a REX prefix is needed--i.e. we only need to check the RXB bits. I am open to removing these commits or adding tests (but which ones?) to prove this is correct since I am rather wary that the "we are dealing with a recipe that has inferred REX prefixes" assumption always holds.I'll tag multiple people as reviewers for extra eyes.
<!--
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.
-->
abrown merged PR #1444.
Last updated: Dec 23 2024 at 12:05 UTC