comparison 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
comparison
equal deleted inserted replaced
1420:44efca8a02d6 1421:6223633ce7dd
19 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 19 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
20 * CA 95054 USA or visit www.sun.com if you need additional information or 20 * CA 95054 USA or visit www.sun.com if you need additional information or
21 * have any questions. 21 * have any questions.
22 * 22 *
23 */ 23 */
24 /*
25 class OopCache : public AllStatic {
24 26
27 private:
28 static Handle* handles;
29 static Handle* mirrors;
30 static int capacity;
31 static int used;
32
33 public:
34 static void initialize();
35 static Handle mirror(oop internal_object);
36 static Handle resolve(oop mirror);
37
38 };
39 */
25 class VMExits : public AllStatic { 40 class VMExits : public AllStatic {
26 41
27 private: 42 private:
28 43
29 static KlassHandle _vmExitsKlass; 44 static KlassHandle _vmExitsKlass;
45 static Handle _vmExitsObject;
30 46
31 public: 47 public:
32 48
33 static KlassHandle& vmExitsKlass(); 49 static KlassHandle& vmExitsKlass();
50 static Handle& instance();
51
52
34 static void compileMethod(oop method, int entry_bci); 53 static void compileMethod(oop method, int entry_bci);
54
35 static oop createRiMethod(methodOop m); 55 static oop createRiMethod(methodOop m);
36 static oop createRiField(oop field_holder, symbolOop field_name, oop field_type, int index); 56 static oop createRiField(oop field_holder, symbolOop field_name, oop field_type, int index);
37 static oop createRiType(klassOop k); 57 static oop createRiType(klassOop k);
38 static oop createRiConstantPool(constantPoolOop cp); 58 static oop createRiConstantPool(constantPoolOop cp);
39 static oop createRiTypeUnresolved(symbolOop name, klassOop accessor); 59 static oop createRiTypeUnresolved(symbolOop name, klassOop accessor);
43 static oop createCiConstantFloat(jfloat value); 63 static oop createCiConstantFloat(jfloat value);
44 static oop createCiConstantDouble(jdouble value); 64 static oop createCiConstantDouble(jdouble value);
45 static oop createCiConstantObject(oop value); 65 static oop createCiConstantObject(oop value);
46 static oop createRiTypePrimitive(int basic_type); 66 static oop createRiTypePrimitive(int basic_type);
47 }; 67 };
68
69 inline void check_pending_exception(const char* message) {
70 if (Thread::current()->has_pending_exception()) {
71 Thread::current()->pending_exception()->print();
72 fatal(message);
73 }
74 }