RFR: 8283667: [vectorapi] Vectorization for masked load with IOOBE with predicate feature [v3]
Xiaohong Gong
xgong at openjdk.java.net
Fri May 13 09:01:49 UTC 2022
On Thu, 12 May 2022 16:07:54 GMT, Paul Sandoz <psandoz at openjdk.org> wrote:
>> Xiaohong Gong has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Rename "use_predicate" to "needs_predicate"
>
> Yes, the tests were run in debug mode. The reporting of the missing constant occurs for the compiled method that is called from the method where the constants are declared e.g.:
>
> 719 240 b jdk.incubator.vector.Int256Vector::fromArray0 (15 bytes)
> ** Rejected vector op (LoadVectorMasked,int,8) because architecture does not support it
> ** missing constant: offsetInRange=Parm
> @ 11 jdk.incubator.vector.IntVector::fromArray0Template (22 bytes) force inline by annotation
>
>
> So it appears to be working as expected. A similar pattern occurs at a lower-level for the passing of the mask class. `Int256Vector::fromArray0` passes a constant class to `IntVector::fromArray0Template` (the compilation of which bails out before checking that the `offsetInRange` is constant).
You are right @PaulSandoz ! I ran the tests and benchmarks with your patch, and no failure and performance regression are found. I will update the patch soon. Thanks for the help!
-------------
PR: https://git.openjdk.java.net/jdk/pull/8035
More information about the hotspot-compiler-dev
mailing list