Integrated: 8230382: Clean up ConvI2L, CastII and CastLL::Ideal methods

Emanuel Peter duke at openjdk.java.net
Mon Feb 28 12:16:53 UTC 2022


On Thu, 24 Feb 2022 13:03:31 GMT, Emanuel Peter <duke at openjdk.java.net> wrote:

> This is a cleanup job: move code from `::Ideal` methods that only change types to `::Value` where the code belongs.
> 
> `CastLLNode::Ideal` was introduced in [JDK-8229496](https://bugs.openjdk.java.net/browse/JDK-8229496) and reverted (deleted) in [JDK-8242108](https://bugs.openjdk.java.net/browse/JDK-8242108).
> Currently, `CastLLNode` does not have its own `::Ideal` method. Hence, I changed nothing for it.
> 
> For `ConvI2LNode` and `CastIINode`, I went through a process of first copying the relevant code to `::Value`, calling it from `::Ideal` and asserting that they deliver equivalent results.
> These intermediate code results can be found in the comments of [JDK-8230382](https://bugs.openjdk.java.net/browse/JDK-8230382).
> I also tried to make the two code versions more similar, where they were unnecessarily different (used `can_reshape` instead of `igvn != NULL`, and removed the dead Overflow/wraparound case which can never happen).
> I ran tests: final code and intermediate code versions. Ensures code behaves equivalent and nothing broke.

This pull request has now been integrated.

Changeset: 06cadb36
Author:    Emanuel Peter <emanuel.peter at oracle.com>
Committer: Tobias Hartmann <thartmann at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/06cadb36e05a86a528c8f3bc64c1a42b47ca94a0
Stats:     162 lines in 2 files changed: 72 ins; 80 del; 10 mod

8230382: Clean up ConvI2L, CastII and CastLL::Ideal methods

Reviewed-by: thartmann, roland

-------------

PR: https://git.openjdk.java.net/jdk/pull/7609


More information about the hotspot-compiler-dev mailing list