Mercurial > hg > truffle
changeset 12336:5186dcaca431
Merge
author | jiangli |
---|---|
date | Fri, 27 Sep 2013 13:53:43 -0400 |
parents | d68894a09c7c (diff) 24250c363d7f (current diff) |
children | d0cfa6502dfe |
files | src/share/vm/c1/c1_Runtime1.cpp test/gc/metaspace/ClassMetaspaceSizeInJmapHeap.java test/runtime/6878713/Test6878713.sh test/runtime/6878713/testcase.jar test/runtime/7020373/Test7020373.sh test/runtime/7020373/testcase.jar |
diffstat | 1 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/c1/c1_Runtime1.cpp Thu Sep 26 13:41:34 2013 -0700 +++ b/src/share/vm/c1/c1_Runtime1.cpp Fri Sep 27 13:53:43 2013 -0400 @@ -1078,14 +1078,17 @@ // replace instructions // first replace the tail, then the call #ifdef ARM - if(load_klass_or_mirror_patch_id && !VM_Version::supports_movw()) { + if((load_klass_or_mirror_patch_id || + stub_id == Runtime1::load_appendix_patching_id) && + !VM_Version::supports_movw()) { nmethod* nm = CodeCache::find_nmethod(instr_pc); address addr = NULL; assert(nm != NULL, "invalid nmethod_pc"); RelocIterator mds(nm, copy_buff, copy_buff + 1); while (mds.next()) { if (mds.type() == relocInfo::oop_type) { - assert(stub_id == Runtime1::load_mirror_patching_id, "wrong stub id"); + assert(stub_id == Runtime1::load_mirror_patching_id || + stub_id == Runtime1::load_appendix_patching_id, "wrong stub id"); oop_Relocation* r = mds.oop_reloc(); addr = (address)r->oop_addr(); break;