Integrated: 8318509: x86 count_positives intrinsic broken for -XX:AVX3Threshold=0

Claes Redestad redestad at openjdk.org
Tue Oct 24 13:35:49 UTC 2023


On Thu, 19 Oct 2023 12:54:47 GMT, Claes Redestad <redestad at openjdk.org> wrote:

> The AVX-512 implementation of count_positives is broken when there are negative values in the tail block, since the len register is repurposed to then re-read as-if it still contained the original value. 
> 
> Proposed fix is to restore len from the value in tmp1, which at this point holds the count of bytes in the tail. 
> 
> Existing TestCountPositives test is pretty exhaustive and just needs to be run explicitly with AVX3Threshold=0 enabled.

This pull request has now been integrated.

Changeset: e67550cf
Author:    Claes Redestad <redestad at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/e67550cfec4dbd1c8c2c9869dda34fa09a5c274b
Stats:     193 lines in 3 files changed: 100 ins; 40 del; 53 mod

8318509: x86 count_positives intrinsic broken for -XX:AVX3Threshold=0

Reviewed-by: thartmann, jbhateja, epeter

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

PR: https://git.openjdk.org/jdk/pull/16267


More information about the hotspot-compiler-dev mailing list