-
Notifications
You must be signed in to change notification settings - Fork 6.1k
8363837: Make StubRoutines::crc_table_adr() into platform-specific method #26434
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
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -304,6 +304,9 @@ class StubRoutines: AllStatic { | |
| return dest_uninitialized ? _arrayof_oop_disjoint_arraycopy_uninit : _arrayof_oop_disjoint_arraycopy; | ||
| } | ||
|
|
||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could we have a comment here to note that 1) this method is implemented in architecture-specific code 2) any table that is returned must be allocated once-only in foreign memory rather generated in the code cache. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Done! |
||
| static address crc_table_addr(); | ||
| static address crc32c_table_addr(); | ||
|
|
||
| typedef void (*DataCacheWritebackStub)(void *); | ||
| static DataCacheWritebackStub DataCacheWriteback_stub() { return CAST_TO_FN_PTR(DataCacheWritebackStub, _data_cache_writeback); } | ||
| typedef void (*DataCacheWritebackSyncStub)(bool); | ||
|
|
||
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.
Could you please export via
CompilerToVM::Data?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.
@mur47x111 sure. But do you need also
crc32c_table_addr? And I don't see initialization. Can you prepare full patch for JVMCI which I can integrate?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.
Initialization is done by
SET_TRIGFUNC_OR_NULL(). I see.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.
Okay, I will add crc32c_table_addr myself then.
Uh oh!
There was an error while loading. Please reload this page.
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 see that crc32c_table_addr() failed on Aarch64 because we should not call it.
I will go with your patch @mur47x111 then and let you solve crc32c.
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.
Done
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.
Thanks! I also ran across the
ShouldNotCallThison aarch64 and decided to drop that because anyway we don't usecrc32c_table_addr. I thinkcrc32c_table_addris only used internally in HotSpot but not via intrinsification call. Let's only exportcrc_table_addrfor now. I will examine thecrc32c_table_addrlaterThere 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.
Thank you, @mur47x111