On Fri, 6 May 2022 03:47:47 GMT, Xiaohong Gong <[email protected]> wrote:
>> src/hotspot/share/opto/vectorIntrinsics.cpp line 1238:
>>
>>> 1236: } else {
>>> 1237: // Masked vector load with IOOBE always uses the predicated
>>> load.
>>> 1238: const TypeInt* offset_in_range =
>>> gvn().type(argument(8))->isa_int();
>>
>> Should it be `argument(7)`? (and adjustments later to access the container).
>
> I'm afraid it's `argument(8)` for the load operation since the `argument(7)`
> is the mask input. It seems the argument number is not right begin from the
> mask input which is expected to be `6`. But the it's not. Actually I don't
> quite understand why.
offset is long so uses two argument slots (5 and 6).
mask is argument (7).
offsetInRange is argument(8).
-------------
PR: https://git.openjdk.java.net/jdk/pull/8035