Mercurial > hg > truffle
comparison src/share/vm/graal/graalJavaAccess.cpp @ 19766:29916dcee0b8
Verify dependencies when assertions are enabled
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Tue, 10 Mar 2015 22:18:53 -0700 |
parents | c59612b9d110 |
children |
comparison
equal
deleted
inserted
replaced
19765:ea8d6fa333ab | 19766:29916dcee0b8 |
---|---|
61 #define LONG_FIELD(klass, name) FIELD(klass, name, "J", false) | 61 #define LONG_FIELD(klass, name) FIELD(klass, name, "J", false) |
62 #define FLOAT_FIELD(klass, name) FIELD(klass, name, "F", false) | 62 #define FLOAT_FIELD(klass, name) FIELD(klass, name, "F", false) |
63 #define OOP_FIELD(klass, name, signature) FIELD(klass, name, signature, false) | 63 #define OOP_FIELD(klass, name, signature) FIELD(klass, name, signature, false) |
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 #define STATIC_BOOLEAN_FIELD(klass, name) FIELD(klass, name, "Z", true) | |
66 | 67 |
67 | 68 |
68 void graal_compute_offsets() { | 69 void graal_compute_offsets() { |
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 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, STATIC_BOOLEAN_FIELD) |
70 guarantee(InstalledCode::_address_offset == sizeof(oopDesc), "codeBlob must be first field!"); | 71 guarantee(InstalledCode::_address_offset == sizeof(oopDesc), "codeBlob must be first field!"); |
71 } | 72 } |
72 | 73 |
73 #define EMPTY0 | 74 #define EMPTY0 |
74 #define EMPTY1(x) | 75 #define EMPTY1(x) |
75 #define EMPTY2(x,y) | 76 #define EMPTY2(x,y) |
76 #define FIELD2(klass, name) int klass::_##name##_offset = 0; | 77 #define FIELD2(klass, name) int klass::_##name##_offset = 0; |
77 #define FIELD3(klass, name, sig) FIELD2(klass, name) | 78 #define FIELD3(klass, name, sig) FIELD2(klass, name) |
78 | 79 |
79 COMPILER_CLASSES_DO(EMPTY1, EMPTY0, FIELD2, FIELD2, FIELD2, FIELD2, FIELD2, FIELD3, FIELD3, FIELD3, FIELD3, FIELD2) | 80 COMPILER_CLASSES_DO(EMPTY1, EMPTY0, FIELD2, FIELD2, FIELD2, FIELD2, FIELD2, FIELD3, FIELD3, FIELD3, FIELD3, FIELD2, FIELD2) |
80 | 81 |
81 | 82 |
82 | 83 |
83 | 84 |
84 | 85 |