equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright 1997-2006 Sun Microsystems, Inc. All Rights Reserved. |
2 * Copyright 1997-2010 Sun Microsystems, Inc. All Rights Reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
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 address first_oop = NULL; |
445 address first_oop = NULL; |
446 // Mergers please note: Sun SC5.x CC insists on an lvalue for a reference parameter. |
446 // Mergers please note: Sun SC5.x CC insists on an lvalue for a reference parameter. |
447 CodeBlob *code1 = code; |
447 nmethod* tmp_nm = nm; |
448 return virtual_call_Relocation::parse_ic(code1, ic_call, first_oop, _oop_addr, is_optimized); |
448 return virtual_call_Relocation::parse_ic(tmp_nm, ic_call, first_oop, _oop_addr, is_optimized); |
449 } |
449 } |
450 |
450 |
451 CompiledIC::CompiledIC(NativeCall* ic_call) |
451 CompiledIC::CompiledIC(NativeCall* ic_call) |
452 : _ic_call(ic_call), |
452 : _ic_call(ic_call), |
453 _oops(parse_ic(NULL, ic_call->instruction_address(), _oop_addr, &_is_optimized)) |
453 _oops(parse_ic(NULL, ic_call->instruction_address(), _oop_addr, &_is_optimized)) |