cfallin requested bnjbvr and julian-seward1 for a review on PR #1674.
cfallin opened PR #1674 from machinst-reg-universe-opt
to master
:
There's no good reason for the current behavior; we just happened to build the
RealRegUniverse
each time it was needed. This involves allocating aVec
and pushing a bunch (on AArch64, O(64)) of register-info structs onto it. We should share this work across the backend instance as long as it exists; and we can, because the flags (which might affect which registers we use) remain constant for one backend instance.This saves ~0.14% instruction count, ~0.18% allocated bytes, and ~1.5%
allocated blocks on aclif-util wasm
compilation ofbz2.wasm
for
aarch64.<!--
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.
-->
cfallin requested bnjbvr and julian-seward1 for a review on PR #1674.
julian-seward1 submitted PR Review.
cfallin merged PR #1674.
Last updated: Dec 23 2024 at 12:05 UTC