[9] RFR(M) 8162496: missing precedence edge for anti_dependence

Vladimir Kozlov vladimir.kozlov at oracle.com
Thu Aug 18 14:14:53 UTC 2016


http://cr.openjdk.java.net/~kvn/8162496/webrev/
https://bugs.openjdk.java.net/browse/JDK-8162496

JDK-8157306 original changes [2] added an assert for anti_dependence edges check after GCM. Unfortunately it triggered more failures than fixed by JDK-8157306 changes. Since 8157306 fix was critical 
for AARCH64 project we decided to push it without assert and file 8162496 bug for additional.

The assert exposed several problems in Implicit Null optimization in LCM.
1. When store is moved into the block with null check there was no anti-dependences edges added to dependent loads in the block.
2. Control edge of moved node was not updated correctly resulting in placing the node above its control.

Ran RBT.

Thanks,
Vladimir

[1] https://bugs.openjdk.java.net/browse/JDK-8157306
[2] http://cr.openjdk.java.net/~aph/8157306.1/


More information about the hotspot-compiler-dev mailing list