public final class sun.font.GlyphList
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.font.GlyphList
  super_class: java.lang.Object
{
  private static final int MINGRAYLENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1024

  private static final int MAXGRAYLENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8192

  private static final int DEFAULT_LENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  int glyphindex;
    descriptor: I
    flags: (0x0000) 

  int[] metrics;
    descriptor: [I
    flags: (0x0000) 

  byte[] graybits;
    descriptor: [B
    flags: (0x0000) 

  java.lang.Object strikelist;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 

  int len;
    descriptor: I
    flags: (0x0000) 

  int maxLen;
    descriptor: I
    flags: (0x0000) 

  int maxPosLen;
    descriptor: I
    flags: (0x0000) 

  int[] glyphData;
    descriptor: [I
    flags: (0x0000) 

  char[] chData;
    descriptor: [C
    flags: (0x0000) 

  long[] images;
    descriptor: [J
    flags: (0x0000) 

  float[] positions;
    descriptor: [F
    flags: (0x0000) 

  float x;
    descriptor: F
    flags: (0x0000) 

  float y;
    descriptor: F
    flags: (0x0000) 

  float gposx;
    descriptor: F
    flags: (0x0000) 

  float gposy;
    descriptor: F
    flags: (0x0000) 

  boolean usePositions;
    descriptor: Z
    flags: (0x0000) 

  boolean lcdRGBOrder;
    descriptor: Z
    flags: (0x0000) 

  boolean lcdSubPixPos;
    descriptor: Z
    flags: (0x0000) 

  private static final sun.font.GlyphList reusableGL;
    descriptor: Lsun/font/GlyphList;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.concurrent.atomic.AtomicBoolean inUse;
    descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 155
            new sun.font.GlyphList
            dup
            invokespecial sun.font.GlyphList.<init>:()V
            putstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
         1: .line 156
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
            putstatic sun.font.GlyphList.inUse:Ljava/util/concurrent/atomic/AtomicBoolean;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void ensureCapacity(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.font.GlyphList this
        start local 1 // int len
         0: .line 163
            iload 1 /* len */
            ifge 2
         1: .line 164
            iconst_0
            istore 1 /* len */
         2: .line 166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.GlyphList.usePositions:Z
            ifeq 5
            iload 1 /* len */
            aload 0 /* this */
            getfield sun.font.GlyphList.maxPosLen:I
            if_icmple 5
         3: .line 167
            aload 0 /* this */
            iload 1 /* len */
            iconst_2
            imul
            iconst_2
            iadd
            newarray 6
            putfield sun.font.GlyphList.positions:[F
         4: .line 168
            aload 0 /* this */
            iload 1 /* len */
            putfield sun.font.GlyphList.maxPosLen:I
         5: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.GlyphList.maxLen:I
            ifeq 6
            iload 1 /* len */
            aload 0 /* this */
            getfield sun.font.GlyphList.maxLen:I
            if_icmple 10
         6: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* len */
            newarray 10
            putfield sun.font.GlyphList.glyphData:[I
         7: .line 173
            aload 0 /* this */
            iload 1 /* len */
            newarray 5
            putfield sun.font.GlyphList.chData:[C
         8: .line 174
            aload 0 /* this */
            iload 1 /* len */
            newarray 11
            putfield sun.font.GlyphList.images:[J
         9: .line 175
            aload 0 /* this */
            iload 1 /* len */
            putfield sun.font.GlyphList.maxLen:I
        10: .line 177
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int len
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/font/GlyphList;
            0   11     1   len  I
    MethodParameters:
      Name  Flags
      len   

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 179
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 107
            aload 0 /* this */
            iconst_0
            putfield sun.font.GlyphList.len:I
         2: .line 108
            aload 0 /* this */
            iconst_0
            putfield sun.font.GlyphList.maxLen:I
         3: .line 109
            aload 0 /* this */
            iconst_0
            putfield sun.font.GlyphList.maxPosLen:I
         4: .line 181
            return
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/font/GlyphList;

  public static sun.font.GlyphList getInstance();
    descriptor: ()Lsun/font/GlyphList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 188
            getstatic sun.font.GlyphList.inUse:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.compareAndSet:(ZZ)Z
            ifeq 2
         1: .line 189
            getstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
            areturn
         2: .line 191
      StackMap locals:
      StackMap stack:
            new sun.font.GlyphList
            dup
            invokespecial sun.font.GlyphList.<init>:()V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean setFromString(sun.java2d.loops.FontInfo, java.lang.String, float, float);
    descriptor: (Lsun/java2d/loops/FontInfo;Ljava/lang/String;FF)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // sun.font.GlyphList this
        start local 1 // sun.java2d.loops.FontInfo info
        start local 2 // java.lang.String str
        start local 3 // float x
        start local 4 // float y
         0: .line 216
            aload 0 /* this */
            fload 3 /* x */
            putfield sun.font.GlyphList.x:F
         1: .line 217
            aload 0 /* this */
            fload 4 /* y */
            putfield sun.font.GlyphList.y:F
         2: .line 218
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.fontStrike:Lsun/font/FontStrike;
            putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
         3: .line 219
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.lcdRGBOrder:Z
            putfield sun.font.GlyphList.lcdRGBOrder:Z
         4: .line 220
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.lcdSubPixPos:Z
            putfield sun.font.GlyphList.lcdSubPixPos:Z
         5: .line 221
            aload 0 /* this */
            aload 2 /* str */
            invokevirtual java.lang.String.length:()I
            putfield sun.font.GlyphList.len:I
         6: .line 222
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            invokevirtual sun.font.GlyphList.ensureCapacity:(I)V
         7: .line 223
            aload 2 /* str */
            iconst_0
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            aload 0 /* this */
            getfield sun.font.GlyphList.chData:[C
            iconst_0
            invokevirtual java.lang.String.getChars:(II[CI)V
         8: .line 224
            aload 0 /* this */
            aload 1 /* info */
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            invokevirtual sun.font.GlyphList.mapChars:(Lsun/java2d/loops/FontInfo;I)Z
            ireturn
        end local 4 // float y
        end local 3 // float x
        end local 2 // java.lang.String str
        end local 1 // sun.java2d.loops.FontInfo info
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lsun/font/GlyphList;
            0    9     1  info  Lsun/java2d/loops/FontInfo;
            0    9     2   str  Ljava/lang/String;
            0    9     3     x  F
            0    9     4     y  F
    MethodParameters:
      Name  Flags
      info  
      str   
      x     
      y     

  public boolean setFromChars(sun.java2d.loops.FontInfo, char[], int, int, float, float);
    descriptor: (Lsun/java2d/loops/FontInfo;[CIIFF)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=7
        start local 0 // sun.font.GlyphList this
        start local 1 // sun.java2d.loops.FontInfo info
        start local 2 // char[] chars
        start local 3 // int off
        start local 4 // int alen
        start local 5 // float x
        start local 6 // float y
         0: .line 229
            aload 0 /* this */
            fload 5 /* x */
            putfield sun.font.GlyphList.x:F
         1: .line 230
            aload 0 /* this */
            fload 6 /* y */
            putfield sun.font.GlyphList.y:F
         2: .line 231
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.fontStrike:Lsun/font/FontStrike;
            putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
         3: .line 232
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.lcdRGBOrder:Z
            putfield sun.font.GlyphList.lcdRGBOrder:Z
         4: .line 233
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.lcdSubPixPos:Z
            putfield sun.font.GlyphList.lcdSubPixPos:Z
         5: .line 234
            aload 0 /* this */
            iload 4 /* alen */
            putfield sun.font.GlyphList.len:I
         6: .line 235
            iload 4 /* alen */
            ifge 9
         7: .line 236
            aload 0 /* this */
            iconst_0
            putfield sun.font.GlyphList.len:I
         8: .line 237
            goto 10
         9: .line 238
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* alen */
            putfield sun.font.GlyphList.len:I
        10: .line 240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            invokevirtual sun.font.GlyphList.ensureCapacity:(I)V
        11: .line 241
            aload 2 /* chars */
            iload 3 /* off */
            aload 0 /* this */
            getfield sun.font.GlyphList.chData:[C
            iconst_0
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        12: .line 242
            aload 0 /* this */
            aload 1 /* info */
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            invokevirtual sun.font.GlyphList.mapChars:(Lsun/java2d/loops/FontInfo;I)Z
            ireturn
        end local 6 // float y
        end local 5 // float x
        end local 4 // int alen
        end local 3 // int off
        end local 2 // char[] chars
        end local 1 // sun.java2d.loops.FontInfo info
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lsun/font/GlyphList;
            0   13     1   info  Lsun/java2d/loops/FontInfo;
            0   13     2  chars  [C
            0   13     3    off  I
            0   13     4   alen  I
            0   13     5      x  F
            0   13     6      y  F
    MethodParameters:
       Name  Flags
      info   
      chars  
      off    
      alen   
      x      
      y      

  private boolean mapChars(sun.java2d.loops.FontInfo, int);
    descriptor: (Lsun/java2d/loops/FontInfo;I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.font.GlyphList this
        start local 1 // sun.java2d.loops.FontInfo info
        start local 2 // int len
         0: .line 249
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.font2D:Lsun/font/Font2D;
            invokevirtual sun.font.Font2D.getMapper:()Lsun/font/CharToGlyphMapper;
            iload 2 /* len */
            aload 0 /* this */
            getfield sun.font.GlyphList.chData:[C
            aload 0 /* this */
            getfield sun.font.GlyphList.glyphData:[I
            invokevirtual sun.font.CharToGlyphMapper.charsToGlyphsNS:(I[C[I)Z
            ifeq 2
         1: .line 250
            iconst_0
            ireturn
         2: .line 252
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.fontStrike:Lsun/font/FontStrike;
            aload 0 /* this */
            getfield sun.font.GlyphList.glyphData:[I
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 2 /* len */
            invokevirtual sun.font.FontStrike.getGlyphImagePtrs:([I[JI)V
         3: .line 253
            aload 0 /* this */
            iconst_m1
            putfield sun.font.GlyphList.glyphindex:I
         4: .line 254
            iconst_1
            ireturn
        end local 2 // int len
        end local 1 // sun.java2d.loops.FontInfo info
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/font/GlyphList;
            0    5     1  info  Lsun/java2d/loops/FontInfo;
            0    5     2   len  I
    MethodParameters:
      Name  Flags
      info  
      len   

  public void setFromGlyphVector(sun.java2d.loops.FontInfo, java.awt.font.GlyphVector, float, float);
    descriptor: (Lsun/java2d/loops/FontInfo;Ljava/awt/font/GlyphVector;FF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // sun.font.GlyphList this
        start local 1 // sun.java2d.loops.FontInfo info
        start local 2 // java.awt.font.GlyphVector gv
        start local 3 // float x
        start local 4 // float y
         0: .line 260
            aload 0 /* this */
            fload 3 /* x */
            putfield sun.font.GlyphList.x:F
         1: .line 261
            aload 0 /* this */
            fload 4 /* y */
            putfield sun.font.GlyphList.y:F
         2: .line 262
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.lcdRGBOrder:Z
            putfield sun.font.GlyphList.lcdRGBOrder:Z
         3: .line 263
            aload 0 /* this */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.lcdSubPixPos:Z
            putfield sun.font.GlyphList.lcdSubPixPos:Z
         4: .line 268
            aload 2 /* gv */
            aload 1 /* info */
            invokestatic sun.font.StandardGlyphVector.getStandardGV:(Ljava/awt/font/GlyphVector;Lsun/java2d/loops/FontInfo;)Lsun/font/StandardGlyphVector;
            astore 5 /* sgv */
        start local 5 // sun.font.StandardGlyphVector sgv
         5: .line 270
            aload 0 /* this */
            aload 5 /* sgv */
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.devTx:[D
            invokevirtual sun.font.StandardGlyphVector.needsPositions:([D)Z
            putfield sun.font.GlyphList.usePositions:Z
         6: .line 271
            aload 0 /* this */
            aload 5 /* sgv */
            invokevirtual sun.font.StandardGlyphVector.getNumGlyphs:()I
            putfield sun.font.GlyphList.len:I
         7: .line 272
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            invokevirtual sun.font.GlyphList.ensureCapacity:(I)V
         8: .line 273
            aload 0 /* this */
            aload 5 /* sgv */
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
         9: .line 274
            aload 0 /* this */
            getfield sun.font.GlyphList.usePositions:Z
            ifeq 10
            aload 0 /* this */
            getfield sun.font.GlyphList.positions:[F
            goto 11
      StackMap locals: sun.font.GlyphList sun.java2d.loops.FontInfo java.awt.font.GlyphVector float float sun.font.StandardGlyphVector
      StackMap stack: sun.font.GlyphList sun.font.StandardGlyphVector long[]
        10: aconst_null
        11: .line 275
      StackMap locals: sun.font.GlyphList sun.java2d.loops.FontInfo java.awt.font.GlyphVector float float sun.font.StandardGlyphVector
      StackMap stack: sun.font.GlyphList sun.font.StandardGlyphVector long[] float[]
            aload 1 /* info */
            getfield sun.java2d.loops.FontInfo.devTx:[D
        12: .line 273
            invokevirtual sun.font.StandardGlyphVector.setupGlyphImages:([J[F[D)Ljava/lang/Object;
            putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
        13: .line 276
            aload 0 /* this */
            iconst_m1
            putfield sun.font.GlyphList.glyphindex:I
        14: .line 277
            return
        end local 5 // sun.font.StandardGlyphVector sgv
        end local 4 // float y
        end local 3 // float x
        end local 2 // java.awt.font.GlyphVector gv
        end local 1 // sun.java2d.loops.FontInfo info
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lsun/font/GlyphList;
            0   15     1  info  Lsun/java2d/loops/FontInfo;
            0   15     2    gv  Ljava/awt/font/GlyphVector;
            0   15     3     x  F
            0   15     4     y  F
            5   15     5   sgv  Lsun/font/StandardGlyphVector;
    MethodParameters:
      Name  Flags
      info  
      gv    
      x     
      y     

  public int[] getBounds();
    descriptor: ()[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 284
            aload 0 /* this */
            getfield sun.font.GlyphList.glyphindex:I
            iflt 2
         1: .line 285
            new java.lang.InternalError
            dup
            ldc "calling getBounds after setGlyphIndex"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            ifnonnull 4
         3: .line 288
            aload 0 /* this */
            iconst_5
            newarray 10
            putfield sun.font.GlyphList.metrics:[I
         4: .line 292
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.GlyphList.x:F
            ldc 0.5
            fadd
            putfield sun.font.GlyphList.gposx:F
         5: .line 293
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.GlyphList.y:F
            ldc 0.5
            fadd
            putfield sun.font.GlyphList.gposy:F
         6: .line 294
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            invokevirtual sun.font.GlyphList.fillBounds:([I)V
         7: .line 295
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            areturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/font/GlyphList;

  public void setGlyphIndex(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // sun.font.GlyphList this
        start local 1 // int i
         0: .line 305
            aload 0 /* this */
            iload 1 /* i */
            putfield sun.font.GlyphList.glyphindex:I
         1: .line 307
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 1 /* i */
            laload
            getstatic sun.font.StrikeCache.topLeftXOffset:I
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
         2: .line 306
            fstore 2 /* gx */
        start local 2 // float gx
         3: .line 309
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 1 /* i */
            laload
            getstatic sun.font.StrikeCache.topLeftYOffset:I
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
         4: .line 308
            fstore 3 /* gy */
        start local 3 // float gy
         5: .line 311
            aload 0 /* this */
            getfield sun.font.GlyphList.usePositions:Z
            ifeq 9
         6: .line 312
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_0
            aload 0 /* this */
            getfield sun.font.GlyphList.positions:[F
            iload 1 /* i */
            iconst_1
            ishl
            faload
            aload 0 /* this */
            getfield sun.font.GlyphList.gposx:F
            fadd
            fload 2 /* gx */
            fadd
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
         7: .line 313
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_1
            aload 0 /* this */
            getfield sun.font.GlyphList.positions:[F
            iload 1 /* i */
            iconst_1
            ishl
            iconst_1
            iadd
            faload
            aload 0 /* this */
            getfield sun.font.GlyphList.gposy:F
            fadd
            fload 3 /* gy */
            fadd
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
         8: .line 314
            goto 17
         9: .line 315
      StackMap locals: float float
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_0
            aload 0 /* this */
            getfield sun.font.GlyphList.gposx:F
            fload 2 /* gx */
            fadd
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
        10: .line 316
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_1
            aload 0 /* this */
            getfield sun.font.GlyphList.gposy:F
            fload 3 /* gy */
            fadd
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
        11: .line 318
            aload 0 /* this */
            dup
            getfield sun.font.GlyphList.gposx:F
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
        12: .line 319
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 1 /* i */
            laload
            getstatic sun.font.StrikeCache.xAdvanceOffset:I
            i2l
            ladd
        13: .line 318
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
            fadd
            putfield sun.font.GlyphList.gposx:F
        14: .line 320
            aload 0 /* this */
            dup
            getfield sun.font.GlyphList.gposy:F
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
        15: .line 321
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 1 /* i */
            laload
            getstatic sun.font.StrikeCache.yAdvanceOffset:I
            i2l
            ladd
        16: .line 320
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
            fadd
            putfield sun.font.GlyphList.gposy:F
        17: .line 323
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_2
        18: .line 324
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 1 /* i */
            laload
            getstatic sun.font.StrikeCache.widthOffset:I
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
        19: .line 323
            iastore
        20: .line 325
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_3
        21: .line 326
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 1 /* i */
            laload
            getstatic sun.font.StrikeCache.heightOffset:I
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
        22: .line 325
            iastore
        23: .line 327
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_4
        24: .line 328
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 1 /* i */
            laload
            getstatic sun.font.StrikeCache.rowBytesOffset:I
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
        25: .line 327
            iastore
        26: .line 329
            return
        end local 3 // float gy
        end local 2 // float gx
        end local 1 // int i
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   27     0  this  Lsun/font/GlyphList;
            0   27     1     i  I
            3   27     2    gx  F
            5   27     3    gy  F
    MethodParameters:
      Name  Flags
      i     

  public int[] getMetrics();
    descriptor: ()[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 332
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            areturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public byte[] getGrayBits();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 336
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_4
            iaload
            aload 0 /* this */
            getfield sun.font.GlyphList.metrics:[I
            iconst_3
            iaload
            imul
            istore 1 /* len */
        start local 1 // int len
         1: .line 337
            aload 0 /* this */
            getfield sun.font.GlyphList.graybits:[B
            ifnonnull 4
         2: .line 338
            aload 0 /* this */
            iload 1 /* len */
            sipush 1024
            invokestatic java.lang.Math.max:(II)I
            newarray 8
            putfield sun.font.GlyphList.graybits:[B
         3: .line 339
            goto 6
         4: .line 340
      StackMap locals: int
      StackMap stack:
            iload 1 /* len */
            aload 0 /* this */
            getfield sun.font.GlyphList.graybits:[B
            arraylength
            if_icmple 6
         5: .line 341
            aload 0 /* this */
            iload 1 /* len */
            newarray 8
            putfield sun.font.GlyphList.graybits:[B
         6: .line 345
      StackMap locals:
      StackMap stack:
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            aload 0 /* this */
            getfield sun.font.GlyphList.glyphindex:I
            laload
         7: .line 346
            getstatic sun.font.StrikeCache.pixelDataOffset:I
            i2l
            ladd
         8: .line 345
            invokevirtual jdk.internal.misc.Unsafe.getAddress:(J)J
         9: .line 344
            lstore 2 /* pixelDataAddress */
        start local 2 // long pixelDataAddress
        10: .line 348
            lload 2 /* pixelDataAddress */
            lconst_0
            lcmp
            ifne 12
        11: .line 349
            aload 0 /* this */
            getfield sun.font.GlyphList.graybits:[B
            areturn
        12: .line 357
      StackMap locals: long
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        13: goto 16
        14: .line 358
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.font.GlyphList.graybits:[B
            iload 4 /* i */
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            lload 2 /* pixelDataAddress */
            iload 4 /* i */
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getByte:(J)B
            bastore
        15: .line 357
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            iload 1 /* len */
            if_icmplt 14
        end local 4 // int i
        17: .line 360
            aload 0 /* this */
            getfield sun.font.GlyphList.graybits:[B
            areturn
        end local 2 // long pixelDataAddress
        end local 1 // int len
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   18     0              this  Lsun/font/GlyphList;
            1   18     1               len  I
           10   18     2  pixelDataAddress  J
           13   17     4                 i  I

  public long[] getImages();
    descriptor: ()[J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 364
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            areturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public boolean usePositions();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 368
            aload 0 /* this */
            getfield sun.font.GlyphList.usePositions:Z
            ireturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public float[] getPositions();
    descriptor: ()[F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 372
            aload 0 /* this */
            getfield sun.font.GlyphList.positions:[F
            areturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public float getX();
    descriptor: ()F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 376
            aload 0 /* this */
            getfield sun.font.GlyphList.x:F
            freturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public float getY();
    descriptor: ()F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 380
            aload 0 /* this */
            getfield sun.font.GlyphList.y:F
            freturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public java.lang.Object getStrike();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 384
            aload 0 /* this */
            getfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
            areturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public boolean isSubPixPos();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 388
            aload 0 /* this */
            getfield sun.font.GlyphList.lcdSubPixPos:Z
            ireturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public boolean isRGBOrder();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 392
            aload 0 /* this */
            getfield sun.font.GlyphList.lcdRGBOrder:Z
            ireturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 400
            aload 0 /* this */
            getstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
            if_acmpne 6
         1: .line 401
            aload 0 /* this */
            getfield sun.font.GlyphList.graybits:[B
            ifnull 3
            aload 0 /* this */
            getfield sun.font.GlyphList.graybits:[B
            arraylength
            sipush 8192
            if_icmple 3
         2: .line 402
            aload 0 /* this */
            aconst_null
            putfield sun.font.GlyphList.graybits:[B
         3: .line 404
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield sun.font.GlyphList.usePositions:Z
         4: .line 405
            aload 0 /* this */
            aconst_null
            putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
         5: .line 406
            getstatic sun.font.GlyphList.inUse:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_0
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
         6: .line 408
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/font/GlyphList;

  public int getNumGlyphs();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphList this
         0: .line 422
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            ireturn
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphList;

  private void fillBounds(int[]);
    descriptor: ([I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=24, args_size=2
        start local 0 // sun.font.GlyphList this
        start local 1 // int[] bounds
         0: .line 430
            getstatic sun.font.StrikeCache.topLeftXOffset:I
            istore 2 /* xOffset */
        start local 2 // int xOffset
         1: .line 431
            getstatic sun.font.StrikeCache.topLeftYOffset:I
            istore 3 /* yOffset */
        start local 3 // int yOffset
         2: .line 432
            getstatic sun.font.StrikeCache.widthOffset:I
            istore 4 /* wOffset */
        start local 4 // int wOffset
         3: .line 433
            getstatic sun.font.StrikeCache.heightOffset:I
            istore 5 /* hOffset */
        start local 5 // int hOffset
         4: .line 434
            getstatic sun.font.StrikeCache.xAdvanceOffset:I
            istore 6 /* xAdvOffset */
        start local 6 // int xAdvOffset
         5: .line 435
            getstatic sun.font.StrikeCache.yAdvanceOffset:I
            istore 7 /* yAdvOffset */
        start local 7 // int yAdvOffset
         6: .line 437
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            ifne 9
         7: .line 438
            aload 1 /* bounds */
            iconst_0
            aload 1 /* bounds */
            iconst_1
            aload 1 /* bounds */
            iconst_2
            aload 1 /* bounds */
            iconst_3
            iconst_0
            dup_x2
            iastore
            dup_x2
            iastore
            dup_x2
            iastore
            iastore
         8: .line 439
            return
         9: .line 442
      StackMap locals: sun.font.GlyphList int[] int int int int int int
      StackMap stack:
            ldc Infinity
            dup
            fstore 9 /* by0 */
        start local 9 // float by0
        10: fstore 8 /* bx0 */
        start local 8 // float bx0
        11: .line 443
            ldc -Infinity
            dup
            fstore 11 /* by1 */
        start local 11 // float by1
        12: fstore 10 /* bx1 */
        start local 10 // float bx1
        13: .line 445
            iconst_0
            istore 12 /* posIndex */
        start local 12 // int posIndex
        14: .line 446
            aload 0 /* this */
            getfield sun.font.GlyphList.x:F
            ldc 0.5
            fadd
            fstore 13 /* glx */
        start local 13 // float glx
        15: .line 447
            aload 0 /* this */
            getfield sun.font.GlyphList.y:F
            ldc 0.5
            fadd
            fstore 14 /* gly */
        start local 14 // float gly
        16: .line 450
            iconst_0
            istore 23 /* i */
        start local 23 // int i
        17: goto 37
        18: .line 451
      StackMap locals: sun.font.GlyphList int[] int int int int int int float float float float int float float top top top top top top top top int
      StackMap stack:
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 23 /* i */
            laload
            iload 2 /* xOffset */
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
            fstore 17 /* gx */
        start local 17 // float gx
        19: .line 452
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 23 /* i */
            laload
            iload 3 /* yOffset */
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
            fstore 18 /* gy */
        start local 18 // float gy
        20: .line 453
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 23 /* i */
            laload
            iload 4 /* wOffset */
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
            istore 15 /* gw */
        start local 15 // char gw
        21: .line 454
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 23 /* i */
            laload
            iload 5 /* hOffset */
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
            istore 16 /* gh */
        start local 16 // char gh
        22: .line 456
            aload 0 /* this */
            getfield sun.font.GlyphList.usePositions:Z
            ifeq 26
        23: .line 457
            aload 0 /* this */
            getfield sun.font.GlyphList.positions:[F
            iload 12 /* posIndex */
            iinc 12 /* posIndex */ 1
            faload
            fload 17 /* gx */
            fadd
            fload 13 /* glx */
            fadd
            fstore 19 /* gx0 */
        start local 19 // float gx0
        24: .line 458
            aload 0 /* this */
            getfield sun.font.GlyphList.positions:[F
            iload 12 /* posIndex */
            iinc 12 /* posIndex */ 1
            faload
            fload 18 /* gy */
            fadd
            fload 14 /* gly */
            fadd
            fstore 20 /* gy0 */
        start local 20 // float gy0
        25: .line 459
            goto 30
        end local 20 // float gy0
        end local 19 // float gx0
        26: .line 460
      StackMap locals: sun.font.GlyphList int[] int int int int int int float float float float int float float int int float float top top top top int
      StackMap stack:
            fload 13 /* glx */
            fload 17 /* gx */
            fadd
            fstore 19 /* gx0 */
        start local 19 // float gx0
        27: .line 461
            fload 14 /* gly */
            fload 18 /* gy */
            fadd
            fstore 20 /* gy0 */
        start local 20 // float gy0
        28: .line 462
            fload 13 /* glx */
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 23 /* i */
            laload
            iload 6 /* xAdvOffset */
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
            fadd
            fstore 13 /* glx */
        29: .line 463
            fload 14 /* gly */
            getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
            aload 0 /* this */
            getfield sun.font.GlyphList.images:[J
            iload 23 /* i */
            laload
            iload 7 /* yAdvOffset */
            i2l
            ladd
            invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
            fadd
            fstore 14 /* gly */
        30: .line 465
      StackMap locals: sun.font.GlyphList int[] int int int int int int float float float float int float float int int float float float float top top int
      StackMap stack:
            fload 19 /* gx0 */
            iload 15 /* gw */
            i2f
            fadd
            fstore 21 /* gx1 */
        start local 21 // float gx1
        31: .line 466
            fload 20 /* gy0 */
            iload 16 /* gh */
            i2f
            fadd
            fstore 22 /* gy1 */
        start local 22 // float gy1
        32: .line 467
            fload 8 /* bx0 */
            fload 19 /* gx0 */
            fcmpl
            ifle 33
            fload 19 /* gx0 */
            fstore 8 /* bx0 */
        33: .line 468
      StackMap locals: sun.font.GlyphList int[] int int int int int int float float float float int float float int int float float float float float float int
      StackMap stack:
            fload 9 /* by0 */
            fload 20 /* gy0 */
            fcmpl
            ifle 34
            fload 20 /* gy0 */
            fstore 9 /* by0 */
        34: .line 469
      StackMap locals:
      StackMap stack:
            fload 10 /* bx1 */
            fload 21 /* gx1 */
            fcmpg
            ifge 35
            fload 21 /* gx1 */
            fstore 10 /* bx1 */
        35: .line 470
      StackMap locals:
      StackMap stack:
            fload 11 /* by1 */
            fload 22 /* gy1 */
            fcmpg
            ifge 36
            fload 22 /* gy1 */
            fstore 11 /* by1 */
        36: .line 450
      StackMap locals:
      StackMap stack:
            iinc 23 /* i */ 1
        end local 22 // float gy1
        end local 21 // float gx1
        end local 20 // float gy0
        end local 19 // float gx0
        end local 18 // float gy
        end local 17 // float gx
        end local 16 // char gh
        end local 15 // char gw
      StackMap locals: sun.font.GlyphList int[] int int int int int int float float float float int float float top top top top top top top top int
      StackMap stack:
        37: iload 23 /* i */
            aload 0 /* this */
            getfield sun.font.GlyphList.len:I
            if_icmplt 18
        end local 23 // int i
        38: .line 475
            aload 1 /* bounds */
            iconst_0
            fload 8 /* bx0 */
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
        39: .line 476
            aload 1 /* bounds */
            iconst_1
            fload 9 /* by0 */
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
        40: .line 477
            aload 1 /* bounds */
            iconst_2
            fload 10 /* bx1 */
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
        41: .line 478
            aload 1 /* bounds */
            iconst_3
            fload 11 /* by1 */
            f2d
            invokestatic java.lang.Math.floor:(D)D
            d2i
            iastore
        42: .line 479
            return
        end local 14 // float gly
        end local 13 // float glx
        end local 12 // int posIndex
        end local 11 // float by1
        end local 10 // float bx1
        end local 9 // float by0
        end local 8 // float bx0
        end local 7 // int yAdvOffset
        end local 6 // int xAdvOffset
        end local 5 // int hOffset
        end local 4 // int wOffset
        end local 3 // int yOffset
        end local 2 // int xOffset
        end local 1 // int[] bounds
        end local 0 // sun.font.GlyphList this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   43     0        this  Lsun/font/GlyphList;
            0   43     1      bounds  [I
            1   43     2     xOffset  I
            2   43     3     yOffset  I
            3   43     4     wOffset  I
            4   43     5     hOffset  I
            5   43     6  xAdvOffset  I
            6   43     7  yAdvOffset  I
           11   43     8         bx0  F
           10   43     9         by0  F
           13   43    10         bx1  F
           12   43    11         by1  F
           14   43    12    posIndex  I
           15   43    13         glx  F
           16   43    14         gly  F
           21   37    15          gw  C
           22   37    16          gh  C
           19   37    17          gx  F
           20   37    18          gy  F
           24   26    19         gx0  F
           27   37    19         gx0  F
           25   26    20         gy0  F
           28   37    20         gy0  F
           31   37    21         gx1  F
           32   37    22         gy1  F
           17   38    23           i  I
    MethodParameters:
        Name  Flags
      bounds  
}
SourceFile: "GlyphList.java"