public class org.graalvm.compiler.asm.amd64.AMD64InstructionAttr
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.asm.amd64.AMD64InstructionAttr
  super_class: java.lang.Object
{
  private jdk.vm.ci.code.TargetDescription target;
    descriptor: Ljdk/vm/ci/code/TargetDescription;
    flags: (0x0002) ACC_PRIVATE

  private int avxVectorLen;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean rexVexW;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean rexVexWReverted;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean legacyMode;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean noRegMask;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean usesVl;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int tupleType;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int inputSizeInBits;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean isEvexInstruction;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int evexEncoding;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean isClearContext;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isExtendedContext;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  void <init>(int, boolean, boolean, boolean, boolean, jdk.vm.ci.code.TargetDescription);
    descriptor: (IZZZZLjdk/vm/ci/code/TargetDescription;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
        start local 1 // int inVectorLen
        start local 2 // boolean inRexVexW
        start local 3 // boolean inLegacyMode
        start local 4 // boolean inNoRegMask
        start local 5 // boolean inUsesVl
        start local 6 // jdk.vm.ci.code.TargetDescription target
         0: .line 35
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            iload 1 /* inVectorLen */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.avxVectorLen:I
         2: .line 43
            aload 0 /* this */
            iload 2 /* inRexVexW */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.rexVexW:Z
         3: .line 44
            aload 0 /* this */
            aload 6 /* target */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.target:Ljdk/vm/ci/code/TargetDescription;
         4: .line 45
            aload 0 /* this */
            aload 0 /* this */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX512F:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifne 5
            iconst_1
            goto 6
      StackMap locals: org.graalvm.compiler.asm.amd64.AMD64InstructionAttr int int int int int jdk.vm.ci.code.TargetDescription
      StackMap stack: org.graalvm.compiler.asm.amd64.AMD64InstructionAttr
         5: iload 3 /* inLegacyMode */
      StackMap locals: org.graalvm.compiler.asm.amd64.AMD64InstructionAttr int int int int int jdk.vm.ci.code.TargetDescription
      StackMap stack: org.graalvm.compiler.asm.amd64.AMD64InstructionAttr int
         6: putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.legacyMode:Z
         7: .line 46
            aload 0 /* this */
            iload 4 /* inNoRegMask */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.noRegMask:Z
         8: .line 47
            aload 0 /* this */
            iload 5 /* inUsesVl */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.usesVl:Z
         9: .line 48
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.rexVexWReverted:Z
        10: .line 49
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.tupleType:I
        11: .line 50
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.inputSizeInBits:I
        12: .line 51
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isEvexInstruction:Z
        13: .line 52
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.evexEncoding:I
        14: .line 53
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isClearContext:Z
        15: .line 54
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isExtendedContext:Z
        16: .line 55
            return
        end local 6 // jdk.vm.ci.code.TargetDescription target
        end local 5 // boolean inUsesVl
        end local 4 // boolean inNoRegMask
        end local 3 // boolean inLegacyMode
        end local 2 // boolean inRexVexW
        end local 1 // int inVectorLen
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0          this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;
            0   17     1   inVectorLen  I
            0   17     2     inRexVexW  Z
            0   17     3  inLegacyMode  Z
            0   17     4   inNoRegMask  Z
            0   17     5      inUsesVl  Z
            0   17     6        target  Ljdk/vm/ci/code/TargetDescription;
    MethodParameters:
              Name  Flags
      inVectorLen   
      inRexVexW     
      inLegacyMode  
      inNoRegMask   
      inUsesVl      
      target        

  public int getVectorLen();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 72
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.avxVectorLen:I
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean isRexVexW();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 76
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.rexVexW:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean isRexVexWReverted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 80
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.rexVexWReverted:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean isLegacyMode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 84
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.legacyMode:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean isNoRegMask();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 88
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.noRegMask:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean usesVl();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 92
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.usesVl:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public int getTupleType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 96
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.tupleType:I
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public int getInputSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 100
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.inputSizeInBits:I
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean isEvexInstruction();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 104
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isEvexInstruction:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public int getEvexEncoding();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 108
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.evexEncoding:I
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean isClearContext();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 112
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isClearContext:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public boolean isExtendedContext();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 116
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isExtendedContext:Z
            ireturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public void setVectorLen(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
        start local 1 // int vectorLen
         0: .line 125
            aload 0 /* this */
            iload 1 /* vectorLen */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.avxVectorLen:I
         1: .line 126
            return
        end local 1 // int vectorLen
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;
            0    2     1  vectorLen  I
    MethodParameters:
           Name  Flags
      vectorLen  

  public void setRexVexWReverted();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 132
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.rexVexWReverted:Z
         1: .line 133
            return
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public void setRexVexW(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
        start local 1 // boolean state
         0: .line 141
            aload 0 /* this */
            iload 1 /* state */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.rexVexW:Z
         1: .line 142
            return
        end local 1 // boolean state
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;
            0    2     1  state  Z
    MethodParameters:
       Name  Flags
      state  

  public void setLegacyMode();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 148
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.legacyMode:Z
         1: .line 149
            return
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public void setIsEvexInstruction();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 155
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isEvexInstruction:Z
         1: .line 156
            return
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public void setEvexEncoding(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
        start local 1 // int value
         0: .line 164
            aload 0 /* this */
            iload 1 /* value */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.evexEncoding:I
         1: .line 165
            return
        end local 1 // int value
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;
            0    2     1  value  I
    MethodParameters:
       Name  Flags
      value  

  public void setIsClearContext();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
         0: .line 171
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.isClearContext:Z
         1: .line 172
            return
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;

  public void setAddressAttributes(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
        start local 1 // int inTupleType
        start local 2 // int inInputSizeInBits
         0: .line 178
            aload 0 /* this */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX512F:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 3
         1: .line 179
            aload 0 /* this */
            iload 1 /* inTupleType */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.tupleType:I
         2: .line 180
            aload 0 /* this */
            iload 2 /* inInputSizeInBits */
            putfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.inputSizeInBits:I
         3: .line 182
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int inInputSizeInBits
        end local 1 // int inTupleType
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;
            0    4     1        inTupleType  I
            0    4     2  inInputSizeInBits  I
    MethodParameters:
                   Name  Flags
      inTupleType        
      inInputSizeInBits  

  private boolean supports(jdk.vm.ci.amd64.AMD64$CPUFeature);
    descriptor: (Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
        start local 1 // jdk.vm.ci.amd64.AMD64$CPUFeature feature
         0: .line 185
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64InstructionAttr.target:Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            checkcast jdk.vm.ci.amd64.AMD64
            invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
            aload 1 /* feature */
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.vm.ci.amd64.AMD64$CPUFeature feature
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64InstructionAttr this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/compiler/asm/amd64/AMD64InstructionAttr;
            0    1     1  feature  Ljdk/vm/ci/amd64/AMD64$CPUFeature;
    MethodParameters:
         Name  Flags
      feature  
}
SourceFile: "AMD64InstructionAttr.java"
InnerClasses:
  public final CPUFeature = jdk.vm.ci.amd64.AMD64$CPUFeature of jdk.vm.ci.amd64.AMD64