< prev index next >

src/share/vm/code/vtableStubs.cpp

Print this page




 205 void VtableStubs::vtable_stub_do(void f(VtableStub*)) {
 206     for (int i = 0; i < N; i++) {
 207         for (VtableStub* s = _table[i]; s != NULL; s = s->next()) {
 208             f(s);
 209         }
 210     }
 211 }
 212 
 213 
 214 //-----------------------------------------------------------------------------------------------------
 215 // Non-product code
 216 #ifndef PRODUCT
 217 
 218 extern "C" void bad_compiled_vtable_index(JavaThread* thread, oop receiver, int index) {
 219   ResourceMark rm;
 220   HandleMark hm;
 221   Klass* klass = receiver->klass();
 222   InstanceKlass* ik = InstanceKlass::cast(klass);
 223   klassVtable* vt = ik->vtable();
 224   ik->print();
 225   fatal(err_msg("bad compiled vtable dispatch: receiver " INTPTR_FORMAT ", "
 226                 "index %d (vtable length %d)",
 227                 (address)receiver, index, vt->length()));
 228 }
 229 
 230 #endif // Product


 205 void VtableStubs::vtable_stub_do(void f(VtableStub*)) {
 206     for (int i = 0; i < N; i++) {
 207         for (VtableStub* s = _table[i]; s != NULL; s = s->next()) {
 208             f(s);
 209         }
 210     }
 211 }
 212 
 213 
 214 //-----------------------------------------------------------------------------------------------------
 215 // Non-product code
 216 #ifndef PRODUCT
 217 
 218 extern "C" void bad_compiled_vtable_index(JavaThread* thread, oop receiver, int index) {
 219   ResourceMark rm;
 220   HandleMark hm;
 221   Klass* klass = receiver->klass();
 222   InstanceKlass* ik = InstanceKlass::cast(klass);
 223   klassVtable* vt = ik->vtable();
 224   ik->print();
 225   fatal("bad compiled vtable dispatch: receiver " INTPTR_FORMAT ", "
 226         "index %d (vtable length %d)",
 227         (address)receiver, index, vt->length());
 228 }
 229 
 230 #endif // PRODUCT
< prev index next >