# HG changeset patch # User Thomas Wuerthinger # Date 1358169589 -3600 # Node ID 4c6e577d0c018c4d54898d3fc847990524ad6c86 # Parent b5280041f59e475d9df389f9c61ffe272d7e3519 Backed out changeset b5280041f59e. Alignment for branch targets has no positive effect. Remove to keep code cache smaller. diff -r b5280041f59e -r 4c6e577d0c01 graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java --- a/graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java Sun Jan 13 19:32:16 2013 +0100 +++ b/graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java Mon Jan 14 14:19:49 2013 +0100 @@ -98,10 +98,10 @@ if (block.isLoopHeader()) { block.align = true; } - addBlock(block, order); + order.add(block); } if (block.isLoopEnd() && skipLoopHeader(block.getLoop().header)) { - addBlock(block.getLoop().header, order); + order.add(block.getLoop().header); for (Block succ : block.getLoop().header.getSuccessors()) { if (succ.getLoopDepth() == block.getLoopDepth()) { succ.align = true; @@ -137,13 +137,6 @@ } } - private static void addBlock(Block block, List order) { - if (order.size() > 0 && block.getPredecessors().size() == 1 && block.getPredecessors().get(0) != order.get(order.size() - 1)) { - block.softAlign = false; - } - order.add(block); - } - private boolean skipLoopHeader(Block bestSucc) { return (reorderLoops && bestSucc.isLoopHeader() && !bestSucc.isLoopEnd() && bestSucc.getLoop().loopBegin().loopEnds().count() == 1); } diff -r b5280041f59e -r 4c6e577d0c01 graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java --- a/graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java Sun Jan 13 19:32:16 2013 +0100 +++ b/graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java Mon Jan 14 14:19:49 2013 +0100 @@ -2958,13 +2958,6 @@ } } - @Override - public void softAlign(int modulus) { - if (codeBuffer.position() % modulus > modulus / 2) { - nop(modulus - (codeBuffer.position() % modulus)); - } - } - public void pushfq() { emitByte(0x9c); } diff -r b5280041f59e -r 4c6e577d0c01 graal/com.oracle.graal.asm/src/com/oracle/graal/asm/AbstractAssembler.java --- a/graal/com.oracle.graal.asm/src/com/oracle/graal/asm/AbstractAssembler.java Sun Jan 13 19:32:16 2013 +0100 +++ b/graal/com.oracle.graal.asm/src/com/oracle/graal/asm/AbstractAssembler.java Mon Jan 14 14:19:49 2013 +0100 @@ -50,8 +50,6 @@ public abstract void align(int modulus); - public abstract void softAlign(int modulus); - public abstract void jmp(Label l); protected abstract void patchJumpTarget(int branch, int jumpTarget); diff -r b5280041f59e -r 4c6e577d0c01 graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java Sun Jan 13 19:32:16 2013 +0100 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java Mon Jan 14 14:19:49 2013 +0100 @@ -282,7 +282,7 @@ assert lir.lir(block) == null : "LIR list already computed for this block"; lir.setLir(block, new ArrayList()); - append(new LabelOp(new Label(), block.align, block.softAlign)); + append(new LabelOp(new Label(), block.align)); if (GraalOptions.TraceLIRGeneratorLevel >= 1) { TTY.println("BEGIN Generating LIR for block B" + block.getId()); diff -r b5280041f59e -r 4c6e577d0c01 graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java --- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java Sun Jan 13 19:32:16 2013 +0100 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java Mon Jan 14 14:19:49 2013 +0100 @@ -51,12 +51,10 @@ public static class LabelOp extends LIRInstruction { private final Label label; private final boolean align; - private final boolean softAlign; - public LabelOp(Label label, boolean align, boolean softAlign) { + public LabelOp(Label label, boolean align) { this.label = label; this.align = align; - this.softAlign = softAlign; } @Override @@ -64,9 +62,6 @@ if (align) { tasm.asm.align(tasm.target.wordSize * 2); } - if (softAlign) { - tasm.asm.softAlign(tasm.target.wordSize * 2); - } tasm.asm.bind(label); } diff -r b5280041f59e -r 4c6e577d0c01 graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/Block.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/Block.java Sun Jan 13 19:32:16 2013 +0100 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/Block.java Mon Jan 14 14:19:49 2013 +0100 @@ -45,7 +45,6 @@ // Fields that still need to be worked on, try to remove them later. public boolean align; - public boolean softAlign; public int linearScanNumber; protected Block() {