RFR: 8281146: Replace StringCoding.hasNegatives with countPositives [v6]

Claes Redestad redestad at openjdk.java.net
Thu Mar 3 12:14:10 UTC 2022


On Wed, 2 Mar 2022 14:06:10 GMT, Claes Redestad <redestad at openjdk.org> wrote:

>> Claes Redestad has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 29 commits:
>> 
>>  - Resolve merge conflict
>>  - Fix TestCountPositives to correctly allow 0 return when expected != len (for now)
>>  - aarch64: fix issue with short inputs divisible by wordSize
>>  - Switch aarch64 intrinsic to a variant of countPositives returning len or zero as a first step.
>>  - Revert micro changes, split out to #7516
>>  - Merge branch 'master' of https://github.com/cl4es/jdk into count_positives
>>  - Merge branch 'master' into count_positives
>>  - Restore partial vector checks in AVX2 and SSE intrinsic variants
>>  - Let countPositives use hasNegatives to allow ports not implementing the countPositives intrinsic to stay neutral
>>  - Simplify changes to encodeUTF8
>>  - ... and 19 more: https://git.openjdk.java.net/jdk/compare/5035bf5e...685795ce
>
>> 
> 
> Making the `bottom_type()` of `CountPositivesNode` more precise (`TypeInt::INT` -> `TypeInt::POS`) might help, then. Seems like something we want to do regardless.

> @cl4es Looks like you forgot to remove the "@IntrinsicCandidate" annotation for has_negatives.

I was going back and forth on this since the annotation might be used as a useful marker by other JVM implementors, so wasn't sure if removing the annotation would need to go through a deprecation cycle. I've removed it now; let's see if there are any objections to that.

-------------

PR: https://git.openjdk.java.net/jdk/pull/7231


More information about the shenandoah-dev mailing list