RFR: 8269725: AArch64: Add VectorMask query implementation for NEON [v2]
Xiaohong Gong
xgong at openjdk.java.net
Fri Jul 9 06:56:54 UTC 2021
On Thu, 8 Jul 2021 09:52:42 GMT, Andrew Haley <aph at openjdk.org> wrote:
>> Thanks for your comment @theRealAph ! Yeah, it's "Reverse the bits". Thanks for pointing out this!
>> `negr` is used to convert the original mask values from `0/1` to `0/-1`. So that we can firstly calculate the trailing zero numbers in bits, and then divide it by 8. Note that the mask input for these operations are different from others. It is actually a boolean vector with `0/1` as the element value.
>
> Yes, but you reverse the bits in $dst, which reverses the byte order and changes each 0x01 byte to 0x80. You then count the leading zeroes. What, then, is the point of negating each 0x01 byte to 0xff first?
Hi @theRealAph , the new commit has removed the redundant `negr` for `firsttrue, lasttrue`, and all tests pass. Would you mind having look at it again? Thanks so much!
-------------
PR: https://git.openjdk.java.net/jdk/pull/4699
More information about the hotspot-compiler-dev
mailing list