src/share/vm/ci/ciEnv.hpp

changeset 1577
4ce7240d622c
parent 1573
dd57230ba8fe
child 1648
6deeaebad47a
     1.1 --- a/src/share/vm/ci/ciEnv.hpp	Tue Jan 05 11:16:09 2010 -0800
     1.2 +++ b/src/share/vm/ci/ciEnv.hpp	Wed Jan 06 14:22:39 2010 -0800
     1.3 @@ -74,18 +74,9 @@
     1.4    static ciTypeArrayKlassKlass* _type_array_klass_klass_instance;
     1.5    static ciObjArrayKlassKlass*  _obj_array_klass_klass_instance;
     1.6  
     1.7 -  static ciInstanceKlass* _ArrayStoreException;
     1.8 -  static ciInstanceKlass* _Class;
     1.9 -  static ciInstanceKlass* _ClassCastException;
    1.10 -  static ciInstanceKlass* _InvokeDynamic;
    1.11 -  static ciInstanceKlass* _Object;
    1.12 -  static ciInstanceKlass* _Throwable;
    1.13 -  static ciInstanceKlass* _Thread;
    1.14 -  static ciInstanceKlass* _OutOfMemoryError;
    1.15 -  static ciInstanceKlass* _String;
    1.16 -  static ciInstanceKlass* _StringBuffer;
    1.17 -  static ciInstanceKlass* _StringBuilder;
    1.18 -  static ciInstanceKlass* _Integer;
    1.19 +#define WK_KLASS_DECL(name, ignore_s, ignore_o) static ciInstanceKlass* _##name;
    1.20 +  WK_KLASSES_DO(WK_KLASS_DECL)
    1.21 +#undef WK_KLASS_DECL
    1.22  
    1.23    static ciSymbol*        _unloaded_cisymbol;
    1.24    static ciInstanceKlass* _unloaded_ciinstance_klass;
    1.25 @@ -301,42 +292,13 @@
    1.26  
    1.27  
    1.28    // Access to certain well known ciObjects.
    1.29 -  ciInstanceKlass* ArrayStoreException_klass() {
    1.30 -    return _ArrayStoreException;
    1.31 +#define WK_KLASS_FUNC(name, ignore_s, ignore_o) \
    1.32 +  ciInstanceKlass* name() { \
    1.33 +    return _##name;\
    1.34    }
    1.35 -  ciInstanceKlass* Class_klass() {
    1.36 -    return _Class;
    1.37 -  }
    1.38 -  ciInstanceKlass* ClassCastException_klass() {
    1.39 -    return _ClassCastException;
    1.40 -  }
    1.41 -  ciInstanceKlass* InvokeDynamic_klass() {
    1.42 -    return _InvokeDynamic;
    1.43 -  }
    1.44 -  ciInstanceKlass* Object_klass() {
    1.45 -    return _Object;
    1.46 -  }
    1.47 -  ciInstanceKlass* Throwable_klass() {
    1.48 -    return _Throwable;
    1.49 -  }
    1.50 -  ciInstanceKlass* Thread_klass() {
    1.51 -    return _Thread;
    1.52 -  }
    1.53 -  ciInstanceKlass* OutOfMemoryError_klass() {
    1.54 -    return _OutOfMemoryError;
    1.55 -  }
    1.56 -  ciInstanceKlass* String_klass() {
    1.57 -    return _String;
    1.58 -  }
    1.59 -  ciInstanceKlass* StringBuilder_klass() {
    1.60 -    return _StringBuilder;
    1.61 -  }
    1.62 -  ciInstanceKlass* StringBuffer_klass() {
    1.63 -    return _StringBuffer;
    1.64 -  }
    1.65 -  ciInstanceKlass* Integer_klass() {
    1.66 -    return _Integer;
    1.67 -  }
    1.68 +  WK_KLASSES_DO(WK_KLASS_FUNC)
    1.69 +#undef WK_KLASS_FUNC
    1.70 +
    1.71    ciInstance* NullPointerException_instance() {
    1.72      assert(_NullPointerException_instance != NULL, "initialization problem");
    1.73      return _NullPointerException_instance;

mercurial