comparison src/share/vm/graal/graalJavaAccess.cpp @ 18172:c59612b9d110

Use arrayOop subclasses in graalJavaAccess
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Fri, 24 Oct 2014 12:45:27 -0700
parents 467ffc7f01cb
children 29916dcee0b8
comparison
equal deleted inserted replaced
18171:9bb816169777 18172:c59612b9d110
64 #define STATIC_OOP_FIELD(klass, name, signature) FIELD(klass, name, signature, true) 64 #define STATIC_OOP_FIELD(klass, name, signature) FIELD(klass, name, signature, true)
65 #define STATIC_INT_FIELD(klass, name) FIELD(klass, name, "I", true) 65 #define STATIC_INT_FIELD(klass, name) FIELD(klass, name, "I", true)
66 66
67 67
68 void graal_compute_offsets() { 68 void graal_compute_offsets() {
69 COMPILER_CLASSES_DO(START_CLASS, END_CLASS, CHAR_FIELD, INT_FIELD, BOOLEAN_FIELD, LONG_FIELD, FLOAT_FIELD, OOP_FIELD, STATIC_OOP_FIELD, STATIC_INT_FIELD) 69 COMPILER_CLASSES_DO(START_CLASS, END_CLASS, CHAR_FIELD, INT_FIELD, BOOLEAN_FIELD, LONG_FIELD, FLOAT_FIELD, OOP_FIELD, OOP_FIELD, OOP_FIELD, STATIC_OOP_FIELD, STATIC_INT_FIELD)
70 guarantee(InstalledCode::_address_offset == sizeof(oopDesc), "codeBlob must be first field!"); 70 guarantee(InstalledCode::_address_offset == sizeof(oopDesc), "codeBlob must be first field!");
71 } 71 }
72 72
73 #define EMPTY0 73 #define EMPTY0
74 #define EMPTY1(x) 74 #define EMPTY1(x)
75 #define EMPTY2(x,y) 75 #define EMPTY2(x,y)
76 #define FIELD2(klass, name) int klass::_##name##_offset = 0; 76 #define FIELD2(klass, name) int klass::_##name##_offset = 0;
77 #define FIELD3(klass, name, sig) FIELD2(klass, name) 77 #define FIELD3(klass, name, sig) FIELD2(klass, name)
78 78
79 COMPILER_CLASSES_DO(EMPTY1, EMPTY0, FIELD2, FIELD2, FIELD2, FIELD2, FIELD2, FIELD3, FIELD3, FIELD2) 79 COMPILER_CLASSES_DO(EMPTY1, EMPTY0, FIELD2, FIELD2, FIELD2, FIELD2, FIELD2, FIELD3, FIELD3, FIELD3, FIELD3, FIELD2)
80 80
81 81
82 82
83 83
84 84