jdk icon indicating copy to clipboard operation
jdk copied to clipboard

8332498: [aarch64, x86] improving OpToAssembly output for partialSubtypeCheckConstSuper Instruct

Open offamitkumar opened this issue 1 year ago • 4 comments

format method generated previously:

void partialSubtypeCheckConstSuperNode::format(PhaseRegAlloc *ra, outputStream *st) const {
  // Start at oper_input_base() and count operands
  unsigned idx0 = 1;
  unsigned idx1 = 1; 	// sub
  unsigned idx2 = idx1 + opnd_array(1)->num_edges(); 	// super_reg
  unsigned idx3 = idx2 + opnd_array(2)->num_edges(); 	// super_con
  unsigned idx4 = idx3 + opnd_array(3)->num_edges(); 	// vtemp
  unsigned idx5 = idx4 + opnd_array(4)->num_edges(); 	// tempR1
  unsigned idx6 = idx5 + opnd_array(5)->num_edges(); 	// tempR2
  unsigned idx7 = idx6 + opnd_array(6)->num_edges(); 	// tempR3
  st->print_raw("partialSubtypeCheck ");
  opnd_array(0)->int_format(ra, this, st); // result
  st->print_raw(", ");
  opnd_array(1)->ext_format(ra, this,idx1, st); // sub
  st->print_raw(", super");
}

format method generated with this change:

void partialSubtypeCheckConstSuperNode::format(PhaseRegAlloc *ra, outputStream *st) const {
  // Start at oper_input_base() and count operands
  unsigned idx0 = 1;
  unsigned idx1 = 1; 	// sub
  unsigned idx2 = idx1 + opnd_array(1)->num_edges(); 	// super_reg
  unsigned idx3 = idx2 + opnd_array(2)->num_edges(); 	// super_con
  unsigned idx4 = idx3 + opnd_array(3)->num_edges(); 	// vtemp
  unsigned idx5 = idx4 + opnd_array(4)->num_edges(); 	// tempR1
  unsigned idx6 = idx5 + opnd_array(5)->num_edges(); 	// tempR2
  unsigned idx7 = idx6 + opnd_array(6)->num_edges(); 	// tempR3
  st->print_raw("partialSubtypeCheck ");
  opnd_array(0)->int_format(ra, this, st); // result
  st->print_raw(", ");
  opnd_array(1)->ext_format(ra, this,idx1, st); // sub
  st->print_raw(", ");
  opnd_array(2)->ext_format(ra, this,idx2, st); // super_reg
  st->print_raw(", ");
  opnd_array(3)->ext_format(ra, this,idx3, st); // super_con
}

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-8332498: [aarch64, x86] improving OpToAssembly output for partialSubtypeCheckConstSuper Instruct (Bug - P4)

Reviewing

Using git

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

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

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 19295

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

Using diff file

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

Webrev

Link to Webrev Comment

offamitkumar avatar May 19 '24 15:05 offamitkumar

:wave: Welcome back amitkumar! 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 May 19 '24 15:05 bridgekeeper[bot]

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

8332498: [aarch64, x86] improving OpToAssembly output for partialSubtypeCheckConstSuper Instruct

Reviewed-by: kvn, thartmann

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

  • 5f2b8d0224868d09ff54e93fabe4a6db177aef8f: 8332448: Make SpaceMangler inherit AllStatic
  • 8a49d47cf3e845ddccaaeafeee9dfe6ab3180ded: 8332462: ubsan: c1_ValueStack.hpp:229:49: runtime error: load of value 171, which is not a valid value for type 'bool'
  • ce99198e3a6dc81865c518b1fe4a67e93b8ebdd1: 8332181: Deprecate for removal the MulticastSocket.send(DatagramPacket, byte) and setTTL/getTTL methods on DatagramSocketImpl and MulticastSocket
  • f5ab7dff402a3152f5d5736cc6521b4be617eccf: 8332494: java/util/zip/EntryCount64k.java failing with java.lang.RuntimeException: '\A\Z' missing from stderr
  • 9f7779305c4ccbb86bb0e6d0ed8bc92a4b8f3b9d: 8332495: java/util/logging/LoggingDeadlock2.java fails with AssertionError: Some tests failed
  • fb45bab8e15d7dc59fe801922d768d377d3f44cd: 8075917: The regression-swing case failed as the text on label is not painted red with the GTK L&F
  • 6e805127f8091d46205165746d7c59a40703958d: 8332545: Fix handling of HTML5 entities in Markdown comments
  • b78613b6813a85662fb2af2004d0b68002fe471d: 8332154: Memory leak in SynchronousQueue
  • 7652f9811bfddf08650b0c3277012074873deade: 8331885: C2: meet between unloaded and speculative types is not symmetric
  • d6b7f9b170b6ce4f7275cc7595b71b9a3e93c133: 8331851: Add specific regression leap year tests for Calendar.roll()
  • ... and 14 more: https://git.openjdk.org/jdk/compare/f1ce9b0ecce9b506f5bf7a66fcf03c93b9ae8fed...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.

➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.

openjdk[bot] avatar May 19 '24 15:05 openjdk[bot]

@offamitkumar The following label will be automatically applied to this pull request:

  • hotspot-compiler

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

openjdk[bot] avatar May 19 '24 15:05 openjdk[bot]

Webrevs

mlbridge[bot] avatar May 19 '24 15:05 mlbridge[bot]

@theRealAph would you review this trivial fix.

offamitkumar avatar May 20 '24 14:05 offamitkumar

Thanks Tobias & Vladimir for review. I guess we are good to go now as we have 2 reviews.

/integrate

offamitkumar avatar May 21 '24 08:05 offamitkumar

Going to push as commit 7ffc9997bd4a93cefe30f672a5f0e9c49215d2c7. Since your change was applied there have been 27 commits pushed to the master branch:

  • e529101ea30b49a6601088ce5ab81df590fc52f0: 8332473: ubsan: growableArray.hpp:290:10: runtime error: null pointer passed as argument 1, which is declared to never be null
  • 414a7fdc5e4aae4cec25b0847bb7c163f271b4e0: 8311175: Move BufWriter::asByteBuffer to BufWriterImpl
  • 451cc239050f097060be927171fe0e46962f3356: 8332486: ClassFile API ArrayIndexOutOfBoundsException with label metadata
  • 5f2b8d0224868d09ff54e93fabe4a6db177aef8f: 8332448: Make SpaceMangler inherit AllStatic
  • 8a49d47cf3e845ddccaaeafeee9dfe6ab3180ded: 8332462: ubsan: c1_ValueStack.hpp:229:49: runtime error: load of value 171, which is not a valid value for type 'bool'
  • ce99198e3a6dc81865c518b1fe4a67e93b8ebdd1: 8332181: Deprecate for removal the MulticastSocket.send(DatagramPacket, byte) and setTTL/getTTL methods on DatagramSocketImpl and MulticastSocket
  • f5ab7dff402a3152f5d5736cc6521b4be617eccf: 8332494: java/util/zip/EntryCount64k.java failing with java.lang.RuntimeException: '\A\Z' missing from stderr
  • 9f7779305c4ccbb86bb0e6d0ed8bc92a4b8f3b9d: 8332495: java/util/logging/LoggingDeadlock2.java fails with AssertionError: Some tests failed
  • fb45bab8e15d7dc59fe801922d768d377d3f44cd: 8075917: The regression-swing case failed as the text on label is not painted red with the GTK L&F
  • 6e805127f8091d46205165746d7c59a40703958d: 8332545: Fix handling of HTML5 entities in Markdown comments
  • ... and 17 more: https://git.openjdk.org/jdk/compare/f1ce9b0ecce9b506f5bf7a66fcf03c93b9ae8fed...master

Your commit was automatically rebased without conflicts.

openjdk[bot] avatar May 21 '24 08:05 openjdk[bot]

@offamitkumar Pushed as commit 7ffc9997bd4a93cefe30f672a5f0e9c49215d2c7.

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

openjdk[bot] avatar May 21 '24 08:05 openjdk[bot]