< prev index next >
src/hotspot/share/oops/valueKlass.hpp
Print this page
rev 55127 : 8223351: [lworld] Primary mirror and nullable mirror for inline type
Reviewed-by: tbd
@@ -135,12 +135,13 @@
public:
// Type testing
bool is_value_slow() const { return true; }
- oop value_mirror() const { return java_lang_Class::value_mirror(java_mirror()); }
- oop box_mirror() const { return java_lang_Class::box_mirror(java_mirror()); }
+ // value_mirror is the primary mirror
+ oop value_mirror() const { return java_lang_Class::inline_type_mirror(java_mirror()); }
+ oop nullable_mirror() const { return java_lang_Class::nullable_type_mirror(java_mirror()); }
// Casting from Klass*
static ValueKlass* cast(Klass* k) {
assert(k->is_value(), "cast to ValueKlass");
return (ValueKlass*) k;
@@ -250,11 +251,11 @@
return offset;
}
void set_default_value(oop val) {
java_mirror()->obj_field_put(default_value_offset(), val);
- value_mirror()->obj_field_put(default_value_offset(), val);
+ nullable_mirror()->obj_field_put(default_value_offset(), val);
}
oop default_value() {
oop val = java_mirror()->obj_field_acquire(default_value_offset());
assert(oopDesc::is_oop(val), "Sanity check");
< prev index next >