RFR: 8354242: VectorAPI: combine vector not operation with compare [v7]
erifan
duke at openjdk.org
Wed Jun 25 10:16:32 UTC 2025
On Thu, 5 Jun 2025 11:05:48 GMT, Emanuel Peter <epeter at openjdk.org> wrote:
>>> > FYI: `BoolTest::negate` already does what you want: `mask negate( ) const { return mask(_test^4); }` I think you should use that instead :)
>>>
>>> Indeed, I hadn't noticed that, thank you.
>>
>> Oh I think we still cannot use `BoolTest::negate`, because we cannot instantiate a `BoolTest` object with **unsigned** comparison. `BoolTest::negate` is a non-static function.
>
>> Oh I think we still cannot use `BoolTest::negate`, because we cannot instantiate a `BoolTest` object with **unsigned** comparison. `BoolTest::negate` is a non-static function.
>
> I see. Ok. Hmm. I still think that the logic should be in `BoolTest`, because that is where the exact implementation of the enum values is. In that context it is easier to see why `^4` does the negation. And imagine we were ever to change the enum values, then it would be harder to find your code and fix it.
>
> Maybe it could be called `BoolTest::negate_mask(mast btm)` and explain in a comment that both signed and unsigned is supported.
@eme64 @XiaohongGong Your comment has been addressed, thanks for your review!
-------------
PR Comment: https://git.openjdk.org/jdk/pull/24674#issuecomment-3004213740
More information about the hotspot-compiler-dev
mailing list