RFR: 8272131: PhaseMacroExpand::generate_slow_arraycopy crash when clone null CallProjections.fallthrough_ioproj [v2]

Tobias Hartmann thartmann at openjdk.java.net
Tue Aug 10 13:40:37 UTC 2021


On Tue, 10 Aug 2021 13:31:00 GMT, Hui Shi <hshi at openjdk.org> wrote:

>> This fix a crash in PhaseMacroExpand::generate_slow_arraycopy in following case, because arraycopy node's fallthrough_ioproj is NULL.
>> - arraycopy has ArrayIndexOutOfBoundsException exception
>> - arraycopy is before an infinite loop
>> 
>> Fix is not cloning and replacing fallthrough_ioproj when it is NULL.
>> 
>> 
>>     static void foo() {
>>         try {
>>             Arrays.copyOfRange(src, -1, 128);
>>             do {
>>             } while (true);
>>         } catch (ArrayIndexOutOfBoundsException ex) {
>>             count++;
>>         }
>>     }
>> 
>> 
>> New test is added.
>> Test: Linux X64 tier1/tier2/tier3 release/fastdebug passed.
>
> Hui Shi has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fix typo and comment

Looks good.

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

Marked as reviewed by thartmann (Reviewer).

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


More information about the hotspot-compiler-dev mailing list