Print this page


Split Close
Expand all
Collapse all
          --- old/src/share/vm/code/compiledIC.cpp
          +++ new/src/share/vm/code/compiledIC.cpp
   1    1  /*
   2      - * Copyright 1997-2006 Sun Microsystems, Inc.  All Rights Reserved.
        2 + * Copyright 1997-2010 Sun Microsystems, Inc.  All Rights Reserved.
   3    3   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4    4   *
   5    5   * This code is free software; you can redistribute it and/or modify it
   6    6   * under the terms of the GNU General Public License version 2 only, as
   7    7   * published by the Free Software Foundation.
   8    8   *
   9    9   * This code is distributed in the hope that it will be useful, but WITHOUT
  10   10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11   11   * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12   12   * version 2 for more details (a copy is included in the LICENSE file that
↓ open down ↓ 421 lines elided ↑ open up ↑
 434  434      } else {
 435  435        // Use mkh entry
 436  436        oop holder = oopFactory::new_compiledICHolder(method, receiver_klass, CHECK);
 437  437        info._cached_oop = Handle(THREAD, holder);
 438  438        info._entry      = method()->get_c2i_unverified_entry();
 439  439      }
 440  440    }
 441  441  }
 442  442  
 443  443  
 444      -inline static RelocIterator parse_ic(CodeBlob* code, address ic_call, oop* &_oop_addr, bool *is_optimized) {
      444 +inline static RelocIterator parse_ic(nmethod* nm, address ic_call, oop* &_oop_addr, bool *is_optimized) {
 445  445     address  first_oop = NULL;
 446  446     // Mergers please note: Sun SC5.x CC insists on an lvalue for a reference parameter.
 447      -   CodeBlob *code1 = code;
 448      -   return virtual_call_Relocation::parse_ic(code1, ic_call, first_oop, _oop_addr, is_optimized);
      447 +   nmethod* tmp_nm = nm;
      448 +   return virtual_call_Relocation::parse_ic(tmp_nm, ic_call, first_oop, _oop_addr, is_optimized);
 449  449  }
 450  450  
 451  451  CompiledIC::CompiledIC(NativeCall* ic_call)
 452  452    : _ic_call(ic_call),
 453  453      _oops(parse_ic(NULL, ic_call->instruction_address(), _oop_addr, &_is_optimized))
 454  454  {
 455  455  }
 456  456  
 457  457  
 458  458  CompiledIC::CompiledIC(Relocation* ic_reloc)
↓ open down ↓ 204 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX