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 sun.font.GlyphList reusableGL;
descriptor: Lsun/font/GlyphList;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static boolean inUse;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.font.GlyphList
dup
invokespecial sun.font.GlyphList.<init>:()V
putstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
1: 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 start local 1 0: iload 1
ifge 2
1: iconst_0
istore 1
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.GlyphList.usePositions:Z
ifeq 5
iload 1
aload 0
getfield sun.font.GlyphList.maxPosLen:I
if_icmple 5
3: aload 0
iload 1
iconst_2
imul
iconst_2
iadd
newarray 6
putfield sun.font.GlyphList.positions:[F
4: aload 0
iload 1
putfield sun.font.GlyphList.maxPosLen:I
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.GlyphList.maxLen:I
ifeq 6
iload 1
aload 0
getfield sun.font.GlyphList.maxLen:I
if_icmple 10
6: StackMap locals:
StackMap stack:
aload 0
iload 1
newarray 10
putfield sun.font.GlyphList.glyphData:[I
7: aload 0
iload 1
newarray 5
putfield sun.font.GlyphList.chData:[C
8: aload 0
iload 1
newarray 11
putfield sun.font.GlyphList.images:[J
9: aload 0
iload 1
putfield sun.font.GlyphList.maxLen:I
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 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 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield sun.font.GlyphList.len:I
2: aload 0
iconst_0
putfield sun.font.GlyphList.maxLen:I
3: aload 0
iconst_0
putfield sun.font.GlyphList.maxPosLen:I
4: return
end local 0 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=2, locals=1, args_size=0
0: getstatic sun.font.GlyphList.inUse:Z
ifeq 2
1: new sun.font.GlyphList
dup
invokespecial sun.font.GlyphList.<init>:()V
areturn
2: StackMap locals:
StackMap stack:
ldc Lsun/font/GlyphList;
dup
astore 0
monitorenter
3: getstatic sun.font.GlyphList.inUse:Z
ifeq 6
4: new sun.font.GlyphList
dup
invokespecial sun.font.GlyphList.<init>:()V
aload 0
monitorexit
5: areturn
6: StackMap locals: java.lang.Class
StackMap stack:
iconst_1
putstatic sun.font.GlyphList.inUse:Z
7: getstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
aload 0
monitorexit
8: areturn
9: StackMap locals:
StackMap stack: java.lang.Throwable
aload 0
monitorexit
10: athrow
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
3 5 9 any
6 8 9 any
9 10 9 any
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 start local 1 start local 2 start local 3 start local 4 0: aload 0
fload 3
putfield sun.font.GlyphList.x:F
1: aload 0
fload 4
putfield sun.font.GlyphList.y:F
2: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.fontStrike:Lsun/font/FontStrike;
putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
3: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.lcdRGBOrder:Z
putfield sun.font.GlyphList.lcdRGBOrder:Z
4: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.lcdSubPixPos:Z
putfield sun.font.GlyphList.lcdSubPixPos:Z
5: aload 0
aload 2
invokevirtual java.lang.String.length:()I
putfield sun.font.GlyphList.len:I
6: aload 0
aload 0
getfield sun.font.GlyphList.len:I
invokevirtual sun.font.GlyphList.ensureCapacity:(I)V
7: aload 2
iconst_0
aload 0
getfield sun.font.GlyphList.len:I
aload 0
getfield sun.font.GlyphList.chData:[C
iconst_0
invokevirtual java.lang.String.getChars:(II[CI)V
8: aload 0
aload 1
aload 0
getfield sun.font.GlyphList.len:I
invokevirtual sun.font.GlyphList.mapChars:(Lsun/java2d/loops/FontInfo;I)Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 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 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
fload 5
putfield sun.font.GlyphList.x:F
1: aload 0
fload 6
putfield sun.font.GlyphList.y:F
2: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.fontStrike:Lsun/font/FontStrike;
putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
3: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.lcdRGBOrder:Z
putfield sun.font.GlyphList.lcdRGBOrder:Z
4: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.lcdSubPixPos:Z
putfield sun.font.GlyphList.lcdSubPixPos:Z
5: aload 0
iload 4
putfield sun.font.GlyphList.len:I
6: iload 4
ifge 9
7: aload 0
iconst_0
putfield sun.font.GlyphList.len:I
8: goto 10
9: StackMap locals:
StackMap stack:
aload 0
iload 4
putfield sun.font.GlyphList.len:I
10: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.font.GlyphList.len:I
invokevirtual sun.font.GlyphList.ensureCapacity:(I)V
11: aload 2
iload 3
aload 0
getfield sun.font.GlyphList.chData:[C
iconst_0
aload 0
getfield sun.font.GlyphList.len:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
12: aload 0
aload 1
aload 0
getfield sun.font.GlyphList.len:I
invokevirtual sun.font.GlyphList.mapChars:(Lsun/java2d/loops/FontInfo;I)Z
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 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 final boolean mapChars(sun.java2d.loops.FontInfo, int);
descriptor: (Lsun/java2d/loops/FontInfo;I)Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield sun.java2d.loops.FontInfo.font2D:Lsun/font/Font2D;
invokevirtual sun.font.Font2D.getMapper:()Lsun/font/CharToGlyphMapper;
iload 2
aload 0
getfield sun.font.GlyphList.chData:[C
aload 0
getfield sun.font.GlyphList.glyphData:[I
invokevirtual sun.font.CharToGlyphMapper.charsToGlyphsNS:(I[C[I)Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
getfield sun.java2d.loops.FontInfo.fontStrike:Lsun/font/FontStrike;
aload 0
getfield sun.font.GlyphList.glyphData:[I
aload 0
getfield sun.font.GlyphList.images:[J
iload 2
invokevirtual sun.font.FontStrike.getGlyphImagePtrs:([I[JI)V
3: aload 0
iconst_m1
putfield sun.font.GlyphList.glyphindex:I
4: iconst_1
ireturn
end local 2 end local 1 end local 0 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 start local 1 start local 2 start local 3 start local 4 0: aload 0
fload 3
putfield sun.font.GlyphList.x:F
1: aload 0
fload 4
putfield sun.font.GlyphList.y:F
2: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.lcdRGBOrder:Z
putfield sun.font.GlyphList.lcdRGBOrder:Z
3: aload 0
aload 1
getfield sun.java2d.loops.FontInfo.lcdSubPixPos:Z
putfield sun.font.GlyphList.lcdSubPixPos:Z
4: aload 2
aload 1
invokestatic sun.font.StandardGlyphVector.getStandardGV:(Ljava/awt/font/GlyphVector;Lsun/java2d/loops/FontInfo;)Lsun/font/StandardGlyphVector;
astore 5
start local 5 5: aload 0
aload 5
aload 1
getfield sun.java2d.loops.FontInfo.devTx:[D
invokevirtual sun.font.StandardGlyphVector.needsPositions:([D)Z
putfield sun.font.GlyphList.usePositions:Z
6: aload 0
aload 5
invokevirtual sun.font.StandardGlyphVector.getNumGlyphs:()I
putfield sun.font.GlyphList.len:I
7: aload 0
aload 0
getfield sun.font.GlyphList.len:I
invokevirtual sun.font.GlyphList.ensureCapacity:(I)V
8: aload 0
aload 5
aload 0
getfield sun.font.GlyphList.images:[J
9: aload 0
getfield sun.font.GlyphList.usePositions:Z
ifeq 10
aload 0
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: 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
getfield sun.java2d.loops.FontInfo.devTx:[D
12: invokevirtual sun.font.StandardGlyphVector.setupGlyphImages:([J[F[D)Ljava/lang/Object;
putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
13: aload 0
iconst_m1
putfield sun.font.GlyphList.glyphindex:I
14: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 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 0: aload 0
getfield sun.font.GlyphList.glyphindex:I
iflt 2
1: new java.lang.InternalError
dup
ldc "calling getBounds after setGlyphIndex"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.GlyphList.metrics:[I
ifnonnull 4
3: aload 0
iconst_5
newarray 10
putfield sun.font.GlyphList.metrics:[I
4: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.font.GlyphList.x:F
ldc 0.5
fadd
putfield sun.font.GlyphList.gposx:F
5: aload 0
aload 0
getfield sun.font.GlyphList.y:F
ldc 0.5
fadd
putfield sun.font.GlyphList.gposy:F
6: aload 0
aload 0
getfield sun.font.GlyphList.metrics:[I
invokevirtual sun.font.GlyphList.fillBounds:([I)V
7: aload 0
getfield sun.font.GlyphList.metrics:[I
areturn
end local 0 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 start local 1 0: aload 0
iload 1
putfield sun.font.GlyphList.glyphindex:I
1: aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
lconst_0
lcmp
ifne 8
2: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_0
aload 0
getfield sun.font.GlyphList.gposx:F
f2i
iastore
3: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_1
aload 0
getfield sun.font.GlyphList.gposy:F
f2i
iastore
4: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_2
iconst_0
iastore
5: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_3
iconst_0
iastore
6: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_4
iconst_0
iastore
7: return
8: StackMap locals:
StackMap stack:
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.topLeftXOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
9: fstore 2
start local 2 10: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.topLeftYOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
11: fstore 3
start local 3 12: aload 0
getfield sun.font.GlyphList.usePositions:Z
ifeq 16
13: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_0
aload 0
getfield sun.font.GlyphList.positions:[F
iload 1
iconst_1
ishl
faload
aload 0
getfield sun.font.GlyphList.gposx:F
fadd
fload 2
fadd
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
14: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_1
aload 0
getfield sun.font.GlyphList.positions:[F
iload 1
iconst_1
ishl
iconst_1
iadd
faload
aload 0
getfield sun.font.GlyphList.gposy:F
fadd
fload 3
fadd
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
15: goto 24
16: StackMap locals: float float
StackMap stack:
aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_0
aload 0
getfield sun.font.GlyphList.gposx:F
fload 2
fadd
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
17: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_1
aload 0
getfield sun.font.GlyphList.gposy:F
fload 3
fadd
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
18: aload 0
dup
getfield sun.font.GlyphList.gposx:F
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
19: aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.xAdvanceOffset:I
i2l
ladd
20: invokevirtual sun.misc.Unsafe.getFloat:(J)F
fadd
putfield sun.font.GlyphList.gposx:F
21: aload 0
dup
getfield sun.font.GlyphList.gposy:F
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
22: aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.yAdvanceOffset:I
i2l
ladd
23: invokevirtual sun.misc.Unsafe.getFloat:(J)F
fadd
putfield sun.font.GlyphList.gposy:F
24: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_2
25: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.widthOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
26: iastore
27: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_3
28: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.heightOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
29: iastore
30: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_4
31: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.rowBytesOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
32: iastore
33: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lsun/font/GlyphList;
0 34 1 i I
10 34 2 gx F
12 34 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 0: aload 0
getfield sun.font.GlyphList.metrics:[I
areturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_4
iaload
aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_3
iaload
imul
istore 1
start local 1 1: aload 0
getfield sun.font.GlyphList.graybits:[B
ifnonnull 4
2: aload 0
iload 1
sipush 1024
invokestatic java.lang.Math.max:(II)I
newarray 8
putfield sun.font.GlyphList.graybits:[B
3: goto 6
4: StackMap locals: int
StackMap stack:
iload 1
aload 0
getfield sun.font.GlyphList.graybits:[B
arraylength
if_icmple 6
5: aload 0
iload 1
newarray 8
putfield sun.font.GlyphList.graybits:[B
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.GlyphList.images:[J
aload 0
getfield sun.font.GlyphList.glyphindex:I
laload
lconst_0
lcmp
ifne 8
7: aload 0
getfield sun.font.GlyphList.graybits:[B
areturn
8: StackMap locals:
StackMap stack:
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
aload 0
getfield sun.font.GlyphList.glyphindex:I
laload
9: getstatic sun.font.StrikeCache.pixelDataOffset:I
i2l
ladd
10: invokevirtual sun.misc.Unsafe.getAddress:(J)J
11: lstore 2
start local 2 12: lload 2
lconst_0
lcmp
ifne 14
13: aload 0
getfield sun.font.GlyphList.graybits:[B
areturn
14: StackMap locals: long
StackMap stack:
iconst_0
istore 4
start local 4 15: goto 18
16: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.GlyphList.graybits:[B
iload 4
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 2
iload 4
i2l
ladd
invokevirtual sun.misc.Unsafe.getByte:(J)B
bastore
17: iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
iload 1
if_icmplt 16
end local 4 19: aload 0
getfield sun.font.GlyphList.graybits:[B
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lsun/font/GlyphList;
1 20 1 len I
12 20 2 pixelDataAddress J
15 19 4 i I
public long[] getImages();
descriptor: ()[J
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.GlyphList.images:[J
areturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.usePositions:Z
ireturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.positions:[F
areturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.x:F
freturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.y:F
freturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
areturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.lcdSubPixPos:Z
ireturn
end local 0 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 0: aload 0
getfield sun.font.GlyphList.lcdRGBOrder:Z
ireturn
end local 0 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 0: aload 0
getstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
if_acmpne 6
1: aload 0
getfield sun.font.GlyphList.graybits:[B
ifnull 3
aload 0
getfield sun.font.GlyphList.graybits:[B
arraylength
sipush 8192
if_icmple 3
2: aload 0
aconst_null
putfield sun.font.GlyphList.graybits:[B
3: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.font.GlyphList.usePositions:Z
4: aload 0
aconst_null
putfield sun.font.GlyphList.strikelist:Ljava/lang/Object;
5: iconst_0
putstatic sun.font.GlyphList.inUse:Z
6: StackMap locals:
StackMap stack:
return
end local 0 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 0: aload 0
getfield sun.font.GlyphList.len:I
ireturn
end local 0 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 start local 1 0: getstatic sun.font.StrikeCache.topLeftXOffset:I
istore 2
start local 2 1: getstatic sun.font.StrikeCache.topLeftYOffset:I
istore 3
start local 3 2: getstatic sun.font.StrikeCache.widthOffset:I
istore 4
start local 4 3: getstatic sun.font.StrikeCache.heightOffset:I
istore 5
start local 5 4: getstatic sun.font.StrikeCache.xAdvanceOffset:I
istore 6
start local 6 5: getstatic sun.font.StrikeCache.yAdvanceOffset:I
istore 7
start local 7 6: aload 0
getfield sun.font.GlyphList.len:I
ifne 9
7: aload 1
iconst_0
aload 1
iconst_1
aload 1
iconst_2
aload 1
iconst_3
iconst_0
dup_x2
iastore
dup_x2
iastore
dup_x2
iastore
iastore
8: return
9: StackMap locals: sun.font.GlyphList int[] int int int int int int
StackMap stack:
ldc Infinity
dup
fstore 9
start local 9 10: fstore 8
start local 8 11: ldc -Infinity
dup
fstore 11
start local 11 12: fstore 10
start local 10 13: iconst_0
istore 12
start local 12 14: aload 0
getfield sun.font.GlyphList.x:F
ldc 0.5
fadd
fstore 13
start local 13 15: aload 0
getfield sun.font.GlyphList.y:F
ldc 0.5
fadd
fstore 14
start local 14 16: iconst_0
istore 23
start local 23 17: goto 39
18: 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:
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
lconst_0
lcmp
ifne 20
19: goto 38
20: StackMap locals:
StackMap stack:
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 2
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
fstore 17
start local 17 21: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 3
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
fstore 18
start local 18 22: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 4
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
istore 15
start local 15 23: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 5
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
istore 16
start local 16 24: aload 0
getfield sun.font.GlyphList.usePositions:Z
ifeq 28
25: aload 0
getfield sun.font.GlyphList.positions:[F
iload 12
iinc 12 1
faload
fload 17
fadd
fload 13
fadd
fstore 19
start local 19 26: aload 0
getfield sun.font.GlyphList.positions:[F
iload 12
iinc 12 1
faload
fload 18
fadd
fload 14
fadd
fstore 20
start local 20 27: goto 32
end local 20 end local 19 28: 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
fload 17
fadd
fstore 19
start local 19 29: fload 14
fload 18
fadd
fstore 20
start local 20 30: fload 13
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 6
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
fadd
fstore 13
31: fload 14
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 7
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
fadd
fstore 14
32: 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
iload 15
i2f
fadd
fstore 21
start local 21 33: fload 20
iload 16
i2f
fadd
fstore 22
start local 22 34: fload 8
fload 19
fcmpl
ifle 35
fload 19
fstore 8
35: 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
fload 20
fcmpl
ifle 36
fload 20
fstore 9
36: StackMap locals:
StackMap stack:
fload 10
fload 21
fcmpg
ifge 37
fload 21
fstore 10
37: StackMap locals:
StackMap stack:
fload 11
fload 22
fcmpg
ifge 38
fload 22
fstore 11
end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 38: 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:
iinc 23 1
StackMap locals:
StackMap stack:
39: iload 23
aload 0
getfield sun.font.GlyphList.len:I
if_icmplt 18
end local 23 40: aload 1
iconst_0
fload 8
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
41: aload 1
iconst_1
fload 9
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
42: aload 1
iconst_2
fload 10
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
43: aload 1
iconst_3
fload 11
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
44: return
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Lsun/font/GlyphList;
0 45 1 bounds [I
1 45 2 xOffset I
2 45 3 yOffset I
3 45 4 wOffset I
4 45 5 hOffset I
5 45 6 xAdvOffset I
6 45 7 yAdvOffset I
11 45 8 bx0 F
10 45 9 by0 F
13 45 10 bx1 F
12 45 11 by1 F
14 45 12 posIndex I
15 45 13 glx F
16 45 14 gly F
23 38 15 gw C
24 38 16 gh C
21 38 17 gx F
22 38 18 gy F
26 28 19 gx0 F
29 38 19 gx0 F
27 28 20 gy0 F
30 38 20 gy0 F
33 38 21 gx1 F
34 38 22 gy1 F
17 40 23 i I
MethodParameters:
Name Flags
bounds
}
SourceFile: "GlyphList.java"