RFR: 8248404: AArch64: Remove uses of long and unsigned long [v4]
Coleen Phillimore
coleenp at openjdk.java.net
Tue Jan 11 16:55:26 UTC 2022
On Tue, 11 Jan 2022 16:52:01 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:
>> src/hotspot/cpu/aarch64/assembler_aarch64.hpp line 418:
>>
>>> 416: : _base(r), _index(noreg), _offset(o), _mode(base_plus_offset), _target(0) { }
>>> 417: Address(Register r, unsigned long long o)
>>> 418: : _base(r), _index(noreg), _offset(o), _mode(base_plus_offset), _target(0) { }
>>
>> This change looks wrong. For example, a call with `Address(Register, ptrdiff_t)` actually calls `Address(Register, int)`, silently truncating the 64-bit signed type to 32 bits.
>
> Will it silently truncate? I was getting errors with the unit64_t overloads, I was getting ambiguous calls with address or Register. Maybe that's equally wrong.
Getting closer to giving up ...
-------------
PR: https://git.openjdk.java.net/jdk/pull/7023
More information about the hotspot-dev
mailing list