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