RFR: ShenandoahWBMemProjNode doesn't need to subclass ProjNode

Aleksey Shipilev shade at redhat.com
Mon Oct 22 13:24:41 UTC 2018


On 10/22/2018 02:49 PM, Roland Westrelin wrote:
>> *) This looks weird: it checks that n->in(0) is NULL, and then dereferences through it?
>>
>> 1091     } else if (n->Opcode() == Op_ShenandoahWBMemProj) {
>> 1092       assert(n->in(0) == NULL && n->in(ShenandoahWBMemProjNode::WriteBarrier)->Opcode() ==
>> Op_ShenandoahWriteBarrier, "strange ShenandoahWBMemProj");
>>
>> Or maybe I am misreading it, and input 0 is actually ShenandoahWBMemProjNode::Control (implied to be
>> at zero always?) and ShenandoahWBMemProjNode::WriteBarrier is 1?
> 
> Yes, 0 is control which should remains null. 1 is the write barrier.

OK.

-Aleksey



More information about the shenandoah-dev mailing list