src/share/vm/interpreter/rewriter.hpp

changeset 2015
083fde3b838e
parent 1957
136b78722a08
child 2314
f95d63e2154a
     1.1 --- a/src/share/vm/interpreter/rewriter.hpp	Thu Jul 15 08:54:48 2010 -0700
     1.2 +++ b/src/share/vm/interpreter/rewriter.hpp	Thu Jul 15 18:40:45 2010 -0700
     1.3 @@ -32,6 +32,7 @@
     1.4    objArrayHandle      _methods;
     1.5    intArray            _cp_map;
     1.6    intStack            _cp_cache_map;
     1.7 +  bool                _have_invoke_dynamic;
     1.8  
     1.9    void init_cp_map(int length) {
    1.10      _cp_map.initialize(length, -1);
    1.11 @@ -56,6 +57,22 @@
    1.12      return cache_index;
    1.13    }
    1.14  
    1.15 +  // Access the contents of _cp_cache_map to determine CP cache layout.
    1.16 +  int cp_cache_entry_pool_index(int cache_index) {
    1.17 +    int cp_index = _cp_cache_map[cache_index];
    1.18 +    if ((cp_index & _secondary_entry_tag) != 0)
    1.19 +      return -1;
    1.20 +    else
    1.21 +      return cp_index;
    1.22 +  }
    1.23 +  int cp_cache_secondary_entry_main_index(int cache_index) {
    1.24 +    int cp_index = _cp_cache_map[cache_index];
    1.25 +    if ((cp_index & _secondary_entry_tag) == 0)
    1.26 +      return -1;
    1.27 +    else
    1.28 +      return (cp_index - _secondary_entry_tag);
    1.29 +  }
    1.30 +
    1.31    // All the work goes in here:
    1.32    Rewriter(instanceKlassHandle klass, constantPoolHandle cpool, objArrayHandle methods, TRAPS);
    1.33  

mercurial