-
Notifications
You must be signed in to change notification settings - Fork 27
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
Bytecode locals compaction #224
Closed
asotona
wants to merge
33
commits into
openjdk:code-reflection
from
asotona:bytecode-locals-compaction
+582
−201
Closed
Changes from all commits
Commits
Show all changes
33 commits
Select commit
Hold shift + click to select a range
50975b3
Added Op operand values declaration dominance verification to TestSma…
asotona 17bb538
fixed lifting of variables without dominant initial store
asotona 014ee75
Roundtrip stabilization - deferred redundant var initializations with…
asotona 191bb20
TestSmallCorpus actual numbers
asotona 59c2cec
restored roundtrip stability - fixed LocalsTypeMapper
asotona ae7f0cc
minor corrections
asotona 60e3d36
minor corrections
asotona 58dbaf5
applied the suggested changes
asotona 6a730b0
minor adjustments
asotona eb958c2
implemented LocalsCompactor
asotona c473ea4
Implementation of LocalsCompactor
asotona ca591d8
LocalsCompactor plugged into BytecodeGenerator
asotona b36c96e
Lifting compacted variables fix - work in progress
asotona 3c415e4
Lifting compacted variables fix - work in progress
asotona 917796e
Lifting compacted variables fix - work in progress
asotona 788bb83
Added deferCache to BytecodeGenerator
asotona 82c891f
BytecodeLift accepts Lookup for LocalsTypeMapper to test class assign…
asotona 1da3d5d
BytecodeLift fix
asotona 118aeed
Enabled slots compaction for all generated bytecode
asotona 11c8786
Merge remote-tracking branch 'babylon/code-reflection' into bytecode-…
asotona 582101b
fixed -0 iinc index :)
asotona 8ea5bb2
TestSmallCorpus fixes
asotona a487c5a
TestSmallCorpus fixes
asotona 73ff9a2
LocalsCompactor improvements
asotona 670811c
disabled TestSmallCorpus
asotona 0df993c
typo
asotona 6b83a1b
LocalsCompactor improvements
asotona d4c0b59
LocalsCompactor re-mapping also double slots
asotona 6f71c8e
added comments
asotona cadb366
added comments
asotona 015b1c7
Removed oboslete lookup argument.
asotona 0989c96
minor cleanup
asotona 32938a9
fixed typo
asotona File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
Oops, something went wrong.
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.
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.
Use
computeIfAbsent
?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.
Unfortunately
computeIfAbsent
throwsConcurrentModificationException
in this case. This method is not usable when the computation causes more additions to the map.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.
Ah of course, its recursive.