mirror of
https://github.com/openjdk/jdk.git
synced 2026-03-02 20:20:14 +00:00
8343699: [aarch64] Bug in MacroAssembler::klass_decode_mode()
Reviewed-by: adinn, coleenp
This commit is contained in:
parent
308357cba7
commit
456c71d1ff
@ -5305,7 +5305,7 @@ MacroAssembler::KlassDecodeMode MacroAssembler::klass_decode_mode() {
|
||||
if (operand_valid_for_logical_immediate(
|
||||
/*is32*/false, (uint64_t)CompressedKlassPointers::base())) {
|
||||
const size_t range = CompressedKlassPointers::klass_range_end() - CompressedKlassPointers::base();
|
||||
const uint64_t range_mask = (1ULL << log2i(range)) - 1;
|
||||
const uint64_t range_mask = right_n_bits(ceil_log2(range));
|
||||
if (((uint64_t)CompressedKlassPointers::base() & range_mask) == 0) {
|
||||
return (_klass_decode_mode = KlassDecodeXor);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user