Behdad Esfahbod
794fac327c
[glyf] Minor another range for loop
2023-06-29 20:56:16 -06:00
Behdad Esfahbod
0ae1676626
[CompositeGlyph] Minor use a range for loop
2023-06-29 20:38:42 -06:00
Behdad Esfahbod
05c01ad5d3
[SimpleGlyph] Minor use a range for loop
2023-06-29 16:49:20 -06:00
Behdad Esfahbod
4123e0c757
[path-builder] Speed up mid-point calculation
2023-06-29 16:27:35 -06:00
Behdad Esfahbod
73376b24cf
[subset/cff1] More error handling
2023-06-29 16:14:45 -06:00
Behdad Esfahbod
cc44b3bce0
[subset/cff1] Handle an error condition
...
Fixes https://oss-fuzz.com/testcase-detail/5191907895279616
2023-06-29 16:13:19 -06:00
Behdad Esfahbod
fc38c01ab0
Minor inline a function
2023-06-29 15:29:15 -06:00
Behdad Esfahbod
a520177e52
[gvar] Remove unnecessary initialization
2023-06-29 14:56:05 -06:00
Behdad Esfahbod
ca44c38c52
Add HB_ALWAYS_INLINE
...
With MSVC implementation as well.
2023-06-29 14:41:21 -06:00
Behdad Esfahbod
0a00dc0c71
[draw] Add a few unlikely's
2023-06-29 14:17:47 -06:00
Behdad Esfahbod
2d9c3da06a
[draw] Inline more functions
2023-06-29 13:31:11 -06:00
Behdad Esfahbod
17f29c8111
[benchmark_font/draw_glyphs] Implement quadratic_to
...
Not interested in the fallback implementation here.
2023-06-29 13:27:09 -06:00
Behdad Esfahbod
d26b3adebe
[draw-session] Inline small functions
2023-06-29 13:25:52 -06:00
Behdad Esfahbod
7aba1e6dd2
[cache] Minor use a range for loop
2023-06-29 12:44:34 -06:00
Behdad Esfahbod
afae537c3c
[cache] Minor remove .init()
...
Use constructor.
2023-06-29 12:42:44 -06:00
Behdad Esfahbod
c49ca37115
[Glyph] Minor micro-optimize away a function call
...
For when coords are not set.
2023-06-29 12:38:45 -06:00
Behdad Esfahbod
5fb7b02ac1
[CompositeGlyph] Minor use range loop
2023-06-29 12:28:43 -06:00
Behdad Esfahbod
20b32b049b
[SimpleGlyph] Micro-optimize phantom_only
2023-06-29 12:08:11 -06:00
Behdad Esfahbod
d1660eaf32
[subset/cff] Minor use HB_OPTIMIZE_SIZE_VAL
2023-06-29 11:59:03 -06:00
Behdad Esfahbod
04809ede8e
[CompositeGlyph] Micro-optimize translate()
2023-06-29 11:58:53 -06:00
Behdad Esfahbod
229db9735e
[CompositeGlyph] Minor use vector::push()
2023-06-29 11:54:10 -06:00
Behdad Esfahbod
75101802a1
[CompositeGlyph] Micro-optimize
2023-06-29 10:54:49 -06:00
Behdad Esfahbod
e9d74d6bb3
[SimpleGlyph] Minor add an unlikely to error condition
2023-06-29 10:53:52 -06:00
Behdad Esfahbod
6abca413ae
[path-builder] Micro-optimize
...
No need to initialize these when has_data=false.
2023-06-29 10:39:49 -06:00
Behdad Esfahbod
5703c1c4ea
[path-builder] Add a couple of unlikely's
2023-06-29 10:35:23 -06:00
Behdad Esfahbod
f5eead04e6
[glyf/gvar] Optimize getting variable phantom points
...
Used when there's no HVAR table and get_h_advance().
I see some 10% speedup with a SourceSerifVariable-Roman with
the HVAR table removed.
2023-06-28 15:07:15 -06:00
Behdad Esfahbod
e42d6df55e
[glyf] Minor refactor a couple of lines and micro-optimize
2023-06-28 14:25:26 -06:00
Behdad Esfahbod
c31471d10e
[glyf] Micro-optimize
2023-06-28 13:51:54 -06:00
Behdad Esfahbod
83d75d5e9b
[glyf] always_inline consume_point
...
7% speedup in:
BM_Font/draw_glyph/Roboto-Regular.ttf/hb
2023-06-28 13:35:24 -06:00
Behdad Esfahbod
8795ccedd6
Revert "[SimpleGlyph] Avoid branches in read_points"
...
This reverts commit ba062c713e
.
2023-06-28 13:29:29 -06:00
Behdad Esfahbod
ba062c713e
[SimpleGlyph] Avoid branches in read_points
...
Calculate total bytes in read_flags and bounds-check once.
This slows things down apparently, so going to revert.
2023-06-28 13:24:37 -06:00
Behdad Esfahbod
62f5ed461e
[subset/cff] Fix an infinite loop
...
Fixes https://oss-fuzz.com/testcase-detail/5419002026131456
2023-06-28 12:04:28 -06:00
Chun-wei Fan
87b573615f
README.python.md: Add some notes for Windows
...
Note that the DLLs for HarfBuzz and its deps must be found %PATH% on Windows so
that pygobject is able to import and use HarfBuzz in Python scripts.
Also note that for Visual Studio builds, it is recommended that Visual Studio
2019 or later is used for the build, possibly in regards with how the
preprocessor handles C++ code when running g-ir-scanner.
2023-06-28 11:37:45 -04:00
أحمد المحمودي (Ahmed El-Mahmoudy)
10b9ca54e1
Fix typo: subtitution -> substitution
2023-06-28 11:36:52 -04:00
Behdad Esfahbod
73a82af1f4
[subset/cff] Remove stale wrong code
...
With my recent rewrite of serialize_header, this seems to
work now.
2023-06-27 17:05:22 -06:00
Behdad Esfahbod
158eba66b3
[subset/cff] Fix compiler error
...
About variable with internal linkage with no definition.
2023-06-27 16:22:54 -06:00
Behdad Esfahbod
b04721993f
[subset/cff1] Micro-optimize code
...
Let compiler see whether optional argument is present.
2023-06-27 16:08:24 -06:00
Behdad Esfahbod
1cabb65b0a
[subset/cff] Micro-optimize CFFIndex::serialize_header
...
Unfortunately hb_array_t::begin/end are faster than its _begin/_end.
As such, a range loop on array itself is faster than range loop on
pipeline starting with array. Rework code to loop on the array always.
2023-06-27 16:01:17 -06:00
Behdad Esfahbod
dfaf9cd54b
[subset/cff1] Minor optimize
2023-06-27 14:56:32 -06:00
Behdad Esfahbod
41f85d0179
[benchmark-font] Add RobotoFlex
...
We didn't have a variable TTF before!
2023-06-27 12:50:04 -06:00
Behdad Esfahbod
585c84268d
[subset/cff1] Minor micro-optimize
2023-06-27 11:28:38 -06:00
Behdad Esfahbod
00904503d8
[config] Graduate avar2 from boring-expansion
2023-06-27 08:18:18 -06:00
Behdad Esfahbod
3edd6cdcd5
[vector] Minor micro-optimize shrink_vector
...
The compiler seems to understand this pattern better.
2023-06-27 07:07:02 -06:00
Behdad Esfahbod
aed215639a
[subset/cff1] Micro-optimize
2023-06-26 22:51:50 -06:00
Behdad Esfahbod
40a1c08f4c
[subset/cff1] Micro-optimize
2023-06-26 19:03:04 -06:00
Behdad Esfahbod
bd3e78770e
[subset/cff1] Reuse a function
2023-06-26 18:55:39 -06:00
Behdad Esfahbod
ffd23d3a31
[subset/cff1] Micro-optimize Charset serialization
2023-06-26 18:54:06 -06:00
Behdad Esfahbod
452557cd18
Replace a free with hb_free
...
Ouch.
2023-06-26 18:40:54 -06:00
Behdad Esfahbod
1fc128f609
Replace a few memset/memcpy's with hb_ equivalents
2023-06-26 18:36:23 -06:00
Behdad Esfahbod
2c359635df
[face-builder] Don't zero allocation
...
We overwrite it.
2023-06-26 18:28:11 -06:00