public final class org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp extends org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp implements org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRRIOp
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp
  super_class: org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp
{
  public static final org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp VEXTRACTF128;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp VEXTRACTI128;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp VPEXTRB;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp VPEXTRW;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp VPEXTRD;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp VPEXTRQ;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=8, locals=0, args_size=0
         0: .line 1305
            ldc Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;
            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.asm.amd64.AMD64Assembler$VexMRIOp.$assertionsDisabled:Z
         3: .line 1307
            new org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp
            dup
            ldc "VEXTRACTF128"
            iconst_1
            iconst_3
            iconst_0
            bipush 25
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.AVX1_256ONLY:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
            putstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.VEXTRACTF128:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
         4: .line 1308
            new org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp
            dup
            ldc "VEXTRACTI128"
            iconst_1
            iconst_3
            iconst_0
            bipush 57
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.AVX2_256ONLY:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
            putstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.VEXTRACTI128:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
         5: .line 1309
            new org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp
            dup
            ldc "VPEXTRB"
            iconst_1
            iconst_3
            iconst_0
            bipush 20
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.XMM_CPU:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
            putstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.VPEXTRB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
         6: .line 1310
            new org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp
            dup
            ldc "VPEXTRW"
            iconst_1
            iconst_3
            iconst_0
            bipush 21
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.XMM_CPU:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
            putstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.VPEXTRW:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
         7: .line 1311
            new org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp
            dup
            ldc "VPEXTRD"
            iconst_1
            iconst_3
            iconst_0
            bipush 22
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.XMM_CPU:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
            putstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.VPEXTRD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
         8: .line 1312
            new org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp
            dup
            ldc "VPEXTRQ"
            iconst_1
            iconst_3
            iconst_1
            bipush 22
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.XMM_CPU:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
            putstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.VPEXTRQ:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private 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: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp 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 1316
            aload 0 /* this */
            aload 1 /* opcode */
            iload 2 /* pp */
            iload 3 /* mmmmm */
            iload 4 /* w */
            iload 5 /* op */
            aload 6 /* assertion */
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp.<init>:(Ljava/lang/String;IIIILorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;)V
         1: .line 1317
            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$VexMRIOp this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
            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 void emit(org.graalvm.compiler.asm.amd64.AMD64Assembler, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp this
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler asm
        start local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        start local 3 // jdk.vm.ci.code.Register dst
        start local 4 // jdk.vm.ci.code.Register src
        start local 5 // int imm8
         0: .line 1321
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.assertion:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            aload 1 /* asm */
            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
            aload 2 /* size */
            aload 4 /* src */
            aconst_null
            aload 3 /* dst */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.check:(Ljdk/vm/ci/amd64/AMD64;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1322
      StackMap locals:
      StackMap stack:
            aload 1 /* asm */
            aload 4 /* src */
            getstatic jdk.vm.ci.code.Register.None:Ljdk/vm/ci/code/Register;
            aload 3 /* dst */
            aload 2 /* size */
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.pp:I
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.mmmmm:I
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.w:I
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.wEvex:I
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.vexPrefix:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;IIIIZ)Z
            pop
         2: .line 1323
            aload 1 /* asm */
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.op:I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.emitByte:(I)V
         3: .line 1324
            aload 1 /* asm */
            aload 4 /* src */
            aload 3 /* dst */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.emitModRM:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         4: .line 1325
            aload 1 /* asm */
            iload 5 /* imm8 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.emitByte:(I)V
         5: .line 1326
            return
        end local 5 // int imm8
        end local 4 // jdk.vm.ci.code.Register src
        end local 3 // jdk.vm.ci.code.Register dst
        end local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler asm
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
            0    6     1   asm  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;
            0    6     2  size  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            0    6     3   dst  Ljdk/vm/ci/code/Register;
            0    6     4   src  Ljdk/vm/ci/code/Register;
            0    6     5  imm8  I
    MethodParameters:
      Name  Flags
      asm   
      size  
      dst   
      src   
      imm8  

  public void emit(org.graalvm.compiler.asm.amd64.AMD64Assembler, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, org.graalvm.compiler.asm.amd64.AMD64Address, jdk.vm.ci.code.Register, int);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Lorg/graalvm/compiler/asm/amd64/AMD64Address;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp this
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler asm
        start local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        start local 3 // org.graalvm.compiler.asm.amd64.AMD64Address dst
        start local 4 // jdk.vm.ci.code.Register src
        start local 5 // int imm8
         0: .line 1329
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.assertion:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VEXOpAssertion;
            aload 1 /* asm */
            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
            aload 2 /* size */
            aload 4 /* src */
            aconst_null
            aconst_null
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion.check:(Ljdk/vm/ci/amd64/AMD64;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1330
      StackMap locals:
      StackMap stack:
            aload 1 /* asm */
            aload 4 /* src */
            getstatic jdk.vm.ci.code.Register.None:Ljdk/vm/ci/code/Register;
            aload 3 /* dst */
            aload 2 /* size */
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.pp:I
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.mmmmm:I
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.w:I
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.wEvex:I
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.vexPrefix:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;IIIIZ)Z
            istore 6 /* useEvex */
        start local 6 // boolean useEvex
         2: .line 1331
            aload 1 /* asm */
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.op:I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.emitByte:(I)V
         3: .line 1332
            aload 1 /* asm */
            aload 4 /* src */
            aload 3 /* dst */
            iconst_1
            aload 0 /* this */
            iload 6 /* useEvex */
            aload 2 /* size */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp.getDisp8Scale:(ZLorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.emitOperandHelper:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;II)V
         4: .line 1333
            aload 1 /* asm */
            iload 5 /* imm8 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler.emitByte:(I)V
         5: .line 1334
            return
        end local 6 // boolean useEvex
        end local 5 // int imm8
        end local 4 // jdk.vm.ci.code.Register src
        end local 3 // org.graalvm.compiler.asm.amd64.AMD64Address dst
        end local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize size
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64Assembler asm
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMRIOp;
            0    6     1      asm  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;
            0    6     2     size  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            0    6     3      dst  Lorg/graalvm/compiler/asm/amd64/AMD64Address;
            0    6     4      src  Ljdk/vm/ci/code/Register;
            0    6     5     imm8  I
            2    6     6  useEvex  Z
    MethodParameters:
      Name  Flags
      asm   
      size  
      dst   
      src   
      imm8  
}
SourceFile: "AMD64Assembler.java"
NestHost: org.graalvm.compiler.asm.amd64.AMD64Assembler
InnerClasses:
  private final VEXOpAssertion = org.graalvm.compiler.asm.amd64.AMD64Assembler$VEXOpAssertion of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public final VexMRIOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMRIOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public VexOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public abstract VexRRIOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRRIOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public final AVXSize = org.graalvm.compiler.asm.amd64.AVXKind$AVXSize of org.graalvm.compiler.asm.amd64.AVXKind