changeset 7369:4c6e577d0c01

Backed out changeset b5280041f59e. Alignment for branch targets has no positive effect. Remove to keep code cache smaller.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Mon, 14 Jan 2013 14:19:49 +0100
parents b5280041f59e
children 39a4192ae632
files graal/com.oracle.graal.alloc/src/com/oracle/graal/alloc/ComputeBlockOrder.java graal/com.oracle.graal.asm.amd64/src/com/oracle/graal/asm/amd64/AMD64Assembler.java graal/com.oracle.graal.asm/src/com/oracle/graal/asm/AbstractAssembler.java graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java graal/com.oracle.graal.lir/src/com/oracle/graal/lir/StandardOp.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/cfg/Block.java
diffstat 6 files changed, 4 insertions(+), 26 deletions(-) [+]
line wrap: on
line diff
--- 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<Block> 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);
     }
--- 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);
     }
--- 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);
--- 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<LIRInstruction>());
 
-        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());
--- 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);
         }
 
--- 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() {