public class org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp
  super_class: java.lang.Object
{
  protected final int pp;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int mmmmm;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int w;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int op;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private final java.lang.String opcode;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion assertion;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$EVEXTuple evexTuple;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$EVEXTuple;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int wEvex;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected void <init>(java.lang.String, int, int, int, int, org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion, org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$EVEXTuple, int);
    descriptor: (Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$EVEXTuple;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=9, args_size=9
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
        start local 1 // java.lang.String opcode
        start local 2 // int pp
        start local 3 // int mmmmm
        start local 4 // int w
        start local 5 // int op
        start local 6 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion assertion
        start local 7 // org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$EVEXTuple evexTuple
        start local 8 // int wEvex
         0: .line 1052
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 1053
            aload 0 /* this */
            iload 2 /* pp */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.pp:I
         2: .line 1054
            aload 0 /* this */
            iload 3 /* mmmmm */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.mmmmm:I
         3: .line 1055
            aload 0 /* this */
            iload 4 /* w */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.w:I
         4: .line 1056
            aload 0 /* this */
            iload 5 /* op */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.op:I
         5: .line 1057
            aload 0 /* this */
            aload 1 /* opcode */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.opcode:Ljava/lang/String;
         6: .line 1058
            aload 0 /* this */
            aload 6 /* assertion */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.assertion:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
         7: .line 1059
            aload 0 /* this */
            aload 7 /* evexTuple */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.evexTuple:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$EVEXTuple;
         8: .line 1060
            aload 0 /* this */
            iload 8 /* wEvex */
            putfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.wEvex:I
         9: .line 1061
            return
        end local 8 // int wEvex
        end local 7 // org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$EVEXTuple evexTuple
        end local 6 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion assertion
        end local 5 // int op
        end local 4 // int w
        end local 3 // int mmmmm
        end local 2 // int pp
        end local 1 // java.lang.String opcode
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexOp;
            0   10     1     opcode  Ljava/lang/String;
            0   10     2         pp  I
            0   10     3      mmmmm  I
            0   10     4          w  I
            0   10     5         op  I
            0   10     6  assertion  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            0   10     7  evexTuple  Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$EVEXTuple;
            0   10     8      wEvex  I
    MethodParameters:
           Name  Flags
      opcode     
      pp         
      mmmmm      
      w          
      op         
      assertion  
      evexTuple  
      wEvex      

  protected void <init>(java.lang.String, int, int, int, int, org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion);
    descriptor: (Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
        start local 1 // java.lang.String opcode
        start local 2 // int pp
        start local 3 // int mmmmm
        start local 4 // int w
        start local 5 // int op
        start local 6 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion assertion
         0: .line 1064
            aload 0 /* this */
            aload 1 /* opcode */
            iload 2 /* pp */
            iload 3 /* mmmmm */
            iload 4 /* w */
            iload 5 /* op */
            aload 6 /* assertion */
            getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$EVEXTuple.INVALID:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$EVEXTuple;
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$EVEXTuple;I)V
         1: .line 1065
            return
        end local 6 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion assertion
        end local 5 // int op
        end local 4 // int w
        end local 3 // int mmmmm
        end local 2 // int pp
        end local 1 // java.lang.String opcode
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexOp;
            0    2     1     opcode  Ljava/lang/String;
            0    2     2         pp  I
            0    2     3      mmmmm  I
            0    2     4          w  I
            0    2     5         op  I
            0    2     6  assertion  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
    MethodParameters:
           Name  Flags
      opcode     
      pp         
      mmmmm      
      w          
      op         
      assertion  

  public final boolean isSupported(org.graalvm.compiler.asm.amd64.AMD64Assembler, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler vasm
        start local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
         0: .line 1068
            aload 0 /* this */
            aload 1 /* vasm */
            aload 2 /* size */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.isSupported:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Z)Z
            ireturn
        end local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler vasm
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexOp;
            0    1     1  vasm  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;
            0    1     2  size  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
    MethodParameters:
      Name  Flags
      vasm  
      size  

  public final boolean isSupported(org.graalvm.compiler.asm.amd64.AMD64Assembler, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, boolean);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Z)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler vasm
        start local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        start local 3 // boolean useZMMRegisters
         0: .line 1072
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.assertion:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            aload 1 /* vasm */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler.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 2 /* size */
            iload 3 /* useZMMRegisters */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.supports:(Ljava/util/EnumSet;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Z)Z
            ireturn
        end local 3 // boolean useZMMRegisters
        end local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler vasm
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0             this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexOp;
            0    1     1             vasm  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;
            0    1     2             size  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            0    1     3  useZMMRegisters  Z
    MethodParameters:
                 Name  Flags
      vasm             
      size             
      useZMMRegisters  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
         0: .line 1077
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.opcode:Ljava/lang/String;
            areturn
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexOp;

  protected final int getDisp8Scale(boolean, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize);
    descriptor: (ZLorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
        start local 1 // boolean useEvex
        start local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
         0: .line 1081
            iload 1 /* useEvex */
            ifeq 1
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.evexTuple:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$EVEXTuple;
            aload 2 /* size */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$EVEXTuple.getDisp8ScalingFactor:(Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)I
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        end local 1 // boolean useEvex
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexOp;
            0    3     1  useEvex  Z
            0    3     2     size  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
    MethodParameters:
         Name  Flags
      useEvex  
      size     
}
SourceFile: "AMD64Assembler.java"
NestHost: org.graalvm.compiler.asm.amd64.AMD64Assembler
InnerClasses:
  public final CPUFeature = jdk.vm.ci.amd64.AMD64$CPUFeature of jdk.vm.ci.amd64.AMD64
  private final VEXOpAssertion = org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public VexOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  protected final EVEXTuple = org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$EVEXTuple of org.graalvm.compiler.asm.amd64.AMD64BaseAssembler
  public final AVXSize = org.graalvm.compiler.asm.amd64.AVXKind$AVXSize of org.graalvm.compiler.asm.amd64.AVXKind