public class org.graalvm.compiler.core.common.type.StampFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.core.common.type.StampFactory
  super_class: java.lang.Object
{
  private static final org.graalvm.compiler.core.common.type.Stamp[] stampCache;
    descriptor: [Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp[] emptyStampCache;
    descriptor: [Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp objectStamp;
    descriptor: Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp objectNonNullStamp;
    descriptor: Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp objectAlwaysNullStamp;
    descriptor: Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp positiveInt;
    descriptor: Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp booleanTrue;
    descriptor: Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp booleanFalse;
    descriptor: Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.core.common.type.Stamp rawPointer;
    descriptor: Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=9, locals=4, args_size=0
         0: .line 42
            ldc Lorg/graalvm/compiler/core/common/type/StampFactory;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.core.common.type.StampFactory.$assertionsDisabled:Z
         3: .line 46
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            arraylength
            anewarray org.graalvm.compiler.core.common.type.Stamp
            putstatic org.graalvm.compiler.core.common.type.StampFactory.stampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
         4: .line 47
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            arraylength
            anewarray org.graalvm.compiler.core.common.type.Stamp
            putstatic org.graalvm.compiler.core.common.type.StampFactory.emptyStampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
         5: .line 48
            new org.graalvm.compiler.core.common.type.ObjectStamp
            dup
            aconst_null
            iconst_0
            iconst_0
            iconst_0
            invokespecial org.graalvm.compiler.core.common.type.ObjectStamp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaType;ZZZ)V
            putstatic org.graalvm.compiler.core.common.type.StampFactory.objectStamp:Lorg/graalvm/compiler/core/common/type/Stamp;
         6: .line 49
            new org.graalvm.compiler.core.common.type.ObjectStamp
            dup
            aconst_null
            iconst_0
            iconst_1
            iconst_0
            invokespecial org.graalvm.compiler.core.common.type.ObjectStamp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaType;ZZZ)V
            putstatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNullStamp:Lorg/graalvm/compiler/core/common/type/Stamp;
         7: .line 50
            new org.graalvm.compiler.core.common.type.ObjectStamp
            dup
            aconst_null
            iconst_0
            iconst_0
            iconst_1
            invokespecial org.graalvm.compiler.core.common.type.ObjectStamp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaType;ZZZ)V
            putstatic org.graalvm.compiler.core.common.type.StampFactory.objectAlwaysNullStamp:Lorg/graalvm/compiler/core/common/type/Stamp;
         8: .line 51
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            lconst_0
            ldc 2147483647
            lconst_0
            ldc 2147483647
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(Ljdk/vm/ci/meta/JavaKind;JJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            putstatic org.graalvm.compiler.core.common.type.StampFactory.positiveInt:Lorg/graalvm/compiler/core/common/type/Stamp;
         9: .line 52
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            ldc -1
            ldc -1
            lconst_1
            lconst_1
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(Ljdk/vm/ci/meta/JavaKind;JJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            putstatic org.graalvm.compiler.core.common.type.StampFactory.booleanTrue:Lorg/graalvm/compiler/core/common/type/Stamp;
        10: .line 53
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            lconst_0
            lconst_0
            lconst_0
            lconst_0
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(Ljdk/vm/ci/meta/JavaKind;JJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            putstatic org.graalvm.compiler.core.common.type.StampFactory.booleanFalse:Lorg/graalvm/compiler/core/common/type/Stamp;
        11: .line 54
            new org.graalvm.compiler.core.common.type.RawPointerStamp
            dup
            invokespecial org.graalvm.compiler.core.common.type.RawPointerStamp.<init>:()V
            putstatic org.graalvm.compiler.core.common.type.StampFactory.rawPointer:Lorg/graalvm/compiler/core/common/type/Stamp;
        12: .line 76
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setIntCache:(Ljdk/vm/ci/meta/JavaKind;)V
        13: .line 77
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setIntCache:(Ljdk/vm/ci/meta/JavaKind;)V
        14: .line 78
            getstatic jdk.vm.ci.meta.JavaKind.Short:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setIntCache:(Ljdk/vm/ci/meta/JavaKind;)V
        15: .line 79
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setIntCache:(Ljdk/vm/ci/meta/JavaKind;)V
        16: .line 80
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setIntCache:(Ljdk/vm/ci/meta/JavaKind;)V
        17: .line 81
            getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setIntCache:(Ljdk/vm/ci/meta/JavaKind;)V
        18: .line 83
            getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setFloatCache:(Ljdk/vm/ci/meta/JavaKind;)V
        19: .line 84
            getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setFloatCache:(Ljdk/vm/ci/meta/JavaKind;)V
        20: .line 86
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            getstatic org.graalvm.compiler.core.common.type.StampFactory.objectStamp:Lorg/graalvm/compiler/core/common/type/Stamp;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setCache:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/core/common/type/Stamp;)V
        21: .line 87
            getstatic jdk.vm.ci.meta.JavaKind.Void:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.VoidStamp.getInstance:()Lorg/graalvm/compiler/core/common/type/VoidStamp;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setCache:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/core/common/type/Stamp;)V
        22: .line 88
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.IllegalStamp.getInstance:()Lorg/graalvm/compiler/core/common/type/IllegalStamp;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setCache:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/core/common/type/Stamp;)V
        23: .line 90
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            dup
            astore 3
            arraylength
            istore 2
            iconst_0
            istore 1
            goto 28
      StackMap locals: top int int jdk.vm.ci.meta.JavaKind[]
      StackMap stack:
        24: aload 3
            iload 1
            aaload
            astore 0 /* k */
        start local 0 // jdk.vm.ci.meta.JavaKind k
        25: .line 91
            getstatic org.graalvm.compiler.core.common.type.StampFactory.stampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* k */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            aaload
            ifnull 27
        26: .line 92
            getstatic org.graalvm.compiler.core.common.type.StampFactory.emptyStampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* k */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            getstatic org.graalvm.compiler.core.common.type.StampFactory.stampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* k */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            aaload
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.empty:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aastore
        end local 0 // jdk.vm.ci.meta.JavaKind k
        27: .line 90
      StackMap locals:
      StackMap stack:
            iinc 1 1
      StackMap locals:
      StackMap stack:
        28: iload 1
            iload 2
            if_icmplt 24
        29: .line 95
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
           25   27     0     k  Ljdk/vm/ci/meta/JavaKind;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.StampFactory this
         0: .line 42
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.core.common.type.StampFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/common/type/StampFactory;

  private static void setCache(jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.core.common.type.Stamp);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/core/common/type/Stamp;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.vm.ci.meta.JavaKind kind
        start local 1 // org.graalvm.compiler.core.common.type.Stamp stamp
         0: .line 57
            getstatic org.graalvm.compiler.core.common.type.StampFactory.stampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            aload 1 /* stamp */
            aastore
         1: .line 58
            return
        end local 1 // org.graalvm.compiler.core.common.type.Stamp stamp
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   kind  Ljdk/vm/ci/meta/JavaKind;
            0    2     1  stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
    MethodParameters:
       Name  Flags
      kind   
      stamp  

  private static void setIntCache(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=4, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         0: .line 61
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            istore 1 /* bits */
        start local 1 // int bits
         1: .line 63
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.isUnsigned:()Z
            ifeq 4
         2: .line 64
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            lstore 2 /* mask */
        start local 2 // long mask
         3: .line 65
            goto 5
        end local 2 // long mask
         4: .line 66
      StackMap locals: int
      StackMap stack:
            iload 1 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            lstore 2 /* mask */
        start local 2 // long mask
         5: .line 68
      StackMap locals: long
      StackMap stack:
            aload 0 /* kind */
            iload 1 /* bits */
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getMinValue:()J
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getMaxValue:()J
            lconst_0
            lload 2 /* mask */
            invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.create:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setCache:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/core/common/type/Stamp;)V
         6: .line 69
            return
        end local 2 // long mask
        end local 1 // int bits
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  kind  Ljdk/vm/ci/meta/JavaKind;
            1    7     1  bits  I
            3    4     2  mask  J
            5    7     2  mask  J
    MethodParameters:
      Name  Flags
      kind  

  private static void setFloatCache(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         0: .line 72
            aload 0 /* kind */
            new org.graalvm.compiler.core.common.type.FloatStamp
            dup
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            invokespecial org.graalvm.compiler.core.common.type.FloatStamp.<init>:(I)V
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.setCache:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/core/common/type/Stamp;)V
         1: .line 73
            return
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  public static org.graalvm.compiler.core.common.type.Stamp tautology();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 98
            getstatic org.graalvm.compiler.core.common.type.StampFactory.booleanTrue:Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.Stamp contradiction();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 102
            getstatic org.graalvm.compiler.core.common.type.StampFactory.booleanFalse:Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.Stamp forKind(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         0: .line 109
            getstatic org.graalvm.compiler.core.common.type.StampFactory.$assertionsDisabled:Z
            ifne 1
            getstatic org.graalvm.compiler.core.common.type.StampFactory.stampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            aaload
            ifnonnull 1
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unexpected forKind("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* kind */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 110
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.common.type.StampFactory.stampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            aaload
            areturn
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  public static org.graalvm.compiler.core.common.type.Stamp forVoid();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 118
            invokestatic org.graalvm.compiler.core.common.type.VoidStamp.getInstance:()Lorg/graalvm/compiler/core/common/type/VoidStamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.Stamp intValue();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 122
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.Stamp positiveInt();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 126
            getstatic org.graalvm.compiler.core.common.type.StampFactory.positiveInt:Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.Stamp empty(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         0: .line 130
            getstatic org.graalvm.compiler.core.common.type.StampFactory.emptyStampCache:[Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            aaload
            areturn
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  public static org.graalvm.compiler.core.common.type.IntegerStamp forInteger(jdk.vm.ci.meta.JavaKind, long, long, long, long);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;JJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=9, args_size=5
        start local 0 // jdk.vm.ci.meta.JavaKind kind
        start local 1 // long lowerBound
        start local 3 // long upperBound
        start local 5 // long downMask
        start local 7 // long upMask
         0: .line 134
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            lload 1 /* lowerBound */
            lload 3 /* upperBound */
            lload 5 /* downMask */
            lload 7 /* upMask */
            invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.create:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 7 // long upMask
        end local 5 // long downMask
        end local 3 // long upperBound
        end local 1 // long lowerBound
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        kind  Ljdk/vm/ci/meta/JavaKind;
            0    1     1  lowerBound  J
            0    1     3  upperBound  J
            0    1     5    downMask  J
            0    1     7      upMask  J
    MethodParameters:
            Name  Flags
      kind        
      lowerBound  
      upperBound  
      downMask    
      upMask      

  public static org.graalvm.compiler.core.common.type.IntegerStamp forInteger(jdk.vm.ci.meta.JavaKind, long, long);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;JJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // jdk.vm.ci.meta.JavaKind kind
        start local 1 // long lowerBound
        start local 3 // long upperBound
         0: .line 138
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            lload 1 /* lowerBound */
            lload 3 /* upperBound */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 3 // long upperBound
        end local 1 // long lowerBound
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        kind  Ljdk/vm/ci/meta/JavaKind;
            0    1     1  lowerBound  J
            0    1     3  upperBound  J
    MethodParameters:
            Name  Flags
      kind        
      lowerBound  
      upperBound  

  public static org.graalvm.compiler.core.common.type.IntegerStamp forIntegerWithMask(int, long, long, org.graalvm.compiler.core.common.type.IntegerStamp);
    descriptor: (IJJLorg/graalvm/compiler/core/common/type/IntegerStamp;)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=7, args_size=4
        start local 0 // int bits
        start local 1 // long newLowerBound
        start local 3 // long newUpperBound
        start local 5 // org.graalvm.compiler.core.common.type.IntegerStamp maskStamp
         0: .line 153
            iload 0 /* bits */
            lload 1 /* newLowerBound */
            lload 3 /* newUpperBound */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            astore 6 /* limit */
        start local 6 // org.graalvm.compiler.core.common.type.IntegerStamp limit
         1: .line 154
            iload 0 /* bits */
            lload 1 /* newLowerBound */
            lload 3 /* newUpperBound */
            aload 6 /* limit */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.downMask:()J
            aload 5 /* maskStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.downMask:()J
            lor
            aload 6 /* limit */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upMask:()J
            aload 5 /* maskStamp */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upMask:()J
            land
            invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.create:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 6 // org.graalvm.compiler.core.common.type.IntegerStamp limit
        end local 5 // org.graalvm.compiler.core.common.type.IntegerStamp maskStamp
        end local 3 // long newUpperBound
        end local 1 // long newLowerBound
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           bits  I
            0    2     1  newLowerBound  J
            0    2     3  newUpperBound  J
            0    2     5      maskStamp  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            1    2     6          limit  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    MethodParameters:
               Name  Flags
      bits           
      newLowerBound  
      newUpperBound  
      maskStamp      

  public static org.graalvm.compiler.core.common.type.IntegerStamp forIntegerWithMask(int, long, long, long, long);
    descriptor: (IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=10, args_size=5
        start local 0 // int bits
        start local 1 // long newLowerBound
        start local 3 // long newUpperBound
        start local 5 // long newDownMask
        start local 7 // long newUpMask
         0: .line 158
            iload 0 /* bits */
            lload 1 /* newLowerBound */
            lload 3 /* newUpperBound */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            astore 9 /* limit */
        start local 9 // org.graalvm.compiler.core.common.type.IntegerStamp limit
         1: .line 159
            iload 0 /* bits */
            lload 1 /* newLowerBound */
            lload 3 /* newUpperBound */
            aload 9 /* limit */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.downMask:()J
            lload 5 /* newDownMask */
            lor
            aload 9 /* limit */
            invokevirtual org.graalvm.compiler.core.common.type.IntegerStamp.upMask:()J
            lload 7 /* newUpMask */
            land
            invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.create:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 9 // org.graalvm.compiler.core.common.type.IntegerStamp limit
        end local 7 // long newUpMask
        end local 5 // long newDownMask
        end local 3 // long newUpperBound
        end local 1 // long newLowerBound
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           bits  I
            0    2     1  newLowerBound  J
            0    2     3  newUpperBound  J
            0    2     5    newDownMask  J
            0    2     7      newUpMask  J
            1    2     9          limit  Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    MethodParameters:
               Name  Flags
      bits           
      newLowerBound  
      newUpperBound  
      newDownMask    
      newUpMask      

  public static org.graalvm.compiler.core.common.type.IntegerStamp forInteger(int);
    descriptor: (I)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // int bits
         0: .line 163
            iload 0 /* bits */
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.minValue:(I)J
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.maxValue:(I)J
            lconst_0
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.create:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  bits  I
    MethodParameters:
      Name  Flags
      bits  

  public static org.graalvm.compiler.core.common.type.IntegerStamp forUnsignedInteger(int);
    descriptor: (I)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // int bits
         0: .line 167
            iload 0 /* bits */
            lconst_0
            iload 0 /* bits */
            invokestatic org.graalvm.compiler.core.common.NumUtil.maxValueUnsigned:(I)J
            lconst_0
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forUnsignedInteger:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  bits  I
    MethodParameters:
      Name  Flags
      bits  

  public static org.graalvm.compiler.core.common.type.IntegerStamp forUnsignedInteger(int, long, long);
    descriptor: (IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=5, args_size=3
        start local 0 // int bits
        start local 1 // long unsignedLowerBound
        start local 3 // long unsignedUpperBound
         0: .line 171
            iload 0 /* bits */
            lload 1 /* unsignedLowerBound */
            lload 3 /* unsignedUpperBound */
            lconst_0
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forUnsignedInteger:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 3 // long unsignedUpperBound
        end local 1 // long unsignedLowerBound
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    1     0                bits  I
            0    1     1  unsignedLowerBound  J
            0    1     3  unsignedUpperBound  J
    MethodParameters:
                    Name  Flags
      bits                
      unsignedLowerBound  
      unsignedUpperBound  

  public static org.graalvm.compiler.core.common.type.IntegerStamp forUnsignedInteger(int, long, long, long, long);
    descriptor: (IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=15, args_size=5
        start local 0 // int bits
        start local 1 // long unsignedLowerBound
        start local 3 // long unsignedUpperBound
        start local 5 // long downMask
        start local 7 // long upMask
         0: .line 175
            lload 1 /* unsignedLowerBound */
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.signExtend:(JI)J
            lstore 9 /* lowerBound */
        start local 9 // long lowerBound
         1: .line 176
            lload 3 /* unsignedUpperBound */
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.signExtend:(JI)J
            lstore 11 /* upperBound */
        start local 11 // long upperBound
         2: .line 177
            lload 9 /* lowerBound */
            lload 11 /* upperBound */
            invokestatic org.graalvm.compiler.core.common.NumUtil.sameSign:(JJ)Z
            ifne 5
         3: .line 178
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.minValue:(I)J
            lstore 9 /* lowerBound */
         4: .line 179
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.maxValue:(I)J
            lstore 11 /* upperBound */
         5: .line 181
      StackMap locals: long long
      StackMap stack:
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            lstore 13 /* mask */
        start local 13 // long mask
         6: .line 182
            iload 0 /* bits */
            lload 9 /* lowerBound */
            lload 11 /* upperBound */
            lload 5 /* downMask */
            lload 13 /* mask */
            land
            lload 7 /* upMask */
            lload 13 /* mask */
            land
            invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.create:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 13 // long mask
        end local 11 // long upperBound
        end local 9 // long lowerBound
        end local 7 // long upMask
        end local 5 // long downMask
        end local 3 // long unsignedUpperBound
        end local 1 // long unsignedLowerBound
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    7     0                bits  I
            0    7     1  unsignedLowerBound  J
            0    7     3  unsignedUpperBound  J
            0    7     5            downMask  J
            0    7     7              upMask  J
            1    7     9          lowerBound  J
            2    7    11          upperBound  J
            6    7    13                mask  J
    MethodParameters:
                    Name  Flags
      bits                
      unsignedLowerBound  
      unsignedUpperBound  
      downMask            
      upMask              

  public static org.graalvm.compiler.core.common.type.IntegerStamp forInteger(int, long, long);
    descriptor: (IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=5, args_size=3
        start local 0 // int bits
        start local 1 // long lowerBound
        start local 3 // long upperBound
         0: .line 186
            iload 0 /* bits */
            lload 1 /* lowerBound */
            lload 3 /* upperBound */
            lconst_0
            iload 0 /* bits */
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            invokestatic org.graalvm.compiler.core.common.type.IntegerStamp.create:(IJJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 3 // long upperBound
        end local 1 // long lowerBound
        end local 0 // int bits
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        bits  I
            0    1     1  lowerBound  J
            0    1     3  upperBound  J
    MethodParameters:
            Name  Flags
      bits        
      lowerBound  
      upperBound  

  public static org.graalvm.compiler.core.common.type.FloatStamp forFloat(jdk.vm.ci.meta.JavaKind, double, double, boolean);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;DDZ)Lorg/graalvm/compiler/core/common/type/FloatStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // jdk.vm.ci.meta.JavaKind kind
        start local 1 // double lowerBound
        start local 3 // double upperBound
        start local 5 // boolean nonNaN
         0: .line 190
            getstatic org.graalvm.compiler.core.common.type.StampFactory.$assertionsDisabled:Z
            ifne 1
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.isNumericFloat:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 191
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.core.common.type.FloatStamp
            dup
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            dload 1 /* lowerBound */
            dload 3 /* upperBound */
            iload 5 /* nonNaN */
            invokespecial org.graalvm.compiler.core.common.type.FloatStamp.<init>:(IDDZ)V
            areturn
        end local 5 // boolean nonNaN
        end local 3 // double upperBound
        end local 1 // double lowerBound
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        kind  Ljdk/vm/ci/meta/JavaKind;
            0    2     1  lowerBound  D
            0    2     3  upperBound  D
            0    2     5      nonNaN  Z
    MethodParameters:
            Name  Flags
      kind        
      lowerBound  
      upperBound  
      nonNaN      

  public static org.graalvm.compiler.core.common.type.Stamp forConstant(jdk.vm.ci.meta.JavaConstant);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=4, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaConstant value
         0: .line 195
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 1 /* kind */
        start local 1 // jdk.vm.ci.meta.JavaKind kind
         1: .line 196
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 1 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 1 - 11
                    1: 2
                    2: 2
                    3: 2
                    4: 2
                    5: 2
                    6: 4
                    7: 2
                    8: 7
                    9: 11
                   10: 14
                   11: 10
              default: 14
          }
         2: .line 203
      StackMap locals: jdk.vm.ci.meta.JavaKind
      StackMap stack:
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            aload 1 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getBitCount:()I
            invokestatic jdk.vm.ci.code.CodeUtil.mask:(I)J
            land
            lstore 2 /* mask */
        start local 2 // long mask
         3: .line 204
            aload 1 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            lload 2 /* mask */
            lload 2 /* mask */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forInteger:(Ljdk/vm/ci/meta/JavaKind;JJJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
        end local 2 // long mask
         4: .line 206
      StackMap locals:
      StackMap stack:
            aload 1 /* kind */
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
            f2d
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
            f2d
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
            invokestatic java.lang.Float.isNaN:(F)Z
            ifeq 5
            iconst_0
            goto 6
      StackMap locals: jdk.vm.ci.meta.JavaConstant jdk.vm.ci.meta.JavaKind
      StackMap stack: jdk.vm.ci.meta.JavaKind double double
         5: iconst_1
      StackMap locals: jdk.vm.ci.meta.JavaConstant jdk.vm.ci.meta.JavaKind
      StackMap stack: jdk.vm.ci.meta.JavaKind double double int
         6: invokestatic org.graalvm.compiler.core.common.type.StampFactory.forFloat:(Ljdk/vm/ci/meta/JavaKind;DDZ)Lorg/graalvm/compiler/core/common/type/FloatStamp;
            areturn
         7: .line 208
      StackMap locals:
      StackMap stack:
            aload 1 /* kind */
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 8
            iconst_0
            goto 9
      StackMap locals: jdk.vm.ci.meta.JavaConstant jdk.vm.ci.meta.JavaKind
      StackMap stack: jdk.vm.ci.meta.JavaKind double double
         8: iconst_1
      StackMap locals: jdk.vm.ci.meta.JavaConstant jdk.vm.ci.meta.JavaKind
      StackMap stack: jdk.vm.ci.meta.JavaKind double double int
         9: invokestatic org.graalvm.compiler.core.common.type.StampFactory.forFloat:(Ljdk/vm/ci/meta/JavaKind;DDZ)Lorg/graalvm/compiler/core/common/type/FloatStamp;
            areturn
        10: .line 210
      StackMap locals:
      StackMap stack:
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
        11: .line 212
      StackMap locals:
      StackMap stack:
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ifeq 13
        12: .line 213
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.alwaysNull:()Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
        13: .line 215
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:()Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
        14: .line 218
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "unexpected kind: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* kind */
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // jdk.vm.ci.meta.JavaConstant value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0  value  Ljdk/vm/ci/meta/JavaConstant;
            1   15     1   kind  Ljdk/vm/ci/meta/JavaKind;
            3    4     2   mask  J
    MethodParameters:
       Name  Flags
      value  

  public static org.graalvm.compiler.core.common.type.Stamp forConstant(jdk.vm.ci.meta.JavaConstant, jdk.vm.ci.meta.MetaAccessProvider);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.vm.ci.meta.JavaConstant value
        start local 1 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
         0: .line 223
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 5
         1: .line 224
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ifeq 2
            aconst_null
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 1 /* metaAccess */
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljdk/vm/ci/meta/JavaConstant;)Ljdk/vm/ci/meta/ResolvedJavaType;
      StackMap locals:
      StackMap stack: jdk.vm.ci.meta.ResolvedJavaType
         3: astore 2 /* type */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaType type
         4: .line 225
            new org.graalvm.compiler.core.common.type.ObjectStamp
            dup
            aload 2 /* type */
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNonNull:()Z
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNonNull:()Z
            aload 0 /* value */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            invokespecial org.graalvm.compiler.core.common.type.ObjectStamp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaType;ZZZ)V
            areturn
        end local 2 // jdk.vm.ci.meta.ResolvedJavaType type
         5: .line 227
      StackMap locals:
      StackMap stack:
            aload 0 /* value */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forConstant:(Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
        end local 1 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        end local 0 // jdk.vm.ci.meta.JavaConstant value
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0       value  Ljdk/vm/ci/meta/JavaConstant;
            0    6     1  metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            4    5     2        type  Ljdk/vm/ci/meta/ResolvedJavaType;
    MethodParameters:
            Name  Flags
      value       
      metaAccess  

  public static org.graalvm.compiler.core.common.type.Stamp object();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 232
            getstatic org.graalvm.compiler.core.common.type.StampFactory.objectStamp:Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.Stamp objectNonNull();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 236
            getstatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNullStamp:Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.Stamp alwaysNull();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 240
            getstatic org.graalvm.compiler.core.common.type.StampFactory.objectAlwaysNullStamp:Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.ObjectStamp object(org.graalvm.compiler.core.common.type.TypeReference);
    descriptor: (Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.TypeReference type
         0: .line 244
            aload 0 /* type */
            iconst_0
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;Z)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            areturn
        end local 0 // org.graalvm.compiler.core.common.type.TypeReference type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Lorg/graalvm/compiler/core/common/type/TypeReference;
    MethodParameters:
      Name  Flags
      type  

  public static org.graalvm.compiler.core.common.type.ObjectStamp objectNonNull(org.graalvm.compiler.core.common.type.TypeReference);
    descriptor: (Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.TypeReference type
         0: .line 248
            aload 0 /* type */
            iconst_1
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;Z)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            areturn
        end local 0 // org.graalvm.compiler.core.common.type.TypeReference type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Lorg/graalvm/compiler/core/common/type/TypeReference;
    MethodParameters:
      Name  Flags
      type  

  public static org.graalvm.compiler.core.common.type.ObjectStamp object(org.graalvm.compiler.core.common.type.TypeReference, boolean);
    descriptor: (Lorg/graalvm/compiler/core/common/type/TypeReference;Z)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.common.type.TypeReference type
        start local 1 // boolean nonNull
         0: .line 252
            aload 0 /* type */
            ifnonnull 2
         1: .line 253
            new org.graalvm.compiler.core.common.type.ObjectStamp
            dup
            aconst_null
            iconst_0
            iload 1 /* nonNull */
            iconst_0
            invokespecial org.graalvm.compiler.core.common.type.ObjectStamp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaType;ZZZ)V
            areturn
         2: .line 255
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.core.common.type.ObjectStamp
            dup
            aload 0 /* type */
            invokevirtual org.graalvm.compiler.core.common.type.TypeReference.getType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            aload 0 /* type */
            invokevirtual org.graalvm.compiler.core.common.type.TypeReference.isExact:()Z
            iload 1 /* nonNull */
            iconst_0
            invokespecial org.graalvm.compiler.core.common.type.ObjectStamp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaType;ZZZ)V
            areturn
        end local 1 // boolean nonNull
        end local 0 // org.graalvm.compiler.core.common.type.TypeReference type
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     type  Lorg/graalvm/compiler/core/common/type/TypeReference;
            0    3     1  nonNull  Z
    MethodParameters:
         Name  Flags
      type     
      nonNull  

  public static org.graalvm.compiler.core.common.type.Stamp[] createParameterStamps(jdk.vm.ci.meta.Assumptions, jdk.vm.ci.meta.ResolvedJavaMethod);
    descriptor: (Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaMethod;)[Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.vm.ci.meta.Assumptions assumptions
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
         0: .line 260
            aload 0 /* assumptions */
            aload 1 /* method */
            iconst_0
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.createParameterStamps:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaMethod;Z)[Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 0 // jdk.vm.ci.meta.Assumptions assumptions
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  assumptions  Ljdk/vm/ci/meta/Assumptions;
            0    1     1       method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
    MethodParameters:
             Name  Flags
      assumptions  
      method       

  public static org.graalvm.compiler.core.common.type.Stamp[] createParameterStamps(jdk.vm.ci.meta.Assumptions, jdk.vm.ci.meta.ResolvedJavaMethod, boolean);
    descriptor: (Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaMethod;Z)[Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=11, args_size=3
        start local 0 // jdk.vm.ci.meta.Assumptions assumptions
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        start local 2 // boolean trustInterfaceTypes
         0: .line 264
            aload 1 /* method */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
            astore 3 /* signature */
        start local 3 // jdk.vm.ci.meta.Signature signature
         1: .line 265
            aload 3 /* signature */
            aload 1 /* method */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.hasReceiver:()Z
            invokeinterface jdk.vm.ci.meta.Signature.getParameterCount:(Z)I
            anewarray org.graalvm.compiler.core.common.type.Stamp
            astore 4 /* result */
        start local 4 // org.graalvm.compiler.core.common.type.Stamp[] result
         2: .line 267
            iconst_0
            istore 5 /* index */
        start local 5 // int index
         3: .line 268
            aload 1 /* method */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 6 /* accessingClass */
        start local 6 // jdk.vm.ci.meta.ResolvedJavaType accessingClass
         4: .line 269
            aload 1 /* method */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.hasReceiver:()Z
            ifeq 9
         5: .line 270
            iload 2 /* trustInterfaceTypes */
            ifeq 8
         6: .line 271
            aload 4 /* result */
            iload 5 /* index */
            iinc 5 /* index */ 1
            aload 0 /* assumptions */
            aload 6 /* accessingClass */
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.createTrusted:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            aastore
         7: .line 272
            goto 9
         8: .line 273
      StackMap locals: jdk.vm.ci.meta.Assumptions jdk.vm.ci.meta.ResolvedJavaMethod int jdk.vm.ci.meta.Signature org.graalvm.compiler.core.common.type.Stamp[] int jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack:
            aload 4 /* result */
            iload 5 /* index */
            iinc 5 /* index */ 1
            aload 0 /* assumptions */
            aload 6 /* accessingClass */
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            aastore
         9: .line 277
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        10: goto 22
        11: .line 278
      StackMap locals: int
      StackMap stack:
            aload 3 /* signature */
            iload 7 /* i */
            aload 6 /* accessingClass */
            invokeinterface jdk.vm.ci.meta.Signature.getParameterType:(ILjdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
            astore 8 /* type */
        start local 8 // jdk.vm.ci.meta.JavaType type
        12: .line 279
            aload 8 /* type */
            invokeinterface jdk.vm.ci.meta.JavaType.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            astore 9 /* kind */
        start local 9 // jdk.vm.ci.meta.JavaKind kind
        13: .line 282
            aload 9 /* kind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 19
            aload 8 /* type */
            instanceof jdk.vm.ci.meta.ResolvedJavaType
            ifeq 19
        14: .line 283
            iload 2 /* trustInterfaceTypes */
            ifeq 17
        15: .line 284
            aload 0 /* assumptions */
            aload 8 /* type */
            checkcast jdk.vm.ci.meta.ResolvedJavaType
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.createTrusted:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            astore 10 /* stamp */
        start local 10 // org.graalvm.compiler.core.common.type.Stamp stamp
        16: .line 285
            goto 20
        end local 10 // org.graalvm.compiler.core.common.type.Stamp stamp
        17: .line 286
      StackMap locals: jdk.vm.ci.meta.JavaType jdk.vm.ci.meta.JavaKind
      StackMap stack:
            aload 0 /* assumptions */
            aload 8 /* type */
            checkcast jdk.vm.ci.meta.ResolvedJavaType
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            astore 10 /* stamp */
        start local 10 // org.graalvm.compiler.core.common.type.Stamp stamp
        18: .line 288
            goto 20
        end local 10 // org.graalvm.compiler.core.common.type.Stamp stamp
        19: .line 289
      StackMap locals:
      StackMap stack:
            aload 9 /* kind */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            astore 10 /* stamp */
        start local 10 // org.graalvm.compiler.core.common.type.Stamp stamp
        20: .line 291
      StackMap locals: org.graalvm.compiler.core.common.type.Stamp
      StackMap stack:
            aload 4 /* result */
            iload 5 /* index */
            iinc 5 /* index */ 1
            aload 10 /* stamp */
            aastore
        end local 10 // org.graalvm.compiler.core.common.type.Stamp stamp
        end local 9 // jdk.vm.ci.meta.JavaKind kind
        end local 8 // jdk.vm.ci.meta.JavaType type
        21: .line 277
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 7 /* i */
            aload 3 /* signature */
            iconst_0
            invokeinterface jdk.vm.ci.meta.Signature.getParameterCount:(Z)I
            if_icmplt 11
        end local 7 // int i
        23: .line 294
            aload 4 /* result */
            areturn
        end local 6 // jdk.vm.ci.meta.ResolvedJavaType accessingClass
        end local 5 // int index
        end local 4 // org.graalvm.compiler.core.common.type.Stamp[] result
        end local 3 // jdk.vm.ci.meta.Signature signature
        end local 2 // boolean trustInterfaceTypes
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 0 // jdk.vm.ci.meta.Assumptions assumptions
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   24     0          assumptions  Ljdk/vm/ci/meta/Assumptions;
            0   24     1               method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0   24     2  trustInterfaceTypes  Z
            1   24     3            signature  Ljdk/vm/ci/meta/Signature;
            2   24     4               result  [Lorg/graalvm/compiler/core/common/type/Stamp;
            3   24     5                index  I
            4   24     6       accessingClass  Ljdk/vm/ci/meta/ResolvedJavaType;
           10   23     7                    i  I
           12   21     8                 type  Ljdk/vm/ci/meta/JavaType;
           13   21     9                 kind  Ljdk/vm/ci/meta/JavaKind;
           16   17    10                stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           18   19    10                stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
           20   21    10                stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
    MethodParameters:
                     Name  Flags
      assumptions          
      method               
      trustInterfaceTypes  

  public static org.graalvm.compiler.core.common.type.Stamp pointer();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 298
            getstatic org.graalvm.compiler.core.common.type.StampFactory.rawPointer:Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.graalvm.compiler.core.common.type.StampPair forDeclaredType(jdk.vm.ci.meta.Assumptions, jdk.vm.ci.meta.JavaType, boolean);
    descriptor: (Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/JavaType;Z)Lorg/graalvm/compiler/core/common/type/StampPair;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=10, args_size=3
        start local 0 // jdk.vm.ci.meta.Assumptions assumptions
        start local 1 // jdk.vm.ci.meta.JavaType returnType
        start local 2 // boolean nonNull
         0: .line 302
            aload 1 /* returnType */
            invokeinterface jdk.vm.ci.meta.JavaType.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 19
            aload 1 /* returnType */
            instanceof jdk.vm.ci.meta.ResolvedJavaType
            ifeq 19
         1: .line 303
            aload 1 /* returnType */
            checkcast jdk.vm.ci.meta.ResolvedJavaType
            astore 3 /* resolvedJavaType */
        start local 3 // jdk.vm.ci.meta.ResolvedJavaType resolvedJavaType
         2: .line 304
            aload 0 /* assumptions */
            aload 3 /* resolvedJavaType */
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            astore 4 /* reference */
        start local 4 // org.graalvm.compiler.core.common.type.TypeReference reference
         3: .line 305
            aload 3 /* resolvedJavaType */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getElementalType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 5 /* elementalType */
        start local 5 // jdk.vm.ci.meta.ResolvedJavaType elementalType
         4: .line 306
            aload 5 /* elementalType */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isInterface:()Z
            ifeq 18
         5: .line 307
            getstatic org.graalvm.compiler.core.common.type.StampFactory.$assertionsDisabled:Z
            ifne 6
            aload 4 /* reference */
            ifnull 6
            aload 4 /* reference */
            invokevirtual org.graalvm.compiler.core.common.type.TypeReference.getType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            aload 3 /* resolvedJavaType */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 309
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.core.common.type.TypeReference jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack:
            aload 5 /* elementalType */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getSingleImplementor:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 7 /* elementalImplementor */
        start local 7 // jdk.vm.ci.meta.ResolvedJavaType elementalImplementor
         7: .line 310
            aload 7 /* elementalImplementor */
            ifnull 16
            aload 5 /* elementalType */
            aload 7 /* elementalImplementor */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 16
         8: .line 311
            aload 7 /* elementalImplementor */
            astore 8 /* implementor */
        start local 8 // jdk.vm.ci.meta.ResolvedJavaType implementor
         9: .line 312
            aload 3 /* resolvedJavaType */
            astore 9 /* t */
        start local 9 // jdk.vm.ci.meta.ResolvedJavaType t
        10: .line 313
            goto 13
        11: .line 314
      StackMap locals: jdk.vm.ci.meta.Assumptions jdk.vm.ci.meta.JavaType int jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.core.common.type.TypeReference jdk.vm.ci.meta.ResolvedJavaType top jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack:
            aload 8 /* implementor */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getArrayClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 8 /* implementor */
        12: .line 315
            aload 9 /* t */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getComponentType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 9 /* t */
        13: .line 313
      StackMap locals:
      StackMap stack:
            aload 9 /* t */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isArray:()Z
            ifne 11
        14: .line 317
            aload 0 /* assumptions */
            aload 8 /* implementor */
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.createTrusted:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            astore 6 /* uncheckedType */
        end local 9 // jdk.vm.ci.meta.ResolvedJavaType t
        end local 8 // jdk.vm.ci.meta.ResolvedJavaType implementor
        start local 6 // org.graalvm.compiler.core.common.type.TypeReference uncheckedType
        15: .line 318
            goto 17
        end local 6 // org.graalvm.compiler.core.common.type.TypeReference uncheckedType
        16: .line 319
      StackMap locals:
      StackMap stack:
            aload 0 /* assumptions */
            aload 3 /* resolvedJavaType */
            invokestatic org.graalvm.compiler.core.common.type.TypeReference.createTrusted:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/core/common/type/TypeReference;
            astore 6 /* uncheckedType */
        start local 6 // org.graalvm.compiler.core.common.type.TypeReference uncheckedType
        17: .line 321
      StackMap locals: jdk.vm.ci.meta.Assumptions jdk.vm.ci.meta.JavaType int jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.core.common.type.TypeReference jdk.vm.ci.meta.ResolvedJavaType org.graalvm.compiler.core.common.type.TypeReference jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack:
            aload 4 /* reference */
            iload 2 /* nonNull */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;Z)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            aload 6 /* uncheckedType */
            iload 2 /* nonNull */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;Z)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            invokestatic org.graalvm.compiler.core.common.type.StampPair.create:(Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/StampPair;
            areturn
        end local 7 // jdk.vm.ci.meta.ResolvedJavaType elementalImplementor
        end local 6 // org.graalvm.compiler.core.common.type.TypeReference uncheckedType
        18: .line 323
      StackMap locals:
      StackMap stack:
            aload 4 /* reference */
            iload 2 /* nonNull */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.object:(Lorg/graalvm/compiler/core/common/type/TypeReference;Z)Lorg/graalvm/compiler/core/common/type/ObjectStamp;
            invokestatic org.graalvm.compiler.core.common.type.StampPair.createSingle:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/StampPair;
            areturn
        end local 5 // jdk.vm.ci.meta.ResolvedJavaType elementalType
        end local 4 // org.graalvm.compiler.core.common.type.TypeReference reference
        end local 3 // jdk.vm.ci.meta.ResolvedJavaType resolvedJavaType
        19: .line 325
      StackMap locals:
      StackMap stack:
            aload 1 /* returnType */
            invokeinterface jdk.vm.ci.meta.JavaType.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokestatic org.graalvm.compiler.core.common.type.StampPair.createSingle:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/StampPair;
            areturn
        end local 2 // boolean nonNull
        end local 1 // jdk.vm.ci.meta.JavaType returnType
        end local 0 // jdk.vm.ci.meta.Assumptions assumptions
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   20     0           assumptions  Ljdk/vm/ci/meta/Assumptions;
            0   20     1            returnType  Ljdk/vm/ci/meta/JavaType;
            0   20     2               nonNull  Z
            2   19     3      resolvedJavaType  Ljdk/vm/ci/meta/ResolvedJavaType;
            3   19     4             reference  Lorg/graalvm/compiler/core/common/type/TypeReference;
            4   19     5         elementalType  Ljdk/vm/ci/meta/ResolvedJavaType;
           15   16     6         uncheckedType  Lorg/graalvm/compiler/core/common/type/TypeReference;
           17   18     6         uncheckedType  Lorg/graalvm/compiler/core/common/type/TypeReference;
            7   18     7  elementalImplementor  Ljdk/vm/ci/meta/ResolvedJavaType;
            9   15     8           implementor  Ljdk/vm/ci/meta/ResolvedJavaType;
           10   15     9                     t  Ljdk/vm/ci/meta/ResolvedJavaType;
    MethodParameters:
             Name  Flags
      assumptions  
      returnType   
      nonNull      

  static int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 42
            getstatic org.graalvm.compiler.core.common.type.StampFactory.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 8
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 11
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_5
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 7
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 9
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Short:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_3
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Void:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 10
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            dup
            putstatic org.graalvm.compiler.core.common.type.StampFactory.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
}
SourceFile: "StampFactory.java"