RFR: 8338021: Support new unsigned and saturating vector operators in VectorAPI [v31]

Paul Sandoz psandoz at openjdk.org
Thu Oct 24 15:19:20 UTC 2024


On Thu, 24 Oct 2024 13:41:13 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> To exercise non memory operand pattern we need a vector operation padding layer after load vector, this will always ensure that selector pick all register operands flavor of instruction. Since its a generic limitation, do you think we should float it as a separate PR? 
>> 
>> I have create an RFE https://bugs.openjdk.org/browse/JDK-8342959  for reference. Given that we have moved IR tests out this PR on the grounds of review complexity, lets not add more code here.
>
> Ok, we can file a separate RFE. Though I really have voiced 2 concerns:
> - Making sure we always test `_mem` and `_reg` variants in the backend. See your https://bugs.openjdk.org/browse/JDK-8342959
> - Making sure we have tests that would detect vectors that are too long. This would require some padding between the vectors, so that we have some untouched space - and if it does get touched we know that a vector was too long. Does that make sense? This is I guess also a general concern - and would have to be applied to all vector instructions.

Good point on vector operations overrunning bounds. I worry about the computational increase of doing this generally for all operations (explicit or for auto vectorization i suppose). Perhaps we can focus on areas where we know this may be problematic?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20507#discussion_r1815211324


More information about the hotspot-dev mailing list