RFR: 8292301: [REDO v2] C2 crash when allocating array of size too large [v4]

Roland Westrelin roland at openjdk.org
Fri Sep 23 07:17:22 UTC 2022


On Mon, 19 Sep 2022 22:09:17 GMT, Vladimir Kozlov <kvn at openjdk.org> wrote:

>> Roland Westrelin has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 12 commits:
>> 
>>  - comments
>>  - Merge branch 'master' into JDK-8292301
>>  - Update src/hotspot/share/opto/phaseX.cpp
>>    
>>    Co-authored-by: Tobias Hartmann <tobias.hartmann at oracle.com>
>>  - undo needless change
>>  - dos->unix test file
>>  - move tests
>>  - test fix
>>  - fix
>>  - test
>>  - test for 8288184
>>  - ... and 2 more: https://git.openjdk.org/jdk/compare/8e22f2bb...9d92011a
>
> src/hotspot/share/opto/compile.cpp line 4013:
> 
>> 4011:             assert(call->is_CallStaticJava(), "static call expected");
>> 4012:             assert(call->req() == call->jvms()->endoff() + 1, "missing extra input");
>> 4013:             Node* valid_length_test = call->in(call->req()-1);
> 
> How you know that call node still has this input and it is call->req() -1?

Same as above: the ValidLengthTest input from the AllocateArrayNode is always moved to the call so there's no reason it shouldn't still be there.

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

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


More information about the hotspot-compiler-dev mailing list