Print this page
rev 1082 : [mq]: indy.compiler.patch

Split Close
Expand all
Collapse all
          --- old/src/share/vm/ci/ciEnv.hpp
          +++ new/src/share/vm/ci/ciEnv.hpp
↓ open down ↓ 69 lines elided ↑ open up ↑
  70   70    static ciMethodKlass*         _method_klass_instance;
  71   71    static ciSymbolKlass*         _symbol_klass_instance;
  72   72    static ciKlassKlass*          _klass_klass_instance;
  73   73    static ciInstanceKlassKlass*  _instance_klass_klass_instance;
  74   74    static ciTypeArrayKlassKlass* _type_array_klass_klass_instance;
  75   75    static ciObjArrayKlassKlass*  _obj_array_klass_klass_instance;
  76   76  
  77   77    static ciInstanceKlass* _ArrayStoreException;
  78   78    static ciInstanceKlass* _Class;
  79   79    static ciInstanceKlass* _ClassCastException;
       80 +  static ciInstanceKlass* _InvokeDynamic;
  80   81    static ciInstanceKlass* _Object;
  81   82    static ciInstanceKlass* _Throwable;
  82   83    static ciInstanceKlass* _Thread;
  83   84    static ciInstanceKlass* _OutOfMemoryError;
  84   85    static ciInstanceKlass* _String;
  85   86    static ciInstanceKlass* _StringBuffer;
  86   87    static ciInstanceKlass* _StringBuilder;
  87   88    static ciInstanceKlass* _Integer;
  88   89  
  89   90    static ciSymbol*        _unloaded_cisymbol;
↓ open down ↓ 54 lines elided ↑ open up ↑
 144  145    ciConstant get_constant_by_index_impl(ciInstanceKlass* loading_klass,
 145  146                                          int constant_index);
 146  147    bool       is_unresolved_string_impl (instanceKlass* loading_klass,
 147  148                                          int constant_index) const;
 148  149    bool       is_unresolved_klass_impl (instanceKlass* loading_klass,
 149  150                                          int constant_index) const;
 150  151    ciField*   get_field_by_index_impl(ciInstanceKlass* loading_klass,
 151  152                                       int field_index);
 152  153    ciMethod*  get_method_by_index_impl(ciInstanceKlass* loading_klass,
 153  154                                        int method_index, Bytecodes::Code bc);
      155 +  ciMethod*  get_fake_invokedynamic_method_impl(ciInstanceKlass* accessor,
      156 +                                                int index, Bytecodes::Code bc);
 154  157  
 155  158    // Helper methods
 156  159    bool       check_klass_accessibility(ciKlass* accessing_klass,
 157  160                                        klassOop resolved_klassOop);
 158  161    methodOop  lookup_method(instanceKlass*  accessor,
 159  162                             instanceKlass*  holder,
 160  163                             symbolOop       name,
 161  164                             symbolOop       sig,
 162  165                             Bytecodes::Code bc);
 163  166  
↓ open down ↓ 130 lines elided ↑ open up ↑
 294  297    // Access to certain well known ciObjects.
 295  298    ciInstanceKlass* ArrayStoreException_klass() {
 296  299      return _ArrayStoreException;
 297  300    }
 298  301    ciInstanceKlass* Class_klass() {
 299  302      return _Class;
 300  303    }
 301  304    ciInstanceKlass* ClassCastException_klass() {
 302  305      return _ClassCastException;
 303  306    }
      307 +  ciInstanceKlass* InvokeDynamic_klass() {
      308 +    return _InvokeDynamic;
      309 +  }
 304  310    ciInstanceKlass* Object_klass() {
 305  311      return _Object;
 306  312    }
 307  313    ciInstanceKlass* Throwable_klass() {
 308  314      return _Throwable;
 309  315    }
 310  316    ciInstanceKlass* Thread_klass() {
 311  317      return _Thread;
 312  318    }
 313  319    ciInstanceKlass* OutOfMemoryError_klass() {
↓ open down ↓ 90 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX