Integrated: 8262837: handle split_USE correctly
kuaiwei
github.com+1981974+kuaiwei at openjdk.java.net
Thu Mar 4 18:23:44 UTC 2021
On Tue, 2 Mar 2021 09:26:21 GMT, kuaiwei <github.com+1981974+kuaiwei at openjdk.org> wrote:
> I look into reg_split.cpp and found a potential issue.
> Function split_USE usually creates a new spill copy node, but in some cases it just connect def to use and no new node created. But in caller side, they will assume it will create a new node. The code is like:
> ++
> maxlrg = split_USE(...)
> if (!maxlrg) {
> return 0;
> }
> insidx++; // Reset iterator to skip USE side split
> So if no node is created, the iterator index is updated and the next instruction will be skipped.
>
> The change is let split_USE return the new node count, so the caller can update its index and maxlrg.
This pull request has now been integrated.
Changeset: f56c9186
Author: Kuai Wei <kuaiwei.kw at alibaba-inc.com>
Committer: Vladimir Kozlov <kvn at openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/f56c9186
Stats: 50 lines in 2 files changed: 14 ins; 2 del; 34 mod
8262837: handle split_USE correctly
Reviewed-by: kvn
-------------
PR: https://git.openjdk.java.net/jdk/pull/2791
More information about the hotspot-compiler-dev
mailing list