public final class jdk.vm.ci.code.RegisterValue extends jdk.vm.ci.meta.AllocatableValue
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: jdk.vm.ci.code.RegisterValue
  super_class: jdk.vm.ci.meta.AllocatableValue
{
  private final jdk.vm.ci.code.Register reg;
    descriptor: Ljdk/vm/ci/code/Register;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // jdk.vm.ci.code.RegisterValue this
        start local 1 // jdk.vm.ci.meta.ValueKind kind
        start local 2 // jdk.vm.ci.code.Register register
         0: .line 36
            aload 0 /* this */
            aload 1 /* kind */
            invokespecial jdk.vm.ci.meta.AllocatableValue.<init>:(Ljdk/vm/ci/meta/ValueKind;)V
         1: .line 37
            aload 0 /* this */
            aload 2 /* register */
            putfield jdk.vm.ci.code.RegisterValue.reg:Ljdk/vm/ci/code/Register;
         2: .line 38
            return
        end local 2 // jdk.vm.ci.code.Register register
        end local 1 // jdk.vm.ci.meta.ValueKind kind
        end local 0 // jdk.vm.ci.code.RegisterValue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Ljdk/vm/ci/code/RegisterValue;
            0    3     1      kind  Ljdk/vm/ci/meta/ValueKind<*>;
            0    3     2  register  Ljdk/vm/ci/code/Register;
    Signature: (Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/code/Register;)V
    MethodParameters:
          Name  Flags
      kind      
      register  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.RegisterValue this
         0: .line 42
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual jdk.vm.ci.code.RegisterValue.getRegister:()Ljdk/vm/ci/code/Register;
            getfield jdk.vm.ci.code.Register.name:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual jdk.vm.ci.code.RegisterValue.getKindSuffix:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // jdk.vm.ci.code.RegisterValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/code/RegisterValue;

  public jdk.vm.ci.code.Register getRegister();
    descriptor: ()Ljdk/vm/ci/code/Register;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.RegisterValue this
         0: .line 49
            aload 0 /* this */
            getfield jdk.vm.ci.code.RegisterValue.reg:Ljdk/vm/ci/code/Register;
            areturn
        end local 0 // jdk.vm.ci.code.RegisterValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/code/RegisterValue;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.RegisterValue this
         0: .line 54
            bipush 29
            aload 0 /* this */
            invokespecial jdk.vm.ci.meta.AllocatableValue.hashCode:()I
            imul
            aload 0 /* this */
            getfield jdk.vm.ci.code.RegisterValue.reg:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.hashCode:()I
            iadd
            ireturn
        end local 0 // jdk.vm.ci.code.RegisterValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/code/RegisterValue;

  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 // jdk.vm.ci.code.RegisterValue this
        start local 1 // java.lang.Object obj
         0: .line 59
            aload 1 /* obj */
            instanceof jdk.vm.ci.code.RegisterValue
            ifeq 4
         1: .line 60
            aload 1 /* obj */
            checkcast jdk.vm.ci.code.RegisterValue
            astore 2 /* other */
        start local 2 // jdk.vm.ci.code.RegisterValue other
         2: .line 61
            aload 0 /* this */
            aload 1 /* obj */
            invokespecial jdk.vm.ci.meta.AllocatableValue.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 0 /* this */
            getfield jdk.vm.ci.code.RegisterValue.reg:Ljdk/vm/ci/code/Register;
            aload 2 /* other */
            getfield jdk.vm.ci.code.RegisterValue.reg:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            iconst_1
            ireturn
      StackMap locals: jdk.vm.ci.code.RegisterValue
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // jdk.vm.ci.code.RegisterValue other
         4: .line 63
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // jdk.vm.ci.code.RegisterValue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Ljdk/vm/ci/code/RegisterValue;
            0    5     1    obj  Ljava/lang/Object;
            2    4     2  other  Ljdk/vm/ci/code/RegisterValue;
    MethodParameters:
      Name  Flags
      obj   
}
SourceFile: "RegisterValue.java"