-
Notifications
You must be signed in to change notification settings - Fork 5.8k
8335007: Inline OopMapCache table #19882
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
8335007: Inline OopMapCache table #19882
Conversation
👋 Welcome back stuefe! A progress list of the required criteria for merging this PR into |
@tstuefe This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 40 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. ➡️ To integrate this PR with the above commit message to the |
mac os x64 bug unrelated |
Webrevs
|
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.
I'm not a maintainer of this code, but this change looks good to me.
I reacted a little bit when I saw the _size
usage in the array expression, thinking that you were using a member variable. It turns out that it is just a constant with a very unconventionally named (for HotSpot) constant. Would anyone object if we/I changed the name of these constants in a follow-up RFE?
I am fine with renaming it to something that does not look like a member. "size" ? "tablesize"? Also, make it a static constexpr? Do we still use enums for constants? |
The class above uses names the constants like Most of us try to transition away from enums and instead use explicit type (Not everyone, though). I think there's no consensus around const vs constxpr, but I don't mind seeing things changed to constexpr. |
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.
This change looks fine. If you change _size, you should do the same with _probe_depth. Until recently, there's not a lot of maintenance work in this code, so if you leave it, I'm fine with that.
If you do change it, change it with this PR please. |
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.
I am okay with doing this without any further renames.
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.
This is also fine.
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.
Looks good. Thanks!
Thanks everyone /integrate |
Going to push as commit 50dd962.
Your commit was automatically rebased without conflicts. |
OopMapCache uses a (closed hashing) table. The table is C-heap allocated. OopMapCache itself is also C-heap allocated. Since table size is fixed, we can just inline the table to OopMapCache and save one unnecessary pointer-hop on lookup.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/19882/head:pull/19882
$ git checkout pull/19882
Update a local copy of the PR:
$ git checkout pull/19882
$ git pull https://git.openjdk.org/jdk.git pull/19882/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 19882
View PR using the GUI difftool:
$ git pr show -t 19882
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/19882.diff
Webrev
Link to Webrev Comment