Mercurial > hg > truffle
diff src/share/vm/interpreter/interpreterRuntime.hpp @ 1565:ab102d5d923e
6939207: refactor constant pool index processing
Summary: Factored cleanup of instruction decode which prepares for enhanced ldc semantics.
Reviewed-by: twisti
author | jrose |
---|---|
date | Sun, 23 May 2010 01:38:26 -0700 |
parents | 389049f3f393 |
children | e9ff18c4ace7 |
line wrap: on
line diff
--- a/src/share/vm/interpreter/interpreterRuntime.hpp Fri May 21 02:59:24 2010 -0700 +++ b/src/share/vm/interpreter/interpreterRuntime.hpp Sun May 23 01:38:26 2010 -0700 @@ -1,5 +1,5 @@ /* - * Copyright 1997-2009 Sun Microsystems, Inc. All Rights Reserved. + * Copyright 1997-2010 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -40,9 +40,13 @@ return Bytecodes::code_at(bcp(thread), method(thread)); } static bool already_resolved(JavaThread *thread) { return cache_entry(thread)->is_resolved(code(thread)); } - static int one_byte_index(JavaThread *thread) { return bcp(thread)[1]; } - static int two_byte_index(JavaThread *thread) { return Bytes::get_Java_u2(bcp(thread) + 1); } - static int four_byte_index(JavaThread *thread) { return Bytes::get_native_u4(bcp(thread) + 1); } + static Bytecode* bytecode(JavaThread *thread) { return Bytecode_at(bcp(thread)); } + static int get_index_u1(JavaThread *thread, Bytecodes::Code bc) + { return bytecode(thread)->get_index_u1(bc); } + static int get_index_u2(JavaThread *thread, Bytecodes::Code bc) + { return bytecode(thread)->get_index_u2(bc); } + static int get_index_u2_cpcache(JavaThread *thread, Bytecodes::Code bc) + { return bytecode(thread)->get_index_u2_cpcache(bc); } static int number_of_dimensions(JavaThread *thread) { return bcp(thread)[3]; } static ConstantPoolCacheEntry* cache_entry_at(JavaThread *thread, int i) { return method(thread)->constants()->cache()->entry_at(i); }