jdk icon indicating copy to clipboard operation
jdk copied to clipboard

8202100: Merge vm/share/InMemoryJavaCompiler w/ jdk/test/lib/compiler/InMemoryJavaCompiler

Open rsunderbabu opened this issue 1 year ago • 6 comments

Merging vm folder's InMemoryJavaCompiler into jdk folder's merge InMemoryJavaCompiler so that maintenance is easy.

Testing done for Tiers 1,2,3 test/hotspot/jtreg tests


Progress

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

Issue

  • JDK-8202100: Merge vm/share/InMemoryJavaCompiler w/ jdk/test/lib/compiler/InMemoryJavaCompiler (Enhancement - P4)

Reviewing

Using git

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

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

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 21641

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

Using diff file

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

Webrev

Link to Webrev Comment

rsunderbabu avatar Oct 22 '24 15:10 rsunderbabu

:wave: Welcome back rsunderbabu! 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.

bridgekeeper[bot] avatar Oct 22 '24 15:10 bridgekeeper[bot]

@rsunderbabu 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:

8202100: Merge vm/share/InMemoryJavaCompiler w/ jdk/test/lib/compiler/InMemoryJavaCompiler

Reviewed-by: lmesnik

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 85 new commits pushed to the master branch:

  • f0075d593db657182e1857e54710a1052e9d1cf0: 8343115: SkipIfEqual class is not used after JDK-8335946
  • 90bd544512de541cd98889bec58f419bc69a723d: 8342958: Use jvmArgs consistently in microbenchmarks
  • d49f21043b84ebcc8b9176de3a84621ca7bca8fb: 8342040: Further improve entry lookup performance for multi-release JARs
  • d2e716eb72ea603fce50f0757a766ec623ef2faf: 8331958: Update PC/SC Lite for Suse Linux to 2.3.0
  • a95374f588149d80068275a496ba4aa04b3bb4fd: 8343101: Rework BasicTest.testTemp test cases
  • 00fe9f7bdfd245791bca6b5b1b2d0a98d41af221: 8343100: Consolidate EmptyFolderTest and EmptyFolderPackageTest jpackage tests into single java file
  • 9f6d5b46ce2cfcdb39f94b8ac8621ee21f4e8740: 8343020: (fs) Add support for SecureDirectoryStream on macOS
  • 1341b81321fe77005ba68fba19c7d83e3fcb5fde: 8341666: FileInputStream doesn't support readAllBytes() or readNBytes(int) on pseudo devices
  • 52382e285fdf853c01605f8e0d7f3f5d34965802: 8338021: Support new unsigned and saturating vector operators in VectorAPI
  • e659d9da5d6198ad9c85efd6472e138a6a3961c2: 8342975: C2: Micro-optimize PhaseIdealLoop::Dominators()
  • ... and 75 more: https://git.openjdk.org/jdk/compare/2da7f2bcb066184831207ee8c1317094c9891b8a...master

As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@coleenp, @lmesnik) but any other Committer may sponsor as well.

➡️ To flag this PR as ready for integration with the above commit message, type /integrate in a new comment. (Afterwards, your sponsor types /sponsor in a new comment to perform the integration).

openjdk[bot] avatar Oct 22 '24 15:10 openjdk[bot]

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

  • hotspot
  • serviceability

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[bot] avatar Oct 22 '24 15:10 openjdk[bot]

Webrevs

mlbridge[bot] avatar Oct 22 '24 15:10 mlbridge[bot]

Thanks @coleenp and @lmesnik for the review. Only in vmTestbase/metaspace/stressHierarchy/common/generateHierarchy/GenerateHierarchyHelper.java, the batch compile is used. Even there, we could replace it with iteration of single compiles. I will remove all the instances of batch compile and keep the InMemoryJavaCompiler clean and simple.

rsunderbabu avatar Oct 23 '24 00:10 rsunderbabu

Changes

  1. Replace batch compile to single compile wherever applicable.
  2. Reuse utility classes in the merged InMemoryJavaCompiler, remove unused utility class

PS: batch compile cannot be removed as certain use cases need it.

rsunderbabu avatar Oct 23 '24 14:10 rsunderbabu

/integrate

rsunderbabu avatar Oct 29 '24 03:10 rsunderbabu

@rsunderbabu Your change (at version 17d73a6253477684faf4b3d03084953d1256b088) is now ready to be sponsored by a Committer.

openjdk[bot] avatar Oct 29 '24 03:10 openjdk[bot]

/sponsor

lmesnik avatar Oct 30 '24 15:10 lmesnik

Going to push as commit 7404ddf24a162cff445cd0a26aec446461988bc8. Since your change was applied there have been 110 commits pushed to the master branch:

  • 821c514a132e809a14648ddbb56f2ffee85fd35a: 8341692: Implement JEP 490: ZGC: Remove the Non-Generational Mode
  • 0fe15d683630646d42d3b0ff75656a9b9006d61d: 8343040: Clean up references to JRE in the launcher code
  • 9003524c8bbe5041b8d51deb6000b688a29027f8: 8342588: Shenandoah: Pull shared closures together in one header
  • f7f5198367c74a97933fba7b18aa68f340a5a59c: 8343186: hsdis build libopcodes and libbfd are not found
  • 63c19d3db586920108808866c7a094a5ae41bc22: 8341977: Replace predicate walking and cloning code for Loop Peeling with a predicate visitor
  • 158ae51be0fa5e8f90ad534df3e4f07745a443dc: 8250659: Clarify in ParameterizedType.getRawType() doc that only Class is returned
  • b6f745df5795341dab1fc049a188a9e70d563a1a: 8342489: compiler/c2/irTests/TestVectorizationMismatchedAccess.java fails on big-endian platforms
  • bd795946e777fccf797b1b69806217f988212f73: 8343037: Missing @since tag on JColorChooser.showDialog overload
  • ceaa71e73100072b73e8bb8ec57259510e92f1c5: 8342576: [macos] AppContentTest still fails after JDK-8341443 for same reason on older macOS versions
  • 40f3d50badc20db5fbfcd485447e634778d03248: 8343211: Compile error: redefinition of 'Assembler::evmovdquw(XMMRegister,KRegister,XMMRegister,bool,int)'
  • ... and 100 more: https://git.openjdk.org/jdk/compare/2da7f2bcb066184831207ee8c1317094c9891b8a...master

Your commit was automatically rebased without conflicts.

openjdk[bot] avatar Oct 30 '24 15:10 openjdk[bot]

@lmesnik @rsunderbabu Pushed as commit 7404ddf24a162cff445cd0a26aec446461988bc8.

:bulb: You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

openjdk[bot] avatar Oct 30 '24 15:10 openjdk[bot]