< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.aarch64/src/org/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator.java

Print this page




  96 import jdk.vm.ci.hotspot.HotSpotObjectConstant;
  97 import jdk.vm.ci.meta.AllocatableValue;
  98 import jdk.vm.ci.meta.Constant;
  99 import jdk.vm.ci.meta.DeoptimizationAction;
 100 import jdk.vm.ci.meta.DeoptimizationReason;
 101 import jdk.vm.ci.meta.JavaConstant;
 102 import jdk.vm.ci.meta.JavaKind;
 103 import jdk.vm.ci.meta.PlatformKind;
 104 import jdk.vm.ci.meta.SpeculationLog;
 105 import jdk.vm.ci.meta.Value;
 106 
 107 /**
 108  * LIR generator specialized for AArch64 HotSpot.
 109  */
 110 public class AArch64HotSpotLIRGenerator extends AArch64LIRGenerator implements HotSpotLIRGenerator {
 111 
 112     final GraalHotSpotVMConfig config;
 113     private HotSpotDebugInfoBuilder debugInfoBuilder;
 114 
 115     protected AArch64HotSpotLIRGenerator(HotSpotProviders providers, GraalHotSpotVMConfig config, LIRGenerationResult lirGenRes) {
 116         this(new AArch64LIRKindTool(), new AArch64ArithmeticLIRGenerator(), new AArch64HotSpotMoveFactory(), providers, config, lirGenRes);
 117     }
 118 
 119     protected AArch64HotSpotLIRGenerator(LIRKindTool lirKindTool, AArch64ArithmeticLIRGenerator arithmeticLIRGen, MoveFactory moveFactory, HotSpotProviders providers, GraalHotSpotVMConfig config,
 120                     LIRGenerationResult lirGenRes) {
 121         super(lirKindTool, arithmeticLIRGen, moveFactory, providers, lirGenRes);
 122         this.config = config;
 123     }
 124 
 125     @Override
 126     public HotSpotProviders getProviders() {
 127         return (HotSpotProviders) super.getProviders();
 128     }
 129 
 130     @Override
 131     public boolean needOnlyOopMaps() {
 132         // Stubs only need oop maps
 133         return getResult().getStub() != null;
 134     }
 135 
 136     private LIRFrameState currentRuntimeCallInfo;




  96 import jdk.vm.ci.hotspot.HotSpotObjectConstant;
  97 import jdk.vm.ci.meta.AllocatableValue;
  98 import jdk.vm.ci.meta.Constant;
  99 import jdk.vm.ci.meta.DeoptimizationAction;
 100 import jdk.vm.ci.meta.DeoptimizationReason;
 101 import jdk.vm.ci.meta.JavaConstant;
 102 import jdk.vm.ci.meta.JavaKind;
 103 import jdk.vm.ci.meta.PlatformKind;
 104 import jdk.vm.ci.meta.SpeculationLog;
 105 import jdk.vm.ci.meta.Value;
 106 
 107 /**
 108  * LIR generator specialized for AArch64 HotSpot.
 109  */
 110 public class AArch64HotSpotLIRGenerator extends AArch64LIRGenerator implements HotSpotLIRGenerator {
 111 
 112     final GraalHotSpotVMConfig config;
 113     private HotSpotDebugInfoBuilder debugInfoBuilder;
 114 
 115     protected AArch64HotSpotLIRGenerator(HotSpotProviders providers, GraalHotSpotVMConfig config, LIRGenerationResult lirGenRes) {
 116         this(new AArch64LIRKindTool(), new AArch64ArithmeticLIRGenerator(null), new AArch64HotSpotMoveFactory(), providers, config, lirGenRes);
 117     }
 118 
 119     protected AArch64HotSpotLIRGenerator(LIRKindTool lirKindTool, AArch64ArithmeticLIRGenerator arithmeticLIRGen, MoveFactory moveFactory, HotSpotProviders providers, GraalHotSpotVMConfig config,
 120                     LIRGenerationResult lirGenRes) {
 121         super(lirKindTool, arithmeticLIRGen, moveFactory, providers, lirGenRes);
 122         this.config = config;
 123     }
 124 
 125     @Override
 126     public HotSpotProviders getProviders() {
 127         return (HotSpotProviders) super.getProviders();
 128     }
 129 
 130     @Override
 131     public boolean needOnlyOopMaps() {
 132         // Stubs only need oop maps
 133         return getResult().getStub() != null;
 134     }
 135 
 136     private LIRFrameState currentRuntimeCallInfo;


< prev index next >