Mercurial > hg > graal-compiler
changeset 20441:4874332f9799
8057758: Tests run TypeProfileLevel=222 crash with guarantee(0) failed: must find derived/base pair
Summary: Use TypeAryPtr::INT type with offset 0 in inline_multiplyToLen().
Reviewed-by: kvn, iveresov
author | roland |
---|---|
date | Tue, 09 Sep 2014 15:47:18 -0700 |
parents | 42460b71ba70 |
children | fd9feb55481c |
files | src/share/vm/opto/library_call.cpp |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/opto/library_call.cpp Mon Jun 23 13:33:23 2014 +0200 +++ b/src/share/vm/opto/library_call.cpp Tue Sep 09 15:47:18 2014 -0700 @@ -5794,7 +5794,8 @@ // Allocate the result array Node* zlen = _gvn.transform(new(C) AddINode(xlen, ylen)); - Node* klass_node = makecon(TypeKlassPtr::make(ciTypeArrayKlass::make(T_INT))); + ciKlass* klass = ciTypeArrayKlass::make(T_INT); + Node* klass_node = makecon(TypeKlassPtr::make(klass)); IdealKit ideal(this); @@ -5828,7 +5829,8 @@ sync_kit(ideal); z = __ value(z_alloc); - _gvn.set_type(z, TypeAryPtr::INTS); + // Can't use TypeAryPtr::INTS which uses Bottom offset. + _gvn.set_type(z, TypeOopPtr::make_from_klass(klass)); // Final sync IdealKit and GraphKit. final_sync(ideal); #undef __