Request for reviews (S): 6877254: Server vm crashes with "no branches off of store slice" when run with CMS and UseSuperWord (default)
Vladimir.Kozlov at Sun.COM
Tue Sep 8 22:04:27 PDT 2009
You are right, we don't need loop inside Ideal.
Tom Rodriguez wrote:
> On Sep 8, 2009, at 6:30 PM, Vladimir Kozlov wrote:
>> I have concerns about StoreCMNode::Ideal(aidx) implementation.
>> The result of memory_at() is never the same mergemem node.
>> I either mergemem->base_memory() or mergemem->in(aidx)
>> so your check will be always true.
> You're right but i think that just means we can drop that test.
>> Also mergemem nodes could be chained when the result of memory_at()
>> is also mergemem.
> I figured Ideal would be called again if there was more work to do and
> it should be a rare case anyway. The mem of a StoreCM should only be
> something besides a Store if the StoreCM is dead or if something weird
> has gone on with cloning. These changes are pretty conservative since
> we don't have a clear set of rules for when a StoreCM is dead though I
> think we could if we wanted to.
>> You can look on methods in memnode.cpp which search through
>> mergemem for stores: step_through_mergemem(), find_previous_store().
>> Changpeng Fang wrote:
>>> Need additional reviews (Tom (never) proposed the implementation, so
>>> I assume he is oked )!
>>> Comments are in the webrev.
>>> On 09/01/09 11:07, Changpeng Fang wrote:
More information about the hotspot-compiler-dev