-
Notifications
You must be signed in to change notification settings - Fork 738
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
Add zNext support #20507
Add zNext support #20507
Conversation
01b9c78
to
93008c2
Compare
@joransiu last set of recommendations were addressed. Can I request for another review? |
93008c2
to
22a3427
Compare
22a3427
to
246dcdf
Compare
246dcdf
to
1a81ab2
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.
I was largely looking for structural issues. I'll defer to Joran's review for the zMetis details.
Does this PR have any dependencies on eclipse-omr/omr#7525, either breaking or otherwise? |
Yes, there is a dependency and we need to get this and OMR PR merged together (Given the area of the code these two PR touches). |
Jenkins test sanity.functional,sanity.jdk zlinux,zos jdk21 depends eclipse-omr/omr#7525 |
Jenkins test sanity.functional,sanity.openjdk zlinux,zos jdk21 depends eclipse-omr/omr#7525 |
Jenkins test sanity.functional,sanity.openjdk zlinux jdk21 depends eclipse-omr/omr#7525 |
1a81ab2
to
810296f
Compare
Given the merge-conflict in OMR PR, I have made one more change as part of DAA exploitation work to port the required changes from OMR to OpenJ9 - As it fits with DAA acceleration work, I have squashed the change with that commit. @VermaSh Can I request you to take a look at the change https://github.com/eclipse-openj9/openj9/compare/1a81ab2940ed8f422baab14c560c82f8e7c71f5d..810296f5bd5eae02d937c8e82cd1b119edf9f5b4 to ensure those are the only changes needed. Take a look at the comment eclipse-omr/omr#7525 (comment) |
@r30shah That seems to have all needed changes. |
810296f
to
7c39e69
Compare
Jenkins test sanity.functional,sanity.openjdk zlinux jdk21 depends eclipse/omr@7525 |
Seems like build job failed https://openj9-jenkins.osuosl.org/job/Build_JDK21_s390x_linux_Personal/479/console 1 minute into starting without much helpful message for the reason. Launching another build. |
Jenkins test sanity.functional,sanity.openjdk zlinux jdk21 depends eclipse-omr/omr#7525 |
Please see the build failure in the acceptance test build. |
275d2fe
to
add57df
Compare
Signed-off-by: Spencer Comin <[email protected]>
When running on non zNext hardware, emulating zNext instructions allows testing the exploitation of zNext instructions. Following are the summary of changes being made with this commit. - Add infrastructure to emulate instructions - Emulate following zNext instructions 1. Load indexed address 2. Bit deposit and extract 3. Count leading and trailing zeros Co-authored-by: Dhruv Chopra <[email protected]> Co-authored-by: Shubham Verma <[email protected]> Co-authored-by: Spencer Comin <[email protected]> Signed-off-by: Spencer Comin <[email protected]>
Accelerate Integer.expand, Integer.compress, Long.expand, and Long.compress. These methods map directly to the BDEPG and BEXTG instructions in zNext. - Check if emulation for zNext instruction is enabled and if it is, enable the acceleration of compress and expand with emulation. Signed-off-by: Spencer Comin <[email protected]>
add57df
to
a91942b
Compare
Jenkins line endings check |
Accelerate DAA ExternalDecimal.checkExternalDecimal api for verifying Zoned/External decimals using zNext instruction, Vector Test Zoned. This change: - Adds IL opCode for the ExternalDecimal.checkExternalDecimal - Updates IL generator to recognize and inline ExternalDecimal.checkExternalDecimal - Adds evaluator to accelerate the api call via Vector Test Zoned Signed-off-by: Shubham Verma <[email protected]>
Signed-off-by: Rahil Shah <[email protected]>
…al api Signed-off-by: Rahil Shah <[email protected]>
a91942b
to
7366e65
Compare
Jenkins test sanity.functional,sanity.openjdk zlinux jdk21 depends eclipse-omr/omr#7525 |
Changes in this PR adds following supporting changes for zNext processor exploitation.
Long.compress. These methods map directly to the BDEPG and BEXTG
instructions in zNext.