From d100f1d6ff8ee9d909316f9d10bdf1aed4b8ca4a Mon Sep 17 00:00:00 2001 From: kvn Date: Wed, 19 Sep 2012 13:58:31 -0700 Subject: [PATCH] 7198606: Improve VM optimization Summary: Remove incorrect code in OptimizeFill optimization. Reviewed-by: roland, twisti --- src/share/vm/opto/loopTransform.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/share/vm/opto/loopTransform.cpp b/src/share/vm/opto/loopTransform.cpp index 8d88242ff..68bca9c36 100644 --- a/src/share/vm/opto/loopTransform.cpp +++ b/src/share/vm/opto/loopTransform.cpp @@ -2716,6 +2716,8 @@ bool PhaseIdealLoop::intrinsify_fill(IdealLoopTree* lpt) { result_mem = new (C, 1) ProjNode(call,TypeFunc::Memory); _igvn.register_new_node_with_optimizer(result_mem); +/* Disable following optimization until proper fix (add missing checks). + // If this fill is tightly coupled to an allocation and overwrites // the whole body, allow it to take over the zeroing. AllocateNode* alloc = AllocateNode::Ideal_allocation(base, this); @@ -2739,6 +2741,7 @@ bool PhaseIdealLoop::intrinsify_fill(IdealLoopTree* lpt) { #endif } } +*/ // Redirect the old control and memory edges that are outside the loop. Node* exit = head->loopexit()->proj_out(0); -- GitLab