-
Notifications
You must be signed in to change notification settings - Fork 1.7k
MIR episode 6 #14892
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
MIR episode 6 #14892
Conversation
cf9c8ac
to
2812814
Compare
cdf5253
to
11c91da
Compare
☔ The latest upstream changes (presumably #14904) made this pull request unmergeable. Please resolve the merge conflicts. |
@bors r+ |
☀️ Test successful - checks-actions |
1 similar comment
☀️ Test successful - checks-actions |
👀 Test was successful, but fast-forwarding failed: 422 Changes must be made through a pull request. |
/// } | ||
/// } | ||
/// ``` | ||
fn collect_for_loop(&mut self, syntax_ptr: AstPtr<ast::Expr>, e: ast::ForExpr) -> ExprId { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The lowering broke our label resolution it seems, I'm spotting a bunch of undeclared label diagnostics in r-a
fix bug in labeled for loop desugaring fix #14892 (comment)
any more episodes? |
This PR separates monomorphization from interpreting, and add a monomorphization query to cache the results. Together with making layout queries returning
Arc<Layout>
instead ofLayout
(did you know thatLayout
is a 312 byte struct with a couple of vectors, so it is very costly to clone? I thought it should be very small and cheap) it makes mir interpreting an order of magnitude faster in warmed calls.It still can't evaluate no test in the r-a repo, but all tests that I tried are hitting #7434 so I hope after that it will become able to interpret some real world test.