Mercurial > hg > graal-compiler
diff src/share/vm/c1x/c1x_VMExits.hpp @ 1421:6223633ce7dd
changed VMExit/VMEntries to non-static, added eclipse c++ project, CIR interface changes
author | Lukas Stadler <lukas.stadler@oracle.com> |
---|---|
date | Fri, 23 Jul 2010 15:53:02 -0700 |
parents | e1a275dbc8cd |
children | 3483ec571caf |
line wrap: on
line diff
--- a/src/share/vm/c1x/c1x_VMExits.hpp Tue Jul 13 11:47:55 2010 -0700 +++ b/src/share/vm/c1x/c1x_VMExits.hpp Fri Jul 23 15:53:02 2010 -0700 @@ -21,17 +21,37 @@ * have any questions. * */ +/* +class OopCache : public AllStatic { +private: + static Handle* handles; + static Handle* mirrors; + static int capacity; + static int used; + +public: + static void initialize(); + static Handle mirror(oop internal_object); + static Handle resolve(oop mirror); + +}; +*/ class VMExits : public AllStatic { private: static KlassHandle _vmExitsKlass; + static Handle _vmExitsObject; public: static KlassHandle& vmExitsKlass(); + static Handle& instance(); + + static void compileMethod(oop method, int entry_bci); + static oop createRiMethod(methodOop m); static oop createRiField(oop field_holder, symbolOop field_name, oop field_type, int index); static oop createRiType(klassOop k); @@ -44,4 +64,11 @@ static oop createCiConstantDouble(jdouble value); static oop createCiConstantObject(oop value); static oop createRiTypePrimitive(int basic_type); -}; \ No newline at end of file +}; + +inline void check_pending_exception(const char* message) { + if (Thread::current()->has_pending_exception()) { + Thread::current()->pending_exception()->print(); + fatal(message); + } +}