-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Intern SimplifyCfg
into enum variants
#108026
Conversation
(rustbot has picked a reviewer for you, use r? to override) |
|
Some changes occurred in src/tools/cargo cc @ehuss These commits modify the If this was intentional then you can ignore this comment. Some changes occurred to MIR optimizations cc @rust-lang/wg-mir-opt Hey! It looks like you've submitted a new PR for the library teams! If this PR contains changes to any Examples of
The Miri subtree was changed cc @rust-lang/miri |
I think you messed up while rebasing, see the documentation. |
cc @eholk |
8412b21
to
6e01157
Compare
EDIT:
WHELP, forgot to rebase to beta. brb in a few.
Was poking around and found that there are only 8 variants that need
SimplifyCfg
incompiler/rustc_mir_transforms/
- I think they can be shoved into an enum and earn some perf due to reduced (arena) allocations/fetching and compacting.The variants are
Note that a comment in
simplify.rs
saysso I'm hoping for some low-hanging perf fruits here, but the benchmarks will tell.
I plan to also intern the
SimplifyConstCondition
, but this had tests passing locally so I wanted to push it now.This is my first
rust-lang
PR, any feedback is appreciated. Thanks!