the arraycopy-pre-barrier is a no-op for traversal GC. There's no need to generate the pointless runtime call and the gc state check. http://cr.openjdk.java.net/~rkennke/no-array-prebarrier-traversal/webrev.00/ Test: tier3_gc_shenandoah (in progress) Ok? Roman