Skip to content
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

Remove allocation for builder cache hits #45

Merged
merged 2 commits into from
Jun 23, 2020
Merged

Remove allocation for builder cache hits #45

merged 2 commits into from
Jun 23, 2020

Conversation

CAD97
Copy link
Owner

@CAD97 CAD97 commented Jun 17, 2020

Credit to @simonvandel over at the main rowan repository for pointing out how this is possible. Previously: #40

Now that the necessary APIs for this are riding the trains to stable, here's an actual decent implementation of alloc-free cache hits!

Also adds a bit more explicit typing on pointers, as that led to a bug in the construction of this patch.

@codecov
Copy link

codecov bot commented Jun 17, 2020

Codecov Report

Merging #45 into master will decrease coverage by 0.68%.
The diff coverage is 81.08%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #45      +/-   ##
==========================================
- Coverage   82.88%   82.19%   -0.69%     
==========================================
  Files          10       10              
  Lines         707      747      +40     
==========================================
+ Hits          586      614      +28     
- Misses        121      133      +12     
Impacted Files Coverage Δ
src/green/tree_builder.rs 61.22% <ø> (ø)
src/utils.rs 66.66% <47.36%> (-12.29%) ⬇️
src/green/builder.rs 86.40% <92.72%> (+1.59%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8148666...9c25ee2. Read the comment docs.

@CAD97
Copy link
Owner Author

CAD97 commented Jun 17, 2020

miri failure is an expected build failure, as miri is not available on the current nightly (of which we're using stabilizations from). https://rust-lang.github.io/rustup-components-history/

@CAD97
Copy link
Owner Author

CAD97 commented Jun 23, 2020

bors: r+

This is nightly-only currently, but riding the trains to stable. However, this is complicated enough (and needed enough) that I'd rather not have to keep re-rebasing while making other improvements.

@bors
Copy link
Contributor

bors bot commented Jun 23, 2020

Build succeeded:

@bors bors bot merged commit f486cc2 into master Jun 23, 2020
@bors bors bot deleted the re-less-alloc branch June 23, 2020 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant