1.1 --- a/src/share/vm/interpreter/templateTable.hpp Fri May 21 02:59:24 2010 -0700 1.2 +++ b/src/share/vm/interpreter/templateTable.hpp Sun May 23 01:38:26 2010 -0700 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright 1997-2009 Sun Microsystems, Inc. All Rights Reserved. 1.6 + * Copyright 1997-2010 Sun Microsystems, Inc. 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 @@ -73,6 +73,7 @@ 1.11 public: 1.12 enum Operation { add, sub, mul, div, rem, _and, _or, _xor, shl, shr, ushr }; 1.13 enum Condition { equal, not_equal, less, less_equal, greater, greater_equal }; 1.14 + enum CacheByte { f1_byte = 1, f2_byte = 2, f1_oop = 0x11 }; // byte_no codes 1.15 1.16 private: 1.17 static bool _is_initialized; // true if TemplateTable has been initialized 1.18 @@ -244,13 +245,18 @@ 1.19 1.20 static void _return(TosState state); 1.21 1.22 - static void resolve_cache_and_index(int byte_no, Register cache, Register index); 1.23 + static void resolve_cache_and_index(int byte_no, // one of 1,2,11 1.24 + Register result , // either noreg or output for f1/f2 1.25 + Register cache, // output for CP cache 1.26 + Register index, // output for CP index 1.27 + size_t index_size); // one of 1,2,4 1.28 static void load_invoke_cp_cache_entry(int byte_no, 1.29 Register method, 1.30 Register itable_index, 1.31 Register flags, 1.32 - bool is_invokevirtual = false, 1.33 - bool is_virtual_final = false); 1.34 + bool is_invokevirtual, 1.35 + bool is_virtual_final, 1.36 + bool is_invokedynamic); 1.37 static void load_field_cp_cache_entry(Register obj, 1.38 Register cache, 1.39 Register index,