RFR: 8283667: [vectorapi] Vectorization for masked load with IOOBE with predicate feature [v3]

Xiaohong Gong xgong at openjdk.java.net
Thu Jun 2 01:52:35 UTC 2022


On Fri, 13 May 2022 08:58:12 GMT, Xiaohong Gong <xgong at openjdk.org> wrote:

>> 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!

> @XiaohongGong Could you please rebase the branch and resolve conflicts?

Sure, I'm working on this now. The patch will be updated soon. Thanks.

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

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


More information about the core-libs-dev mailing list