RFR(S): 8238723: yank_alloc_node must remove membar

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Tue Feb 18 13:35:05 UTC 2020


> What are the cases when AddPs on raw oop are present? Is it safe to 
> remove Allocate node in such cases?

I found the answer: AddPs correspond to initializing stores captured by 
Initialize node. So, it should be fine to remove them the way you do.

But now I'm curious whether elimination order (Initialize vs AddPs) 
matters or not. PhaseMacroExpand::process_users_of_allocation() has the 
following comment [1]:

     // First disconnect stores captured by Initialize node.
     // If Initialize node is eliminated first in the following code,
     // it will kill such stores and DUIterator_Last will assert.

Best regards,
Vladimir Ivanov

[1] 
http://hg.openjdk.java.net/jdk/jdk/file/tip/src/hotspot/share/opto/macro.cpp#l1028


More information about the hotspot-compiler-dev mailing list