Behdad Esfahbod
0c1637b606
[aat] Fix HB_NO_OT_LAYOUT build
2 years ago
Behdad Esfahbod
8a8fc37c42
[GDEF] Use a cache for glyph classes
...
Shows 5% speedup for Roboto shaping.
2 years ago
Behdad Esfahbod
323a1fe496
[PairPos] Fix what I broke
2 years ago
Behdad Esfahbod
a6f5f0dc4a
[PairSet] Micro-optimize
2 years ago
Behdad Esfahbod
4e495eb0a7
[PairPos] Add an unlikely
2 years ago
Behdad Esfahbod
5528bdd46f
[PairPos] Remove a likely
2 years ago
Behdad Esfahbod
ae0fe02d13
[Ligature] Use slow path if 2 or fewer ligatures
2 years ago
Behdad Esfahbod
ddd6c2e7a2
[Ligature] Micro-optimize more
2 years ago
Behdad Esfahbod
045ae4b0b5
[GPOS] Micro-optimize
2 years ago
Behdad Esfahbod
0fe90ebc00
[Ligature] Micro-optimize
2 years ago
Behdad Esfahbod
51061d2854
[Ligature] Minor tweak to recent code
2 years ago
Behdad Esfahbod
7881eadffc
[Ligature] Speed up
...
Match the first component of the ligature in the LigatureSet loop.
Speeds up Roboto shaping by 25%. I don't think it breaks anything.
The test suite seems happy.
2 years ago
Behdad Esfahbod
95f155573c
[PairPosFormat2] Micro-optimize and don't kern if class2=0
...
If class2=0 we expect no kerning to happen. Just bail out.
2 years ago
Behdad Esfahbod
5996715436
[PairPos2] Micro-optimize
2 years ago
Behdad Esfahbod
49ac5e11ef
[match_input] Micro-optimize
2 years ago
Behdad Esfahbod
7e7f1d0414
Drop a pair of parantheses from likely/unlikely
...
Such that "if likely(...)" wouldn't compile.
2 years ago
Behdad Esfahbod
db730f46d0
Simplify likely/unlikely
...
This surprisingly saves bytes and speeds up.
2 years ago
Behdad Esfahbod
2f9945ca01
[Glyph] Only treat numContours=-1 as Composite
...
Leave the other negative numbers as empty glyph.
2 years ago
Garret Rieger
db23be642f
[subset] clamp head *Min/*Max values to fit within 16 bit signed int.
...
Fixes fuzzer https://oss-fuzz.com/testcase-detail/4549472192692224 .
2 years ago
Behdad Esfahbod
a8b8eb53c3
[Coverage] Micro-optimize
2 years ago
Behdad Esfahbod
af21ea359c
[Coverage/serialize] Micro-optimize
2 years ago
Behdad Esfahbod
491f2968cd
[gvar] Micro-optimize
...
We don't need the flag in the case of apply_to_all.
2 years ago
Behdad Esfahbod
19d8328b63
[VarComposite] Minor use pad instead of StructAfter
2 years ago
Behdad Esfahbod
1b74cd7c2d
[gvar] Micro-optimize
2 years ago
Behdad Esfahbod
267ecd20c8
[normalize] Micro-optimize
2 years ago
Behdad Esfahbod
577bc8a239
[layout] Micro-optimize
2 years ago
Behdad Esfahbod
5b78e9a924
[layout] Whitespace
2 years ago
Behdad Esfahbod
3f9eb03b40
[graph] Micro-optimize
2 years ago
Behdad Esfahbod
1cbb85dc84
[Glyph] Protect against an underflow
2 years ago
Behdad Esfahbod
c7721f7df5
[Glyph] Reuse variables
2 years ago
Behdad Esfahbod
e826d94afe
Call roundf() instead of _hb_roundf()
...
The former is defined as a macro expanding to the latter.
2 years ago
Behdad Esfahbod
fbffd4e65e
[SimpleGlyph] Handle cubic curves when instancing
2 years ago
Behdad Esfahbod
85a0a12338
[SimpleGlyph] Relax types
2 years ago
Behdad Esfahbod
2e5e566504
[SimpleGlyph] Micro-optimize
2 years ago
Behdad Esfahbod
7b9832deab
[buffer] Whitespace
2 years ago
Behdad Esfahbod
700975f732
[gvar/glyf] Minor save a variable
2 years ago
Behdad Esfahbod
07be0b6878
[VarComposite] Minor micro-optimize
2 years ago
Behdad Esfahbod
ecd0f859bd
[Composite] Minor micro-optimize
2 years ago
Han Seung Min - 한승민
e768754b0f
[buffer] fix `hb_buffer_t::similar` setting `replacement` to `src.invisible`
...
```cpp
void
hb_buffer_t::similar (const hb_buffer_t &src)
{
hb_unicode_funcs_destroy (unicode);
unicode = hb_unicode_funcs_reference (src.unicode);
flags = src.flags;
cluster_level = src.cluster_level;
replacement = src.invisible; // <- this should be src.replacement
invisible = src.invisible;
not_found = src.not_found;
}
```
2 years ago
Behdad Esfahbod
afd432daf5
[VarComposite] Fix an #ifdef check
2 years ago
Behdad Esfahbod
b53f8c25ca
[path-builder] Simplify initialization
2 years ago
Behdad Esfahbod
6a4b87d003
[path-builder] Remove double-initialization
2 years ago
Behdad Esfahbod
4a102effd0
[gvar] Minor always pass cache
...
We now check for access in calculate_scalar(), so no need to
check fof error here.
2 years ago
Behdad Esfahbod
06504cb0a2
[PairPosFormat2] Minor use false instead of 0
2 years ago
Behdad Esfahbod
262f029e20
[algs] Undo touching HACKMEM 169
2 years ago
Behdad Esfahbod
9ed43dc500
[PairPosFormat2] Reuse a value
2 years ago
Behdad Esfahbod
859f7d41cb
[set-digest] Comment
2 years ago
Behdad Esfahbod
bd62a91d03
[algs] 64bit popcount
2 years ago
Behdad Esfahbod
5b0d818128
[Glyph] Add missing break
2 years ago
Behdad Esfahbod
e5dfb6a4b6
[SimpleGlyph] Use hb_memset instead of memset
2 years ago