@@ -1223,37 +1223,37 @@ void InstanceKlass::set_initialization_state_and_notify(ClassState state, TRAPS)
1223
1223
}
1224
1224
}
1225
1225
1226
- Klass * InstanceKlass::implementor () const {
1227
- Klass * volatile * k = adr_implementor ();
1228
- if (k == NULL ) {
1226
+ InstanceKlass * InstanceKlass::implementor () const {
1227
+ InstanceKlass * volatile * ik = adr_implementor ();
1228
+ if (ik == NULL ) {
1229
1229
return NULL ;
1230
1230
} else {
1231
1231
// This load races with inserts, and therefore needs acquire.
1232
- Klass* kls = Atomic::load_acquire (k );
1233
- if (kls != NULL && !kls ->is_loader_alive ()) {
1232
+ InstanceKlass* ikls = Atomic::load_acquire (ik );
1233
+ if (ikls != NULL && !ikls ->is_loader_alive ()) {
1234
1234
return NULL ; // don't return unloaded class
1235
1235
} else {
1236
- return kls ;
1236
+ return ikls ;
1237
1237
}
1238
1238
}
1239
1239
}
1240
1240
1241
1241
1242
- void InstanceKlass::set_implementor (Klass* k ) {
1242
+ void InstanceKlass::set_implementor (InstanceKlass* ik ) {
1243
1243
assert_locked_or_safepoint (Compile_lock);
1244
1244
assert (is_interface (), " not interface" );
1245
- Klass * volatile * addr = adr_implementor ();
1245
+ InstanceKlass * volatile * addr = adr_implementor ();
1246
1246
assert (addr != NULL , " null addr" );
1247
1247
if (addr != NULL ) {
1248
- Atomic::release_store (addr, k );
1248
+ Atomic::release_store (addr, ik );
1249
1249
}
1250
1250
}
1251
1251
1252
1252
int InstanceKlass::nof_implementors () const {
1253
- Klass* k = implementor ();
1254
- if (k == NULL ) {
1253
+ InstanceKlass* ik = implementor ();
1254
+ if (ik == NULL ) {
1255
1255
return 0 ;
1256
- } else if (k != this ) {
1256
+ } else if (ik != this ) {
1257
1257
return 1 ;
1258
1258
} else {
1259
1259
return 2 ;
@@ -1269,37 +1269,37 @@ int InstanceKlass::nof_implementors() const {
1269
1269
// self - more than one implementor
1270
1270
//
1271
1271
// The _implementor field only exists for interfaces.
1272
- void InstanceKlass::add_implementor (Klass* k ) {
1272
+ void InstanceKlass::add_implementor (InstanceKlass* ik ) {
1273
1273
if (Universe::is_fully_initialized ()) {
1274
1274
assert_lock_strong (Compile_lock);
1275
1275
}
1276
1276
assert (is_interface (), " not interface" );
1277
1277
// Filter out my subinterfaces.
1278
1278
// (Note: Interfaces are never on the subklass list.)
1279
- if (InstanceKlass::cast (k) ->is_interface ()) return ;
1279
+ if (ik ->is_interface ()) return ;
1280
1280
1281
1281
// Filter out subclasses whose supers already implement me.
1282
1282
// (Note: CHA must walk subclasses of direct implementors
1283
1283
// in order to locate indirect implementors.)
1284
- Klass* sk = k-> super ();
1285
- if (sk != NULL && InstanceKlass::cast (sk) ->implements_interface (this ))
1284
+ InstanceKlass* super_ik = ik-> java_super ();
1285
+ if (super_ik != NULL && super_ik ->implements_interface (this ))
1286
1286
// We only need to check one immediate superclass, since the
1287
1287
// implements_interface query looks at transitive_interfaces.
1288
1288
// Any supers of the super have the same (or fewer) transitive_interfaces.
1289
1289
return ;
1290
1290
1291
- Klass* ik = implementor ();
1292
- if (ik == NULL ) {
1293
- set_implementor (k );
1294
- } else if (ik != this && ik != k ) {
1291
+ InstanceKlass* iklass = implementor ();
1292
+ if (iklass == NULL ) {
1293
+ set_implementor (ik );
1294
+ } else if (iklass != this && iklass != ik ) {
1295
1295
// There is already an implementor. Use itself as an indicator of
1296
1296
// more than one implementors.
1297
1297
set_implementor (this );
1298
1298
}
1299
1299
1300
1300
// The implementor also implements the transitive_interfaces
1301
1301
for (int index = 0 ; index < local_interfaces ()->length (); index ++) {
1302
- InstanceKlass::cast ( local_interfaces ()->at (index )) ->add_implementor (k );
1302
+ local_interfaces ()->at (index )->add_implementor (ik );
1303
1303
}
1304
1304
}
1305
1305
@@ -1314,7 +1314,7 @@ void InstanceKlass::process_interfaces() {
1314
1314
// link this class into the implementors list of every interface it implements
1315
1315
for (int i = local_interfaces ()->length () - 1 ; i >= 0 ; i--) {
1316
1316
assert (local_interfaces ()->at (i)->is_klass (), " must be a klass" );
1317
- InstanceKlass* interf = InstanceKlass::cast ( local_interfaces ()->at (i) );
1317
+ InstanceKlass* interf = local_interfaces ()->at (i);
1318
1318
assert (interf->is_interface (), " expected interface" );
1319
1319
interf->add_implementor (this );
1320
1320
}
@@ -2344,11 +2344,11 @@ void InstanceKlass::clean_implementors_list() {
2344
2344
assert (ClassUnloading, " only called for ClassUnloading" );
2345
2345
for (;;) {
2346
2346
// Use load_acquire due to competing with inserts
2347
- Klass * impl = Atomic::load_acquire (adr_implementor ());
2347
+ InstanceKlass * impl = Atomic::load_acquire (adr_implementor ());
2348
2348
if (impl != NULL && !impl->is_loader_alive ()) {
2349
- // NULL this field, might be an unloaded klass or NULL
2350
- Klass * volatile * klass = adr_implementor ();
2351
- if (Atomic::cmpxchg (klass , impl, (Klass *)NULL ) == impl) {
2349
+ // NULL this field, might be an unloaded instance klass or NULL
2350
+ InstanceKlass * volatile * iklass = adr_implementor ();
2351
+ if (Atomic::cmpxchg (iklass , impl, (InstanceKlass *)NULL ) == impl) {
2352
2352
// Successfully unlinking implementor.
2353
2353
if (log_is_enabled (Trace, class , unload)) {
2354
2354
ResourceMark rm;
0 commit comments