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:48:42 GMT, Andrew Haley <aph at openjdk.org> wrote:
>> Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Add ULL
>
> 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.
-------------
PR: https://git.openjdk.java.net/jdk/pull/7023
More information about the hotspot-dev
mailing list