RFR(XS): 8073792: assert((get_length_if_constant(phase) == -1) == !ary_src->size()->is_con()) failed: inconsistent

Roland Westrelin roland.westrelin at oracle.com
Wed Feb 25 09:58:47 UTC 2015


http://cr.openjdk.java.net/~roland/8073792/webrev.00/

The assert checks that for an array clone, the length input to the ArrayCopyNode is constant iff the size of the array input is constant. The problem is that the length input is the result of a chain of transformations. If the array input becomes of known size after parsing, depending on the order in which nodes are processed by the igvn, the ArrayCopyNode can be processed before the length input has been processed and collapsed to a constant.

Roland.


More information about the hotspot-compiler-dev mailing list