hotspot/src/share/vm/ci/ciEnv.hpp
changeset 4571 80b553bddc26
parent 4567 7fc02fbe5c7a
child 4761 bdb7375a1fee
equal deleted inserted replaced
4569:f372ea9e5ed4 4571:80b553bddc26
    72   static ciKlassKlass*          _klass_klass_instance;
    72   static ciKlassKlass*          _klass_klass_instance;
    73   static ciInstanceKlassKlass*  _instance_klass_klass_instance;
    73   static ciInstanceKlassKlass*  _instance_klass_klass_instance;
    74   static ciTypeArrayKlassKlass* _type_array_klass_klass_instance;
    74   static ciTypeArrayKlassKlass* _type_array_klass_klass_instance;
    75   static ciObjArrayKlassKlass*  _obj_array_klass_klass_instance;
    75   static ciObjArrayKlassKlass*  _obj_array_klass_klass_instance;
    76 
    76 
    77   static ciInstanceKlass* _ArrayStoreException;
    77 #define WK_KLASS_DECL(name, ignore_s, ignore_o) static ciInstanceKlass* _##name;
    78   static ciInstanceKlass* _Class;
    78   WK_KLASSES_DO(WK_KLASS_DECL)
    79   static ciInstanceKlass* _ClassCastException;
    79 #undef WK_KLASS_DECL
    80   static ciInstanceKlass* _InvokeDynamic;
       
    81   static ciInstanceKlass* _Object;
       
    82   static ciInstanceKlass* _Throwable;
       
    83   static ciInstanceKlass* _Thread;
       
    84   static ciInstanceKlass* _OutOfMemoryError;
       
    85   static ciInstanceKlass* _String;
       
    86   static ciInstanceKlass* _StringBuffer;
       
    87   static ciInstanceKlass* _StringBuilder;
       
    88   static ciInstanceKlass* _Integer;
       
    89 
    80 
    90   static ciSymbol*        _unloaded_cisymbol;
    81   static ciSymbol*        _unloaded_cisymbol;
    91   static ciInstanceKlass* _unloaded_ciinstance_klass;
    82   static ciInstanceKlass* _unloaded_ciinstance_klass;
    92   static ciObjArrayKlass* _unloaded_ciobjarrayklass;
    83   static ciObjArrayKlass* _unloaded_ciobjarrayklass;
    93 
    84 
   299                        bool                      has_debug_info = true,
   290                        bool                      has_debug_info = true,
   300                        bool                      has_unsafe_access = false);
   291                        bool                      has_unsafe_access = false);
   301 
   292 
   302 
   293 
   303   // Access to certain well known ciObjects.
   294   // Access to certain well known ciObjects.
   304   ciInstanceKlass* ArrayStoreException_klass() {
   295 #define WK_KLASS_FUNC(name, ignore_s, ignore_o) \
   305     return _ArrayStoreException;
   296   ciInstanceKlass* name() { \
   306   }
   297     return _##name;\
   307   ciInstanceKlass* Class_klass() {
   298   }
   308     return _Class;
   299   WK_KLASSES_DO(WK_KLASS_FUNC)
   309   }
   300 #undef WK_KLASS_FUNC
   310   ciInstanceKlass* ClassCastException_klass() {
   301 
   311     return _ClassCastException;
       
   312   }
       
   313   ciInstanceKlass* InvokeDynamic_klass() {
       
   314     return _InvokeDynamic;
       
   315   }
       
   316   ciInstanceKlass* Object_klass() {
       
   317     return _Object;
       
   318   }
       
   319   ciInstanceKlass* Throwable_klass() {
       
   320     return _Throwable;
       
   321   }
       
   322   ciInstanceKlass* Thread_klass() {
       
   323     return _Thread;
       
   324   }
       
   325   ciInstanceKlass* OutOfMemoryError_klass() {
       
   326     return _OutOfMemoryError;
       
   327   }
       
   328   ciInstanceKlass* String_klass() {
       
   329     return _String;
       
   330   }
       
   331   ciInstanceKlass* StringBuilder_klass() {
       
   332     return _StringBuilder;
       
   333   }
       
   334   ciInstanceKlass* StringBuffer_klass() {
       
   335     return _StringBuffer;
       
   336   }
       
   337   ciInstanceKlass* Integer_klass() {
       
   338     return _Integer;
       
   339   }
       
   340   ciInstance* NullPointerException_instance() {
   302   ciInstance* NullPointerException_instance() {
   341     assert(_NullPointerException_instance != NULL, "initialization problem");
   303     assert(_NullPointerException_instance != NULL, "initialization problem");
   342     return _NullPointerException_instance;
   304     return _NullPointerException_instance;
   343   }
   305   }
   344   ciInstance* ArithmeticException_instance() {
   306   ciInstance* ArithmeticException_instance() {