src/share/vm/ci/ciObjectFactory.cpp

changeset 1573
dd57230ba8fe
parent 1572
97125851f396
child 1577
4ce7240d622c
equal deleted inserted replaced
1572:97125851f396 1573:dd57230ba8fe
335 } else if (o->is_methodData()) { 335 } else if (o->is_methodData()) {
336 methodDataHandle h_md(THREAD, (methodDataOop)o); 336 methodDataHandle h_md(THREAD, (methodDataOop)o);
337 return new (arena()) ciMethodData(h_md); 337 return new (arena()) ciMethodData(h_md);
338 } else if (o->is_instance()) { 338 } else if (o->is_instance()) {
339 instanceHandle h_i(THREAD, (instanceOop)o); 339 instanceHandle h_i(THREAD, (instanceOop)o);
340 return new (arena()) ciInstance(h_i); 340 if (java_dyn_CallSite::is_instance(o))
341 return new (arena()) ciCallSite(h_i);
342 else if (java_dyn_MethodHandle::is_instance(o))
343 return new (arena()) ciMethodHandle(h_i);
344 else
345 return new (arena()) ciInstance(h_i);
341 } else if (o->is_objArray()) { 346 } else if (o->is_objArray()) {
342 objArrayHandle h_oa(THREAD, (objArrayOop)o); 347 objArrayHandle h_oa(THREAD, (objArrayOop)o);
343 return new (arena()) ciObjArray(h_oa); 348 return new (arena()) ciObjArray(h_oa);
344 } else if (o->is_typeArray()) { 349 } else if (o->is_typeArray()) {
345 typeArrayHandle h_ta(THREAD, (typeArrayOop)o); 350 typeArrayHandle h_ta(THREAD, (typeArrayOop)o);

mercurial