Mercurial > hg > graal-compiler
changeset 7331:88b3b9b9a47b
Experimentation with new probability based code emission order.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 10 Jan 2013 16:04:25 +0100 |
parents | 1003fde9b882 |
children | d91529efc642 |
files | graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java |
diffstat | 1 files changed, 16 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java Thu Jan 10 15:29:52 2013 +0100 +++ b/graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java Thu Jan 10 16:04:25 2013 +0100 @@ -58,6 +58,22 @@ countEdges(startBlock, null); computeOrder(startBlock); + + + List<Block> newCodeEmittingOrder = new ArrayList<>(); + List<Block> outOfLine = new ArrayList<>(); + for (Block b : codeEmittingOrder) { + if (b.getBeginNode().probability() > 0.07) { + newCodeEmittingOrder.add(b); + } else { + outOfLine.add(b); + } + } + + for (Block b : outOfLine) { + newCodeEmittingOrder.add(b); + } + codeEmittingOrder = newCodeEmittingOrder; } /**