-
Notifications
You must be signed in to change notification settings - Fork 728
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
TransformIndirectLoadChain at JITServer #20767
base: master
Are you sure you want to change the base?
TransformIndirectLoadChain at JITServer #20767
Conversation
ed4300a
to
8eef209
Compare
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.
Is it possible to do some refactoring to avoid code duplication? The risk is that any fixes to dereferenceStructPointerChain()
or verifyFieldAccess()
are not going to be ported to transformIndirectLoadChainServerImpl
It is possible, the main challenge is that the non-server implementation assumes VM access throughout the code, so we need to do some major re-writing. |
How about moving all the JITServer changes down into
This one, on failure it returns NULL, much like the original dereferenceStructPointerChain. On success it returns a pointer to where the data is going to be found.
and it calls |
8eef209
to
e4c608a
Compare
I have yet to implement the union, but I just want to make sure the overall structure of the code is correct. |
e4c608a
to
eeebb5d
Compare
I have yet to organise the commits. Vector API now works for both server and non-server mode. I also had to bypass |
eeebb5d
to
c7311bc
Compare
ea629a8
to
8da6728
Compare
c39d9a2
to
62b720a
Compare
62b720a
to
176c759
Compare
isArrayWithConstantElements(symRef, comp)); | ||
} | ||
|
||
if (knotIndex != TR::KnownObjectTable::UNKNOWN) |
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.
The original code has a test on value
being non-null. Is this test equivalent?
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.
Yes, it should be
176c759
to
0ce7d9c
Compare
0ce7d9c
to
150fa69
Compare
With |
I am thinking that we can delete OMR::KnownObjectTable::updateKnownObjectTableAtServer(Index index, uintptr_t *objectReferenceLocation) from OMR since it's only used in OpenJ9 |
jenkins compile xlinux jdk21 |
jenkins compile all jdk8,jdk21 |
Implement TransformIndirectLoadChain partially for the JITServer so it can employ the Vector API during optimization. Signed-off-by: Luke Li <[email protected]>
150fa69
to
ee700f1
Compare
jenkins test sanity all jdk23 |
Implement TransformIndirectLoadChain partially for the JITServer so it can employ the Vector API during optimization.