# HG changeset patch # User Doug Simon # Date 1427023741 -3600 # Node ID 9a7ede0d673bdd60c055f51b913a42a5c6125d61 # Parent 9912bc54ec0fe2a9667a9fb31eee8c156f9a439d avoid unnecessary copying in NodeList.toArray(A[] a) diff -r 9912bc54ec0f -r 9a7ede0d673b graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeList.java --- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeList.java Sun Mar 22 00:12:34 2015 +0100 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeList.java Sun Mar 22 12:29:01 2015 +0100 @@ -335,8 +335,12 @@ @Override @SuppressWarnings("unchecked") - public A[] toArray(A[] template) { - return (A[]) Arrays.copyOf(nodes, size, template.getClass()); + public A[] toArray(A[] a) { + if (a.length <= size) { + System.arraycopy(nodes, 0, a, 0, size); + return a; + } + return (A[]) Arrays.copyOf(nodes, size, a.getClass()); } @Override