Request reviews (S): 6896370: CTW fails share/vm/opto/matcher.cpp:1475 "duplicating node that's already been matched"

Vladimir Kozlov Vladimir.Kozlov at Sun.COM
Wed Nov 4 10:43:17 PST 2009


http://cr.openjdk.java.net/~kvn/6896370/webrev.00

Fixed 6896370: CTW fails share/vm/opto/matcher.cpp:1475 "duplicating node that's already been matched"

Problem:
It is compressed oops related.
LoadN node is not marked as shared since the method
Matcher::find_shared() misses the case of address phi
which has AddP nodes as input (after split through phi).
As result the special code for DecodeN in address
expressions is not executed.

Solution:
Move DecodeN code outside the memory nodes only code.
I also noticed that several new memory nodes are missing
from the switch's cases in find_shared(). Instead of
adding them I replaced cases with common code for
stores and loads at the end of the switch.

Reviewed by:

Fix verified (y/n): y, test

Other testing:
JPRT, CTW



More information about the hotspot-compiler-dev mailing list