Print this page


Split Close
Expand all
Collapse all
          --- old/src/share/vm/interpreter/bytecodeTracer.cpp
          +++ new/src/share/vm/interpreter/bytecodeTracer.cpp
↓ open down ↓ 233 lines elided ↑ open up ↑
 234  234    }
 235  235  
 236  236    if (cache != NULL && constantPoolCacheOopDesc::is_secondary_index(i)) {
 237  237      i = constantPoolCacheOopDesc::decode_secondary_index(i);
 238  238      st->print(" secondary cache[%d] of", i);
 239  239      if (i >= 0 && i < climit) {
 240  240        if (!cache->entry_at(i)->is_secondary_entry()) {
 241  241          st->print_cr(" not secondary entry?", i);
 242  242          return false;
 243  243        }
 244      -      i = cache->entry_at(i)->main_entry_index();
      244 +      i = cache->entry_at(i)->main_entry_index() + constantPoolOopDesc::CPCACHE_INDEX_TAG;
 245  245        goto check_cache_index;
 246  246      } else {
 247  247        st->print_cr(" not in cache[*]?", i);
 248  248        return false;
 249  249      }
 250  250    }
 251  251  
 252  252    if (cache != NULL) {
 253  253      goto check_cache_index;
 254  254    }
↓ open down ↓ 329 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX