Eliminate write barrier branches from codegen and late-gc-lowering#43384
Closed
pchintalapudi wants to merge 25 commits intoJuliaLang:masterfrom
Closed
Eliminate write barrier branches from codegen and late-gc-lowering#43384pchintalapudi wants to merge 25 commits intoJuliaLang:masterfrom
pchintalapudi wants to merge 25 commits intoJuliaLang:masterfrom
Conversation
2e71a53 to
aba66d8
Compare
aba66d8 to
3831254
Compare
This was referenced Dec 26, 2021
Member
Author
|
Since my branches are part of a fork, I've created a PR comparing this one and the data load hoisting PR immediately before it here: pchintalapudi#2 |
856923e to
7a6e5e5
Compare
Member
Author
|
Branches in late-gc-lower cannot be removed, as they are dependent on unobservable GC low bit stores and cannot be forwarded from the original type pointer. |
6e1184f to
91cb322
Compare
Member
Author
added 12 commits
January 13, 2022 20:20
added 9 commits
January 13, 2022 20:23
91cb322 to
0bf738b
Compare
0bf738b to
76157b4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Branches on the how flag of freshly allocated arrays for write barriers are unnecessary and could block escape analysis of arrays in the future. This PR proposes to eliminate those branches as generated in codegen and late-gc-lowering.
Compilation timing comparison:
PR:
Godbolt comparison:
Master: https://godbolt.org/z/5KrTqnW4e
PR: https://godbolt.org/z/oP6z4nT5a
This PR depends on #43547 and #43487 for array optimization improvements and allocation identification, and #43057 for escape analysis improvements.