8346040: Zero interpreter build on Linux Aarch64 is broken

Reviewed-by: kbarrett
Backport-of: ef6e987a006ef81fb0cc6c12a88ee954738ec5d0
This commit is contained in:
Coleen Phillimore 2024-12-12 22:24:36 +00:00
parent 3b53ed7fb0
commit 897a8abecc

View File

@ -258,9 +258,15 @@ public:
is_aligned(addr, klass_alignment_in_bytes());
}
// Check that with the given base, shift and range, aarch64 an encode and decode the klass pointer.
static bool check_klass_decode_mode(address base, int shift, const size_t range) NOT_AARCH64({ return true;});
static bool set_klass_decode_mode() NOT_AARCH64({ return true;}); // can be called after initialization
#if defined(AARCH64) && !defined(ZERO)
// Check that with the given base, shift and range, aarch64 code can encode and decode the klass pointer.
static bool check_klass_decode_mode(address base, int shift, const size_t range);
// Called after initialization.
static bool set_klass_decode_mode();
#else
static bool check_klass_decode_mode(address base, int shift, const size_t range) { return true; }
static bool set_klass_decode_mode() { return true; }
#endif
};
#endif // SHARE_OOPS_COMPRESSEDKLASS_HPP