public class sun.java2d.loops.MaskBlit extends sun.java2d.loops.GraphicsPrimitive
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.java2d.loops.MaskBlit
  super_class: sun.java2d.loops.GraphicsPrimitive
{
  public static final java.lang.String methodSignature;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final int primTypeID;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static sun.java2d.loops.RenderCache blitcache;
    descriptor: Lsun/java2d/loops/RenderCache;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=0, args_size=0
         0: .line 51
            ldc "MaskBlit(...)"
            invokevirtual java.lang.String.toString:()Ljava/lang/String;
            putstatic sun.java2d.loops.MaskBlit.methodSignature:Ljava/lang/String;
         1: .line 53
            invokestatic sun.java2d.loops.MaskBlit.makePrimTypeID:()I
            putstatic sun.java2d.loops.MaskBlit.primTypeID:I
         2: .line 55
            new sun.java2d.loops.RenderCache
            dup
            bipush 20
            invokespecial sun.java2d.loops.RenderCache.<init>:(I)V
            putstatic sun.java2d.loops.MaskBlit.blitcache:Lsun/java2d/loops/RenderCache;
         3: .line 112
            new sun.java2d.loops.MaskBlit
            dup
            aconst_null
            aconst_null
            aconst_null
            invokespecial sun.java2d.loops.MaskBlit.<init>:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)V
            invokestatic sun.java2d.loops.GraphicsPrimitiveMgr.registerGeneral:(Lsun/java2d/loops/GraphicsPrimitive;)V
         4: .line 113
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static sun.java2d.loops.MaskBlit locate(sun.java2d.loops.SurfaceType, sun.java2d.loops.CompositeType, sun.java2d.loops.SurfaceType);
    descriptor: (Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/MaskBlit;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.java2d.loops.SurfaceType srctype
        start local 1 // sun.java2d.loops.CompositeType comptype
        start local 2 // sun.java2d.loops.SurfaceType dsttype
         0: .line 62
            getstatic sun.java2d.loops.MaskBlit.primTypeID:I
         1: .line 63
            aload 0 /* srctype */
            aload 1 /* comptype */
            aload 2 /* dsttype */
         2: .line 62
            invokestatic sun.java2d.loops.GraphicsPrimitiveMgr.locate:(ILsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/GraphicsPrimitive;
         3: .line 61
            checkcast sun.java2d.loops.MaskBlit
            areturn
        end local 2 // sun.java2d.loops.SurfaceType dsttype
        end local 1 // sun.java2d.loops.CompositeType comptype
        end local 0 // sun.java2d.loops.SurfaceType srctype
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0   srctype  Lsun/java2d/loops/SurfaceType;
            0    4     1  comptype  Lsun/java2d/loops/CompositeType;
            0    4     2   dsttype  Lsun/java2d/loops/SurfaceType;
    MethodParameters:
          Name  Flags
      srctype   
      comptype  
      dsttype   

  public static sun.java2d.loops.MaskBlit getFromCache(sun.java2d.loops.SurfaceType, sun.java2d.loops.CompositeType, sun.java2d.loops.SurfaceType);
    descriptor: (Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/MaskBlit;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // sun.java2d.loops.SurfaceType src
        start local 1 // sun.java2d.loops.CompositeType comp
        start local 2 // sun.java2d.loops.SurfaceType dst
         0: .line 70
            getstatic sun.java2d.loops.MaskBlit.blitcache:Lsun/java2d/loops/RenderCache;
            aload 0 /* src */
            aload 1 /* comp */
            aload 2 /* dst */
            invokevirtual sun.java2d.loops.RenderCache.get:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Ljava/lang/Object;
            astore 3 /* o */
        start local 3 // java.lang.Object o
         1: .line 71
            aload 3 /* o */
            ifnull 3
         2: .line 72
            aload 3 /* o */
            checkcast sun.java2d.loops.MaskBlit
            areturn
         3: .line 74
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* src */
            aload 1 /* comp */
            aload 2 /* dst */
            invokestatic sun.java2d.loops.MaskBlit.locate:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/MaskBlit;
            astore 4 /* blit */
        start local 4 // sun.java2d.loops.MaskBlit blit
         4: .line 75
            aload 4 /* blit */
            ifnonnull 10
         5: .line 76
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "mask blit loop not found for:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 77
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "src:  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* src */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         7: .line 78
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "comp: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* comp */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 79
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "dst:  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* dst */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 80
            goto 11
        10: .line 81
      StackMap locals: sun.java2d.loops.MaskBlit
      StackMap stack:
            getstatic sun.java2d.loops.MaskBlit.blitcache:Lsun/java2d/loops/RenderCache;
            aload 0 /* src */
            aload 1 /* comp */
            aload 2 /* dst */
            aload 4 /* blit */
            invokevirtual sun.java2d.loops.RenderCache.put:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;Ljava/lang/Object;)V
        11: .line 83
      StackMap locals:
      StackMap stack:
            aload 4 /* blit */
            areturn
        end local 4 // sun.java2d.loops.MaskBlit blit
        end local 3 // java.lang.Object o
        end local 2 // sun.java2d.loops.SurfaceType dst
        end local 1 // sun.java2d.loops.CompositeType comp
        end local 0 // sun.java2d.loops.SurfaceType src
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0   src  Lsun/java2d/loops/SurfaceType;
            0   12     1  comp  Lsun/java2d/loops/CompositeType;
            0   12     2   dst  Lsun/java2d/loops/SurfaceType;
            1   12     3     o  Ljava/lang/Object;
            4   12     4  blit  Lsun/java2d/loops/MaskBlit;
    MethodParameters:
      Name  Flags
      src   
      comp  
      dst   

  protected void <init>(sun.java2d.loops.SurfaceType, sun.java2d.loops.CompositeType, sun.java2d.loops.SurfaceType);
    descriptor: (Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // sun.java2d.loops.MaskBlit this
        start local 1 // sun.java2d.loops.SurfaceType srctype
        start local 2 // sun.java2d.loops.CompositeType comptype
        start local 3 // sun.java2d.loops.SurfaceType dsttype
         0: .line 90
            aload 0 /* this */
            getstatic sun.java2d.loops.MaskBlit.methodSignature:Ljava/lang/String;
            getstatic sun.java2d.loops.MaskBlit.primTypeID:I
            aload 1 /* srctype */
            aload 2 /* comptype */
            aload 3 /* dsttype */
            invokespecial sun.java2d.loops.GraphicsPrimitive.<init>:(Ljava/lang/String;ILsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)V
         1: .line 91
            return
        end local 3 // sun.java2d.loops.SurfaceType dsttype
        end local 2 // sun.java2d.loops.CompositeType comptype
        end local 1 // sun.java2d.loops.SurfaceType srctype
        end local 0 // sun.java2d.loops.MaskBlit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lsun/java2d/loops/MaskBlit;
            0    2     1   srctype  Lsun/java2d/loops/SurfaceType;
            0    2     2  comptype  Lsun/java2d/loops/CompositeType;
            0    2     3   dsttype  Lsun/java2d/loops/SurfaceType;
    MethodParameters:
          Name  Flags
      srctype   
      comptype  
      dsttype   

  public void <init>(long, sun.java2d.loops.SurfaceType, sun.java2d.loops.CompositeType, sun.java2d.loops.SurfaceType);
    descriptor: (JLsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=5
        start local 0 // sun.java2d.loops.MaskBlit this
        start local 1 // long pNativePrim
        start local 3 // sun.java2d.loops.SurfaceType srctype
        start local 4 // sun.java2d.loops.CompositeType comptype
        start local 5 // sun.java2d.loops.SurfaceType dsttype
         0: .line 98
            aload 0 /* this */
            lload 1 /* pNativePrim */
            getstatic sun.java2d.loops.MaskBlit.methodSignature:Ljava/lang/String;
            getstatic sun.java2d.loops.MaskBlit.primTypeID:I
            aload 3 /* srctype */
            aload 4 /* comptype */
            aload 5 /* dsttype */
            invokespecial sun.java2d.loops.GraphicsPrimitive.<init>:(JLjava/lang/String;ILsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)V
         1: .line 99
            return
        end local 5 // sun.java2d.loops.SurfaceType dsttype
        end local 4 // sun.java2d.loops.CompositeType comptype
        end local 3 // sun.java2d.loops.SurfaceType srctype
        end local 1 // long pNativePrim
        end local 0 // sun.java2d.loops.MaskBlit this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lsun/java2d/loops/MaskBlit;
            0    2     1  pNativePrim  J
            0    2     3      srctype  Lsun/java2d/loops/SurfaceType;
            0    2     4     comptype  Lsun/java2d/loops/CompositeType;
            0    2     5      dsttype  Lsun/java2d/loops/SurfaceType;
    MethodParameters:
             Name  Flags
      pNativePrim  
      srctype      
      comptype     
      dsttype      

  public native void MaskBlit(sun.java2d.SurfaceData, sun.java2d.SurfaceData, java.awt.Composite, sun.java2d.pipe.Region, int, int, int, int, int, int, byte[], int, int);
    descriptor: (Lsun/java2d/SurfaceData;Lsun/java2d/SurfaceData;Ljava/awt/Composite;Lsun/java2d/pipe/Region;IIIIII[BII)V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    MethodParameters:
          Name  Flags
      src       
      dst       
      comp      
      clip      
      srcx      
      srcy      
      dstx      
      dsty      
      width     
      height    
      mask      
      maskoff   
      maskscan  

  public sun.java2d.loops.GraphicsPrimitive makePrimitive(sun.java2d.loops.SurfaceType, sun.java2d.loops.CompositeType, sun.java2d.loops.SurfaceType);
    descriptor: (Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)Lsun/java2d/loops/GraphicsPrimitive;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // sun.java2d.loops.MaskBlit this
        start local 1 // sun.java2d.loops.SurfaceType srctype
        start local 2 // sun.java2d.loops.CompositeType comptype
        start local 3 // sun.java2d.loops.SurfaceType dsttype
         0: .line 127
            getstatic sun.java2d.loops.CompositeType.Xor:Lsun/java2d/loops/CompositeType;
            aload 2 /* comptype */
            invokevirtual sun.java2d.loops.CompositeType.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 128
            new java.lang.InternalError
            dup
            ldc "Cannot construct MaskBlit for XOR mode"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 132
      StackMap locals:
      StackMap stack:
            new sun.java2d.loops.MaskBlit$General
            dup
            aload 1 /* srctype */
            aload 2 /* comptype */
            aload 3 /* dsttype */
            invokespecial sun.java2d.loops.MaskBlit$General.<init>:(Lsun/java2d/loops/SurfaceType;Lsun/java2d/loops/CompositeType;Lsun/java2d/loops/SurfaceType;)V
            astore 4 /* ob */
        start local 4 // sun.java2d.loops.MaskBlit$General ob
         3: .line 133
            aload 0 /* this */
            aload 4 /* ob */
            invokevirtual sun.java2d.loops.MaskBlit.setupGeneralBinaryOp:(Lsun/java2d/loops/GraphicsPrimitive$GeneralBinaryOp;)V
         4: .line 134
            aload 4 /* ob */
            areturn
        end local 4 // sun.java2d.loops.MaskBlit$General ob
        end local 3 // sun.java2d.loops.SurfaceType dsttype
        end local 2 // sun.java2d.loops.CompositeType comptype
        end local 1 // sun.java2d.loops.SurfaceType srctype
        end local 0 // sun.java2d.loops.MaskBlit this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lsun/java2d/loops/MaskBlit;
            0    5     1   srctype  Lsun/java2d/loops/SurfaceType;
            0    5     2  comptype  Lsun/java2d/loops/CompositeType;
            0    5     3   dsttype  Lsun/java2d/loops/SurfaceType;
            3    5     4        ob  Lsun/java2d/loops/MaskBlit$General;
    MethodParameters:
          Name  Flags
      srctype   
      comptype  
      dsttype   

  public sun.java2d.loops.GraphicsPrimitive traceWrap();
    descriptor: ()Lsun/java2d/loops/GraphicsPrimitive;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.java2d.loops.MaskBlit this
         0: .line 232
            new sun.java2d.loops.MaskBlit$TraceMaskBlit
            dup
            aload 0 /* this */
            invokespecial sun.java2d.loops.MaskBlit$TraceMaskBlit.<init>:(Lsun/java2d/loops/MaskBlit;)V
            areturn
        end local 0 // sun.java2d.loops.MaskBlit this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/java2d/loops/MaskBlit;
}
SourceFile: "MaskBlit.java"
NestMembers:
  sun.java2d.loops.MaskBlit$General  sun.java2d.loops.MaskBlit$TraceMaskBlit
InnerClasses:
  protected abstract GeneralBinaryOp = sun.java2d.loops.GraphicsPrimitive$GeneralBinaryOp of sun.java2d.loops.GraphicsPrimitive
  private General = sun.java2d.loops.MaskBlit$General of sun.java2d.loops.MaskBlit
  private TraceMaskBlit = sun.java2d.loops.MaskBlit$TraceMaskBlit of sun.java2d.loops.MaskBlit