Mercurial > hg > graal-compiler
diff src/share/vm/opto/macro.cpp @ 20452:f8afcfbdbf1c
8046698: assert(false) failed: only Initialize or AddP expected macro.cpp:943
Summary: PhiNode inserted between AllocateNode and Initialization node confuses allocation elimination
Reviewed-by: kvn
author | roland |
---|---|
date | Sat, 02 Aug 2014 07:06:08 +0200 |
parents | 62c54fcc0a35 |
children | e7b3d177adda |
line wrap: on
line diff
--- a/src/share/vm/opto/macro.cpp Wed Sep 10 16:06:53 2014 -0700 +++ b/src/share/vm/opto/macro.cpp Sat Aug 02 07:06:08 2014 +0200 @@ -699,6 +699,7 @@ ciType* elem_type; Node* res = alloc->result_cast(); + assert(res == NULL || res->is_CheckCastPP(), "unexpected AllocateNode result"); const TypeOopPtr* res_type = NULL; if (res != NULL) { // Could be NULL when there are no users res_type = _igvn.type(res)->isa_oopptr(); @@ -1031,6 +1032,8 @@ return false; } + assert(boxing->result_cast() == NULL, "unexpected boxing node result"); + extract_call_projections(boxing); const TypeTuple* r = boxing->tf()->range();