Mercurial > hg > graal-compiler
changeset 23254:dba757ef0c79
TraceRA: work around warning with newer ecj versions.
Fixing the warning would cause an error with older ecj versions.
author | Josef Eisl <josef.eisl@jku.at> |
---|---|
date | Mon, 04 Jan 2016 12:17:38 +0100 |
parents | d5320a931138 |
children | 77feea4fe00c |
files | graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/alloc/TraceBuilder.java |
diffstat | 1 files changed, 7 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/alloc/TraceBuilder.java Mon Jan 04 01:45:30 2016 +0100 +++ b/graal/com.oracle.graal.compiler.common/src/com/oracle/graal/compiler/common/alloc/TraceBuilder.java Mon Jan 04 12:17:38 2016 +0100 @@ -93,7 +93,7 @@ private TraceBuilder(List<T> blocks) { processed = new BitSet(blocks.size()); - worklist = new PriorityQueue<T>(TraceBuilder::compare); + worklist = createQueue(); assert (worklist != null); blocked = new int[blocks.size()]; @@ -103,7 +103,12 @@ } } - private static <T extends AbstractBlockBase<T>> int compare(T a, T b) { + @SuppressWarnings("unchecked") + private PriorityQueue<T> createQueue() { + return (PriorityQueue<T>) new PriorityQueue<AbstractBlockBase<?>>(TraceBuilder::compare); + } + + private static int compare(AbstractBlockBase<?> a, AbstractBlockBase<?> b) { return Double.compare(b.probability(), a.probability()); }