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
8253757: Add LLVM-based backend for hsdis #7531
Conversation
👋 Welcome back ihse! A progress list of the required criteria for merging this PR into |
/contributor add ihse luhenry jvernee ngasson |
@magicus Could not parse
|
/contributor add ihse |
@magicus |
@magicus |
@magicus |
@magicus |
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.
Build changes look good. I can't comment on the hsdis implementation.
@magicus 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 9 new commits pushed to the
Please see this link for an up-to-date comparison between the source branch of this pull request and the ➡️ To integrate this PR with the above commit message to the |
Thanks again for pushing that forward! It's always good to have an alternative especially for porting to new platforms and architectures. |
/integrate |
Going to push as commit d7a706a.
Your commit was automatically rebased without conflicts. |
Third time's a charm! After the two previous closed PRs for this issue, I think this functionality is finally ready to enter mainline. :)
This code is at it's core the same as the previous PR. The main C++ hsdis implementation is still the one @luhenry wrote, with some changes. As in the previous PR, I extracted the LLVM-specific part into a separate file. In addition to the last PR, I have also fixed a warning, and added a patch inspired by @nick-arm for getting past instructions unknown to LLVM.
Thanks to the prototype written by @JornVernee (and his graciously providing me with a working version of LLVM build for Windows), this PR now has full support for LLVM on Windows (as well as Linux and macOS).
Finally, I have cleaned up the integration in autoconf and Hsdis.gmk, and written a thorough guide in the README on how to build witth LLVM, on Windows and on saner platforms. :)
I'm pretty sure this means that all comments and criticism in the previous PR has been addressed.
Huge thanks to everyone who has helped me with getting this PR in place. I have a hard time remember a feature that has been so tricky to get in place, for something to seemingly simple...
Progress
Issue
Reviewers
Contributors
<ihse@openjdk.org>
<luhenry@openjdk.org>
<jvernee@openjdk.org>
<ngasson@openjdk.org>
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/7531/head:pull/7531
$ git checkout pull/7531
Update a local copy of the PR:
$ git checkout pull/7531
$ git pull https://git.openjdk.java.net/jdk pull/7531/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 7531
View PR using the GUI difftool:
$ git pr show -t 7531
Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/7531.diff