public abstract class org.graalvm.compiler.core.common.type.PrimitiveStamp extends org.graalvm.compiler.core.common.type.ArithmeticStamp
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.compiler.core.common.type.PrimitiveStamp
  super_class: org.graalvm.compiler.core.common.type.ArithmeticStamp
{
  private final int bits;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(int, org.graalvm.compiler.core.common.type.ArithmeticOpTable);
    descriptor: (ILorg/graalvm/compiler/core/common/type/ArithmeticOpTable;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
        start local 1 // int bits
        start local 2 // org.graalvm.compiler.core.common.type.ArithmeticOpTable ops
         0: .line 38
            aload 0 /* this */
            aload 2 /* ops */
            invokespecial org.graalvm.compiler.core.common.type.ArithmeticStamp.<init>:(Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable;)V
         1: .line 39
            aload 0 /* this */
            iload 1 /* bits */
            putfield org.graalvm.compiler.core.common.type.PrimitiveStamp.bits:I
         2: .line 40
            return
        end local 2 // org.graalvm.compiler.core.common.type.ArithmeticOpTable ops
        end local 1 // int bits
        end local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/core/common/type/PrimitiveStamp;
            0    3     1  bits  I
            0    3     2   ops  Lorg/graalvm/compiler/core/common/type/ArithmeticOpTable;
    MethodParameters:
      Name  Flags
      bits  
      ops   

  public void accept(org.graalvm.compiler.serviceprovider.SpeculationReasonGroup$SpeculationContextObject$Visitor);
    descriptor: (Lorg/graalvm/compiler/serviceprovider/SpeculationReasonGroup$SpeculationContextObject$Visitor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
        start local 1 // org.graalvm.compiler.serviceprovider.SpeculationReasonGroup$SpeculationContextObject$Visitor v
         0: .line 44
            aload 1 /* v */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.type.PrimitiveStamp.bits:I
            invokeinterface org.graalvm.compiler.serviceprovider.SpeculationReasonGroup$SpeculationContextObject$Visitor.visitInt:(I)V
         1: .line 45
            return
        end local 1 // org.graalvm.compiler.serviceprovider.SpeculationReasonGroup$SpeculationContextObject$Visitor v
        end local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/common/type/PrimitiveStamp;
            0    2     1     v  Lorg/graalvm/compiler/serviceprovider/SpeculationReasonGroup$SpeculationContextObject$Visitor;
    MethodParameters:
      Name  Flags
      v     

  public int getBits();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
         0: .line 51
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.type.PrimitiveStamp.bits:I
            ireturn
        end local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/common/type/PrimitiveStamp;

  public static int getBits(org.graalvm.compiler.core.common.type.Stamp);
    descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.Stamp stamp
         0: .line 55
            aload 0 /* stamp */
            instanceof org.graalvm.compiler.core.common.type.PrimitiveStamp
            ifeq 2
         1: .line 56
            aload 0 /* stamp */
            checkcast org.graalvm.compiler.core.common.type.PrimitiveStamp
            invokevirtual org.graalvm.compiler.core.common.type.PrimitiveStamp.getBits:()I
            ireturn
         2: .line 58
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.graalvm.compiler.core.common.type.Stamp stamp
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
    MethodParameters:
       Name  Flags
      stamp  

  public jdk.vm.ci.meta.Constant readConstant(jdk.vm.ci.meta.MemoryAccessProvider, jdk.vm.ci.meta.Constant, long);
    descriptor: (Ljdk/vm/ci/meta/MemoryAccessProvider;Ljdk/vm/ci/meta/Constant;J)Ljdk/vm/ci/meta/Constant;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
        start local 1 // jdk.vm.ci.meta.MemoryAccessProvider provider
        start local 2 // jdk.vm.ci.meta.Constant base
        start local 3 // long displacement
         0: .line 65
            aload 1 /* provider */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.common.type.PrimitiveStamp.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            aload 2 /* base */
            lload 3 /* displacement */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.common.type.PrimitiveStamp.getBits:()I
            invokeinterface jdk.vm.ci.meta.MemoryAccessProvider.readPrimitiveConstant:(Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Constant;JI)Ljdk/vm/ci/meta/JavaConstant;
         1: areturn
         2: .line 66
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
         3: .line 71
            aconst_null
            areturn
        end local 3 // long displacement
        end local 2 // jdk.vm.ci.meta.Constant base
        end local 1 // jdk.vm.ci.meta.MemoryAccessProvider provider
        end local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/core/common/type/PrimitiveStamp;
            0    4     1      provider  Ljdk/vm/ci/meta/MemoryAccessProvider;
            0    4     2          base  Ljdk/vm/ci/meta/Constant;
            0    4     3  displacement  J
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.IllegalArgumentException
    MethodParameters:
              Name  Flags
      provider      
      base          
      displacement  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
         0: .line 78
            aload 0 /* this */
            invokespecial org.graalvm.compiler.core.common.type.ArithmeticStamp.hashCode:()I
            istore 1 /* result */
        start local 1 // int result
         1: .line 79
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.type.PrimitiveStamp.bits:I
            iadd
            istore 1 /* result */
         2: .line 80
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/compiler/core/common/type/PrimitiveStamp;
            1    3     1  result  I

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
        start local 1 // java.lang.Object obj
         0: .line 85
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 86
            iconst_1
            ireturn
         2: .line 88
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.graalvm.compiler.core.common.type.PrimitiveStamp
            ifne 4
         3: .line 89
            iconst_0
            ireturn
         4: .line 91
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            checkcast org.graalvm.compiler.core.common.type.PrimitiveStamp
            astore 2 /* other */
        start local 2 // org.graalvm.compiler.core.common.type.PrimitiveStamp other
         5: .line 92
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.type.PrimitiveStamp.bits:I
            aload 2 /* other */
            getfield org.graalvm.compiler.core.common.type.PrimitiveStamp.bits:I
            if_icmpeq 7
         6: .line 93
            iconst_0
            ireturn
         7: .line 95
      StackMap locals: org.graalvm.compiler.core.common.type.PrimitiveStamp
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokespecial org.graalvm.compiler.core.common.type.ArithmeticStamp.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.graalvm.compiler.core.common.type.PrimitiveStamp other
        end local 1 // java.lang.Object obj
        end local 0 // org.graalvm.compiler.core.common.type.PrimitiveStamp this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/graalvm/compiler/core/common/type/PrimitiveStamp;
            0    8     1    obj  Ljava/lang/Object;
            5    8     2  other  Lorg/graalvm/compiler/core/common/type/PrimitiveStamp;
    MethodParameters:
      Name  Flags
      obj   
}
SourceFile: "PrimitiveStamp.java"
InnerClasses:
  public abstract SpeculationContextObject = org.graalvm.compiler.serviceprovider.SpeculationReasonGroup$SpeculationContextObject of org.graalvm.compiler.serviceprovider.SpeculationReasonGroup
  public abstract Visitor = org.graalvm.compiler.serviceprovider.SpeculationReasonGroup$SpeculationContextObject$Visitor of org.graalvm.compiler.serviceprovider.SpeculationReasonGroup$SpeculationContextObject