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