Skip to content

Conversation

@JohnTortugo
Copy link
Contributor

@JohnTortugo JohnTortugo commented Jun 7, 2022

Hi there, can I please get some reviews on this change? The patch is to make the code reuse the same C2_MacroAssembler object during the emission of CPU instructions of a given compilation.

As you'll see the change affects all backends. I've done my best to keep the changes minimal/simple.

I tested this locally on Linux x86_64, x86_32 and MacOS Arm32, and ARM64.

I need help testing the changes on PPC, S390, and RISCV. I cross-compiled the JVM locally and the builds are all succeeding, but I couldn't use an emulator (yet) or any real hardware (no access to one) to test the changes on these platforms. I see that GitHub actions do some tests on S390 and PPC but the tests seem to not be extensive.

Thanks in advance,
Cesar


Progress

  • Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue

Issue

  • JDK-8241503: C2: Share MacroAssembler between mach nodes during code emission

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk pull/9074/head:pull/9074
$ git checkout pull/9074

Update a local copy of the PR:
$ git checkout pull/9074
$ git pull https://git.openjdk.org/jdk pull/9074/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 9074

View PR using the GUI difftool:
$ git pr show -t 9074

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/9074.diff

@bridgekeeper
Copy link

bridgekeeper bot commented Jun 7, 2022

👋 Welcome back JohnTortugo! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk
Copy link

openjdk bot commented Jun 7, 2022

@JohnTortugo this pull request can not be integrated into master due to one or more merge conflicts. To resolve these merge conflicts and update this pull request you can run the following commands in the local repository for your personal fork:

git checkout 8241503-share-asm
git fetch https://git.openjdk.java.net/jdk master
git merge FETCH_HEAD
# resolve conflicts and follow the instructions given by git merge
git commit -m "Merge master"
git push

@openjdk
Copy link

openjdk bot commented Jun 7, 2022

⚠️ @JohnTortugo This pull request contains merges that bring in commits not present in the target repository. Since this is not a "merge style" pull request, these changes will be squashed when this pull request in integrated. If this is your intention, then please ignore this message. If you want to preserve the commit structure, you must change the title of this pull request to Merge <project>:<branch> where <project> is the name of another project in the OpenJDK organization (for example Merge jdk:master).

@openjdk openjdk bot added merge-conflict Pull request has merge conflict with target branch rfr Pull request is ready for review labels Jun 7, 2022
@openjdk
Copy link

openjdk bot commented Jun 7, 2022

@JohnTortugo The following labels will be automatically applied to this pull request:

  • hotspot
  • shenandoah

When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing lists. If you would like to change these labels, use the /label pull request command.

@openjdk openjdk bot added hotspot hotspot-dev@openjdk.org shenandoah shenandoah-dev@openjdk.org labels Jun 7, 2022
@mlbridge
Copy link

mlbridge bot commented Jun 7, 2022

Webrevs

@vnkozlov
Copy link
Contributor

vnkozlov commented Jun 8, 2022

Nice work. I think we can target this for JDK 20. Please, update it to latest JDK - there are conflicts.

@openjdk openjdk bot removed the merge-conflict Pull request has merge conflict with target branch label Jun 14, 2022
@JohnTortugo
Copy link
Contributor Author

Hi again, can someone with access to a PPC64, S360, etc. help with testing this?

@bridgekeeper
Copy link

bridgekeeper bot commented Jul 19, 2022

@JohnTortugo This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

@JohnTortugo
Copy link
Contributor Author

I'll resolve the conflicts and continue working on this. Any help testing will be appreciated.

@bridgekeeper
Copy link

bridgekeeper bot commented Aug 17, 2022

@JohnTortugo This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

@bridgekeeper
Copy link

bridgekeeper bot commented Sep 14, 2022

@JohnTortugo This pull request has been inactive for more than 8 weeks and will now be automatically closed. If you would like to continue working on this pull request in the future, feel free to reopen it! This can be done using the /open pull request command.

@bridgekeeper bridgekeeper bot closed this Sep 14, 2022
@JohnTortugo JohnTortugo deleted the 8241503-share-asm branch April 18, 2024 16:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hotspot hotspot-dev@openjdk.org rfr Pull request is ready for review shenandoah shenandoah-dev@openjdk.org

Development

Successfully merging this pull request may close these issues.

2 participants