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: new sun.font.GlyphList
dup
invokespecial sun.font.GlyphList.<init>:()V
putstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
1: 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 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=3, locals=0, args_size=0
0: 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: getstatic sun.font.GlyphList.reusableGL:Lsun/font/GlyphList;
areturn
2: 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 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 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 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: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.topLeftXOffset:I
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
2: fstore 2
start local 2 3: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.topLeftYOffset:I
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
4: fstore 3
start local 3 5: aload 0
getfield sun.font.GlyphList.usePositions:Z
ifeq 9
6: 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
7: 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
8: goto 17
9: 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
10: 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
11: aload 0
dup
getfield sun.font.GlyphList.gposx:F
getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
12: aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.xAdvanceOffset:I
i2l
ladd
13: invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
fadd
putfield sun.font.GlyphList.gposx:F
14: aload 0
dup
getfield sun.font.GlyphList.gposy:F
getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
15: aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.yAdvanceOffset:I
i2l
ladd
16: invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
fadd
putfield sun.font.GlyphList.gposy:F
17: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_2
18: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.widthOffset:I
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
19: iastore
20: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_3
21: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.heightOffset:I
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
22: iastore
23: aload 0
getfield sun.font.GlyphList.metrics:[I
iconst_4
24: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 1
laload
getstatic sun.font.StrikeCache.rowBytesOffset:I
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
25: iastore
26: return
end local 3 end local 2 end local 1 end local 0 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 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:
getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
aload 0
getfield sun.font.GlyphList.glyphindex:I
laload
7: getstatic sun.font.StrikeCache.pixelDataOffset:I
i2l
ladd
8: invokevirtual jdk.internal.misc.Unsafe.getAddress:(J)J
9: lstore 2
start local 2 10: lload 2
lconst_0
lcmp
ifne 12
11: aload 0
getfield sun.font.GlyphList.graybits:[B
areturn
12: StackMap locals: long
StackMap stack:
iconst_0
istore 4
start local 4 13: goto 16
14: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.GlyphList.graybits:[B
iload 4
getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
lload 2
iload 4
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getByte:(J)B
bastore
15: iinc 4 1
StackMap locals:
StackMap stack:
16: iload 4
iload 1
if_icmplt 14
end local 4 17: 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 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 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: getstatic sun.font.GlyphList.inUse:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
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 37
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:
getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 2
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
fstore 17
start local 17 19: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 3
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
fstore 18
start local 18 20: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 4
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
istore 15
start local 15 21: getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 5
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getChar:(J)C
istore 16
start local 16 22: aload 0
getfield sun.font.GlyphList.usePositions:Z
ifeq 26
23: 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 24: 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 25: goto 30
end local 20 end local 19 26: 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 27: fload 14
fload 18
fadd
fstore 20
start local 20 28: fload 13
getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 6
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
fadd
fstore 13
29: fload 14
getstatic sun.font.StrikeCache.unsafe:Ljdk/internal/misc/Unsafe;
aload 0
getfield sun.font.GlyphList.images:[J
iload 23
laload
iload 7
i2l
ladd
invokevirtual jdk.internal.misc.Unsafe.getFloat:(J)F
fadd
fstore 14
30: 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 31: fload 20
iload 16
i2f
fadd
fstore 22
start local 22 32: fload 8
fload 19
fcmpl
ifle 33
fload 19
fstore 8
33: 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 34
fload 20
fstore 9
34: StackMap locals:
StackMap stack:
fload 10
fload 21
fcmpg
ifge 35
fload 21
fstore 10
35: StackMap locals:
StackMap stack:
fload 11
fload 22
fcmpg
ifge 36
fload 22
fstore 11
36: StackMap locals:
StackMap stack:
iinc 23 1
end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 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
aload 0
getfield sun.font.GlyphList.len:I
if_icmplt 18
end local 23 38: aload 1
iconst_0
fload 8
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
39: aload 1
iconst_1
fload 9
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
40: aload 1
iconst_2
fload 10
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
41: aload 1
iconst_3
fload 11
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
iastore
42: 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 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"