@@ -453,25 +453,10 @@ class markWord {
453
453
// Prepare address of oop for placement into mark
454
454
inline static markWord encode_pointer_as_mark (void * p) { return from_pointer (p).set_marked (); }
455
455
456
- // Recover address of oop from encoded form used in mark
457
456
inline void * decode_pointer () const {
458
- // Get the current age and 3 Valhalla bits.
459
- // Note that the larval bit is ignored in this case.
460
- uint n_valhalla = 3 ;
461
- uintptr_t age = (_value >> age_shift) & age_mask;
462
- uintptr_t valhalla = (_value >> inline_type_shift) & right_n_bits (n_valhalla);
463
- // Use the legacy indices: age = 6, Valhalla = 3.
464
- uint old_age = 6 , old_valhalla = 3 ;
465
- // Swap into the legacy format.
466
- uintptr_t tmp = write_bits (_value, valhalla, old_valhalla, old_valhalla + n_valhalla);
467
- tmp = write_bits (tmp, age, old_age, old_age + age_bits);
468
- // No idea what this achives, but it is needed to work.
469
- uintptr_t static_prototype_value_max = (1 << old_age) - 1 ;
470
- return (EnableValhalla && tmp < static_prototype_value_max) ? nullptr :
471
- (void *) (clear_lock_bits ().value ());
457
+ return (void *) (clear_lock_bits ().value ());
472
458
}
473
459
474
-
475
460
inline bool is_self_forwarded () const {
476
461
NOT_LP64 (assert (LockingMode != LM_LEGACY, " incorrect with LM_LEGACY on 32 bit" );)
477
462
return mask_bits (value (), self_fwd_mask_in_place) != 0 ;
0 commit comments