8042052: assert(t != NULL) failed: must set before get
Summary: Added missing call to _gvn.transform to make sure the type of the PhiNode is recorded in the gvn.
Reviewed-by: kvn
Contributed-by: Tobias Hartmann <tobias.hartmann@oracle.com>
--- a/hotspot/src/share/vm/opto/library_call.cpp Fri May 02 19:10:24 2014 -0700
+++ b/hotspot/src/share/vm/opto/library_call.cpp Mon May 05 15:10:43 2014 +0200
@@ -1733,7 +1733,7 @@
result_region->init_req(2, control());
result_val->init_req(2, value);
set_control(_gvn.transform(result_region));
- return result_val;
+ return _gvn.transform(result_val);
} else {
return result;
}
@@ -1928,7 +1928,7 @@
// control from finish_pow_exp is now input to the region node
region_node->set_req(2, control());
// the result from finish_pow_exp is now input to the phi node
- phi_node->init_req(2, _gvn.transform(result));
+ phi_node->init_req(2, result);
set_control(_gvn.transform(region_node));
record_for_igvn(region_node);
set_result(_gvn.transform(phi_node));