hotspot/src/cpu/arm/vm/interp_masm_arm.cpp
changeset 46961 c9094b1e5f87
parent 46427 54713555867e
equal deleted inserted replaced
46959:1863b25339a9 46961:c9094b1e5f87
   298 
   298 
   299   Register cache = result;
   299   Register cache = result;
   300   // load pointer for resolved_references[] objArray
   300   // load pointer for resolved_references[] objArray
   301   ldr(cache, Address(result, ConstantPool::cache_offset_in_bytes()));
   301   ldr(cache, Address(result, ConstantPool::cache_offset_in_bytes()));
   302   ldr(cache, Address(result, ConstantPoolCache::resolved_references_offset_in_bytes()));
   302   ldr(cache, Address(result, ConstantPoolCache::resolved_references_offset_in_bytes()));
   303   // JNIHandles::resolve(result)
   303   resolve_oop_handle(cache);
   304   ldr(cache, Address(cache, 0));
       
   305   // Add in the index
   304   // Add in the index
   306   // convert from field index to resolved_references() index and from
   305   // convert from field index to resolved_references() index and from
   307   // word index to byte offset. Since this is a java object, it can be compressed
   306   // word index to byte offset. Since this is a java object, it can be compressed
   308   add(cache, cache, AsmOperand(index, lsl, LogBytesPerHeapOop));
   307   add(cache, cache, AsmOperand(index, lsl, LogBytesPerHeapOop));
   309   load_heap_oop(result, Address(cache, arrayOopDesc::base_offset_in_bytes(T_OBJECT)));
   308   load_heap_oop(result, Address(cache, arrayOopDesc::base_offset_in_bytes(T_OBJECT)));