@@ -95,49 +95,21 @@ void oopDesc::init_mark() {
9595}
9696
9797Klass* oopDesc::klass () const {
98- switch (ObjLayout::klass_mode ()) {
99- case ObjLayout::Compact:
100- return mark ().klass ();
101- case ObjLayout::Compressed:
102- return CompressedKlassPointers::decode_not_null (_compressed_klass);
103- default :
104- ShouldNotReachHere ();
105- }
98+ return CompressedKlassPointers::decode_not_null (narrow_klass ());
10699}
107100
108101Klass* oopDesc::klass_or_null () const {
109- switch (ObjLayout::klass_mode ()) {
110- case ObjLayout::Compact:
111- return mark ().klass_or_null ();
112- case ObjLayout::Compressed:
113- return CompressedKlassPointers::decode (_compressed_klass);
114- default :
115- ShouldNotReachHere ();
116- }
102+ return CompressedKlassPointers::decode (narrow_klass ());
117103}
118104
119105Klass* oopDesc::klass_or_null_acquire () const {
120- switch (ObjLayout::klass_mode ()) {
121- case ObjLayout::Compact:
122- return mark_acquire ().klass_or_null ();
123- case ObjLayout::Compressed: {
124- narrowKlass narrow_klass = AtomicAccess::load_acquire (&_compressed_klass);
125- return CompressedKlassPointers::decode (narrow_klass);
126- }
127- default :
128- ShouldNotReachHere ();
129- }
106+ narrowKlass nk = narrow_klass ();
107+ OrderAccess::acquire ();
108+ return CompressedKlassPointers::decode (nk);
130109}
131110
132111Klass* oopDesc::klass_without_asserts () const {
133- switch (ObjLayout::klass_mode ()) {
134- case ObjLayout::Compact:
135- return mark ().klass_without_asserts ();
136- case ObjLayout::Compressed:
137- return CompressedKlassPointers::decode_without_asserts (_compressed_klass);
138- default :
139- ShouldNotReachHere ();
140- }
112+ return CompressedKlassPointers::decode_without_asserts (narrow_klass ());
141113}
142114
143115narrowKlass oopDesc::narrow_klass () const {
0 commit comments