Recognize @IntrinsicCandidate java.lang.Math.multiplyHigh - #17861
Merged
Conversation
jmesyou
force-pushed
the
intrinsics/multiplyHigh
branch
from
July 26, 2023 21:00
b41e037 to
c61c2df
Compare
jdmpapin
reviewed
Jul 26, 2023
jdmpapin
left a comment
Contributor
There was a problem hiding this comment.
Were you able to observe the transformation occurring? I think both of the below two problems would independently prevent it
Contributor
Author
|
You are right, I was wondering why I didn't see this transform happening after I opened the PR and was about to mark this WIP. I'll push the changes to enable them. |
jmesyou
force-pushed
the
intrinsics/multiplyHigh
branch
from
July 26, 2023 22:28
c61c2df to
23a477e
Compare
jmesyou
commented
Jul 26, 2023
Contributor
Author
|
I can confirm the transformation happens now! |
Contributor
Author
|
Waiting on #17892 |
java.lang.Math.multiplyHigh has been an intrinsic candidate in the Java class library since JDK17. There is a single opcode which implements the functionality of multiplyHigh. This provides an opportunity to simplify calls to multiplyHigh much like other Math methods (abs, min, max, etc). This commit adds the following: + The recognition of java.lang.Math.multiplyHigh as a recognized method. + The replacement of calls to java.lang.Math.multiplyHigh with a single lmulh node as part of RecognizedCallTransformer Signed-off-by: James You <james.you@protonmail.com>
jmesyou
force-pushed
the
intrinsics/multiplyHigh
branch
from
August 30, 2023 04:32
23a477e to
f03f364
Compare
Contributor
Author
|
@jdmpapin , ready for another pass! |
jdmpapin
approved these changes
Aug 30, 2023
Contributor
|
Jenkins test sanity all jdk21 |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
java.lang.Math.multiplyHigh has been an intrinsic candidate in the Java class library since JDK17. There is a single opcode which implements the functionality of multiplyHigh. This provides an opportunity to simplify calls to multiplyHigh much like other Math methods (abs, min, max, etc).
This commit adds the following: