comparison src/share/vm/code/compiledIC.cpp @ 1563:1a5913bf5e19

6951083: oops and relocations should part of nmethod not CodeBlob Summary: This moves the oops from Codeblob to nmethod. Reviewed-by: kvn, never
author twisti
date Thu, 20 May 2010 06:34:23 -0700
parents a61af66fc99e
children e9ff18c4ace7
comparison
equal deleted inserted replaced
1544:1a88d3c58e1d 1563:1a5913bf5e19
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))