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

Xin Liu xliu at openjdk.java.net
Mon Aug 9 18:27:36 UTC 2021


On Mon, 9 Aug 2021 14:06:47 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.

LTGM.

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

Marked as reviewed by xliu (Committer).

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


More information about the hotspot-compiler-dev mailing list