RFR: 8349139: C2: Div looses dependency on condition that guarantees divisor not null in counted loop [v2]
Roland Westrelin
roland at openjdk.org
Fri Mar 14 14:11:52 UTC 2025
On Tue, 18 Feb 2025 12:30:21 GMT, Roland Westrelin <roland at openjdk.org> wrote:
> For this bug, I think a more general fix is to try to compare the type of the `Phi` with that of the input it is going to be replaced with. If the former is not wider than the latter then we add a `CastNode`, since the cast is only about value range, not strict dependency, we can use `CarryDependency` instead of `UnconditionalDependency`. Am I right?
There's no `CarryDependency`. Is your question about `RegularDependency` or `StrongDependency`?
About the `Phi` type: I'm not sure I understood the comment correctly. Are you suggesting the fix shouldn't be triggered by pre/main/post insertion but rather whenever the test you mention passes? When then? igvn? Or are you suggesting to only apply the fix during pre/main/post insertion when the test you mention passes?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/23617#issuecomment-2724816338
More information about the hotspot-compiler-dev
mailing list