1.1 --- a/src/share/vm/interpreter/interpreterRuntime.cpp Wed Jan 12 13:59:18 2011 -0800 1.2 +++ b/src/share/vm/interpreter/interpreterRuntime.cpp Thu Jan 13 22:15:41 2011 -0800 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -132,9 +132,9 @@ 1.11 bytecode == Bytecodes::_fast_aldc_w, "wrong bc"); 1.12 ResourceMark rm(thread); 1.13 methodHandle m (thread, method(thread)); 1.14 - Bytecode_loadconstant* ldc = Bytecode_loadconstant_at(m, bci(thread)); 1.15 - oop result = ldc->resolve_constant(THREAD); 1.16 - DEBUG_ONLY(ConstantPoolCacheEntry* cpce = m->constants()->cache()->entry_at(ldc->cache_index())); 1.17 + Bytecode_loadconstant ldc(m, bci(thread)); 1.18 + oop result = ldc.resolve_constant(THREAD); 1.19 + DEBUG_ONLY(ConstantPoolCacheEntry* cpce = m->constants()->cache()->entry_at(ldc.cache_index())); 1.20 assert(result == cpce->f1(), "expected result for assembly code"); 1.21 } 1.22 IRT_END 1.23 @@ -672,8 +672,8 @@ 1.24 if (bytecode == Bytecodes::_invokevirtual || bytecode == Bytecodes::_invokeinterface) { 1.25 ResourceMark rm(thread); 1.26 methodHandle m (thread, method(thread)); 1.27 - Bytecode_invoke* call = Bytecode_invoke_at(m, bci(thread)); 1.28 - symbolHandle signature (thread, call->signature()); 1.29 + Bytecode_invoke call(m, bci(thread)); 1.30 + symbolHandle signature (thread, call.signature()); 1.31 receiver = Handle(thread, 1.32 thread->last_frame().interpreter_callee_receiver(signature)); 1.33 assert(Universe::heap()->is_in_reserved_or_null(receiver()), 1.34 @@ -756,7 +756,7 @@ 1.35 caller_bci = caller_method->bci_from(caller_bcp); 1.36 site_index = Bytes::get_native_u4(caller_bcp+1); 1.37 } 1.38 - assert(site_index == InterpreterRuntime::bytecode(thread)->get_index_u4(bytecode), ""); 1.39 + assert(site_index == InterpreterRuntime::bytecode(thread).get_index_u4(bytecode), ""); 1.40 assert(constantPoolCacheOopDesc::is_secondary_index(site_index), "proper format"); 1.41 // there is a second CPC entries that is of interest; it caches signature info: 1.42 int main_index = pool->cache()->secondary_entry_at(site_index)->main_entry_index(); 1.43 @@ -1245,9 +1245,9 @@ 1.44 assert(fr.is_interpreted_frame(), ""); 1.45 jint bci = fr.interpreter_frame_bci(); 1.46 methodHandle mh(thread, fr.interpreter_frame_method()); 1.47 - Bytecode_invoke* invoke = Bytecode_invoke_at(mh, bci); 1.48 - ArgumentSizeComputer asc(invoke->signature()); 1.49 - int size_of_arguments = (asc.size() + (invoke->has_receiver() ? 1 : 0)); // receiver 1.50 + Bytecode_invoke invoke(mh, bci); 1.51 + ArgumentSizeComputer asc(invoke.signature()); 1.52 + int size_of_arguments = (asc.size() + (invoke.has_receiver() ? 1 : 0)); // receiver 1.53 Copy::conjoint_jbytes(src_address, dest_address, 1.54 size_of_arguments * Interpreter::stackElementSize); 1.55 IRT_END