< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.amd64/src/org/graalvm/compiler/core/amd64/AMD64NodeLIRBuilder.java

Print this page
rev 52509 : [mq]: graal

@@ -23,12 +23,10 @@
 
 
 
 package org.graalvm.compiler.core.amd64;
 
-import static org.graalvm.compiler.core.amd64.AMD64NodeLIRBuilder.Options.MitigateSpeculativeExecutionAttacks;
-
 import org.graalvm.compiler.core.gen.NodeLIRBuilder;
 import org.graalvm.compiler.debug.GraalError;
 import org.graalvm.compiler.lir.LIRFrameState;
 import org.graalvm.compiler.lir.amd64.AMD64Call;
 import org.graalvm.compiler.lir.gen.LIRGeneratorTool;

@@ -39,29 +37,17 @@
 import org.graalvm.compiler.nodes.IndirectCallTargetNode;
 import org.graalvm.compiler.nodes.StructuredGraph;
 import org.graalvm.compiler.nodes.ValueNode;
 import org.graalvm.compiler.nodes.calc.IntegerDivRemNode;
 import org.graalvm.compiler.nodes.calc.IntegerDivRemNode.Op;
-import org.graalvm.compiler.nodes.cfg.Block;
-import org.graalvm.compiler.options.Option;
-import org.graalvm.compiler.options.OptionKey;
-import org.graalvm.compiler.options.OptionType;
-import org.graalvm.compiler.options.OptionValues;
 
 import jdk.vm.ci.amd64.AMD64;
 import jdk.vm.ci.meta.AllocatableValue;
 import jdk.vm.ci.meta.Value;
 
 public abstract class AMD64NodeLIRBuilder extends NodeLIRBuilder {
 
-    public static class Options {
-        // @formatter:off
-        @Option(help = "AMD64: Emit lfence instructions at the beginning of basic blocks", type = OptionType.Expert)
-        public static final OptionKey<Boolean> MitigateSpeculativeExecutionAttacks = new OptionKey<>(false);
-        // @formatter:on
-    }
-
     public AMD64NodeLIRBuilder(StructuredGraph graph, LIRGeneratorTool gen, AMD64NodeMatchRules nodeMatchRules) {
         super(graph, gen, nodeMatchRules);
     }
 
     @Override

@@ -135,23 +121,6 @@
 
     @Override
     public AMD64LIRGenerator getLIRGeneratorTool() {
         return (AMD64LIRGenerator) gen;
     }
-
-    @Override
-    public void doBlockPrologue(Block block, OptionValues options) {
-        if (MitigateSpeculativeExecutionAttacks.getValue(options)) {
-            boolean hasControlSplitPredecessor = false;
-            for (Block b : block.getPredecessors()) {
-                if (b.getSuccessorCount() > 1) {
-                    hasControlSplitPredecessor = true;
-                    break;
-                }
-            }
-            boolean isStartBlock = block.getPredecessorCount() == 0;
-            if (hasControlSplitPredecessor || isStartBlock) {
-                getLIRGeneratorTool().emitLFence();
-            }
-        }
-    }
 }
< prev index next >