1.1 --- a/src/share/vm/prims/jvmtiRedefineClasses.hpp Wed Apr 24 15:57:17 2013 -0700 1.2 +++ b/src/share/vm/prims/jvmtiRedefineClasses.hpp Thu Apr 25 03:58:53 2013 -0700 1.3 @@ -359,8 +359,15 @@ 1.4 // _index_map_p contains any entries. 1.5 int _index_map_count; 1.6 intArray * _index_map_p; 1.7 + 1.8 + // _operands_index_map_count is just an optimization for knowing if 1.9 + // _operands_index_map_p contains any entries. 1.10 + int _operands_cur_length; 1.11 + int _operands_index_map_count; 1.12 + intArray * _operands_index_map_p; 1.13 + 1.14 // ptr to _class_count scratch_classes 1.15 - Klass** _scratch_classes; 1.16 + Klass** _scratch_classes; 1.17 jvmtiError _res; 1.18 1.19 // Performance measurement support. These timers do not cover all 1.20 @@ -422,12 +429,19 @@ 1.21 // Support for constant pool merging (these routines are in alpha order): 1.22 void append_entry(constantPoolHandle scratch_cp, int scratch_i, 1.23 constantPoolHandle *merge_cp_p, int *merge_cp_length_p, TRAPS); 1.24 + void append_operand(constantPoolHandle scratch_cp, int scratch_bootstrap_spec_index, 1.25 + constantPoolHandle *merge_cp_p, int *merge_cp_length_p, TRAPS); 1.26 + void finalize_operands_merge(constantPoolHandle merge_cp, TRAPS); 1.27 int find_or_append_indirect_entry(constantPoolHandle scratch_cp, int scratch_i, 1.28 constantPoolHandle *merge_cp_p, int *merge_cp_length_p, TRAPS); 1.29 + int find_or_append_operand(constantPoolHandle scratch_cp, int scratch_bootstrap_spec_index, 1.30 + constantPoolHandle *merge_cp_p, int *merge_cp_length_p, TRAPS); 1.31 int find_new_index(int old_index); 1.32 + int find_new_operand_index(int old_bootstrap_spec_index); 1.33 bool is_unresolved_class_mismatch(constantPoolHandle cp1, int index1, 1.34 constantPoolHandle cp2, int index2); 1.35 void map_index(constantPoolHandle scratch_cp, int old_index, int new_index); 1.36 + void map_operand_index(int old_bootstrap_spec_index, int new_bootstrap_spec_index); 1.37 bool merge_constant_pools(constantPoolHandle old_cp, 1.38 constantPoolHandle scratch_cp, constantPoolHandle *merge_cp_p, 1.39 int *merge_cp_length_p, TRAPS);