< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/IllegalStamp.java

Print this page




  29 import org.graalvm.compiler.debug.GraalError;
  30 
  31 import jdk.vm.ci.meta.Constant;
  32 import jdk.vm.ci.meta.JavaKind;
  33 import jdk.vm.ci.meta.MemoryAccessProvider;
  34 import jdk.vm.ci.meta.MetaAccessProvider;
  35 import jdk.vm.ci.meta.PrimitiveConstant;
  36 import jdk.vm.ci.meta.ResolvedJavaType;
  37 
  38 /**
  39  * This stamp represents the type of the {@link JavaKind#Illegal} value in the second slot of
  40  * {@link JavaKind#Long} and {@link JavaKind#Double} values. It can only appear in framestates or
  41  * virtual objects.
  42  */
  43 public final class IllegalStamp extends Stamp {
  44 
  45     private IllegalStamp() {
  46     }
  47 
  48     @Override




  49     public JavaKind getStackKind() {
  50         return JavaKind.Illegal;
  51     }
  52 
  53     @Override
  54     public LIRKind getLIRKind(LIRKindTool tool) {
  55         return LIRKind.Illegal;
  56     }
  57 
  58     @Override
  59     public Stamp unrestricted() {
  60         return this;
  61     }
  62 
  63     @Override
  64     public boolean isUnrestricted() {
  65         return true;
  66     }
  67 
  68     @Override




  29 import org.graalvm.compiler.debug.GraalError;
  30 
  31 import jdk.vm.ci.meta.Constant;
  32 import jdk.vm.ci.meta.JavaKind;
  33 import jdk.vm.ci.meta.MemoryAccessProvider;
  34 import jdk.vm.ci.meta.MetaAccessProvider;
  35 import jdk.vm.ci.meta.PrimitiveConstant;
  36 import jdk.vm.ci.meta.ResolvedJavaType;
  37 
  38 /**
  39  * This stamp represents the type of the {@link JavaKind#Illegal} value in the second slot of
  40  * {@link JavaKind#Long} and {@link JavaKind#Double} values. It can only appear in framestates or
  41  * virtual objects.
  42  */
  43 public final class IllegalStamp extends Stamp {
  44 
  45     private IllegalStamp() {
  46     }
  47 
  48     @Override
  49     public void accept(Visitor v) {
  50     }
  51 
  52     @Override
  53     public JavaKind getStackKind() {
  54         return JavaKind.Illegal;
  55     }
  56 
  57     @Override
  58     public LIRKind getLIRKind(LIRKindTool tool) {
  59         return LIRKind.Illegal;
  60     }
  61 
  62     @Override
  63     public Stamp unrestricted() {
  64         return this;
  65     }
  66 
  67     @Override
  68     public boolean isUnrestricted() {
  69         return true;
  70     }
  71 
  72     @Override


< prev index next >