Mercurial > hg > truffle
changeset 19990:9a7ede0d673b
avoid unnecessary copying in NodeList.toArray(A[] a)
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Sun, 22 Mar 2015 12:29:01 +0100 |
parents | 9912bc54ec0f |
children | 4187aa9d6a10 |
files | graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeList.java |
diffstat | 1 files changed, 6 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- 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> A[] toArray(A[] template) { - return (A[]) Arrays.copyOf(nodes, size, template.getClass()); + public <A> 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