RFR: 8262837: handle split_USE correctly [v3]
kuaiwei
github.com+1981974+kuaiwei at openjdk.java.net
Wed Mar 3 08:40:13 UTC 2021
> 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.
kuaiwei has updated the pull request incrementally with one additional commit since the last revision:
8262837: handle split_USE correctly
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/2791/files
- new: https://git.openjdk.java.net/jdk/pull/2791/files/6ef827c2..1fa77b7f
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2791&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2791&range=01-02
Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod
Patch: https://git.openjdk.java.net/jdk/pull/2791.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/2791/head:pull/2791
PR: https://git.openjdk.java.net/jdk/pull/2791
More information about the hotspot-compiler-dev
mailing list