|
fc80d20c
|
2023-06-23T15:21:30
|
|
[serialize] Only hash at most 128 bytes for object_t
Optimization. Shouldn't in reality bring down the hash performance.
Byte objects differ in their early bytes anyway.
|
|
19eb5e3b
|
2023-06-23T15:12:13
|
|
[subset/cff1] Micro-optimize Charset::serialize
|
|
d36b87bd
|
2023-06-23T14:42:21
|
|
[vector] Speed up hb_vector_t<hb_vector_t<U>>::realloc_vector
Use in CFF subsetting.
|
|
b96eed02
|
2023-06-23T14:30:21
|
|
[vector] Speed up vector_t<vector_t<U>>::resize()
Used in CFF subsetting...
|
|
b80b628a
|
2023-06-23T13:41:42
|
|
[subset/cff1] Speed up plan_subset_charset
|
|
1902f6cc
|
2023-06-23T13:21:21
|
|
[map] Inline an accessor function
|
|
43d2ced8
|
2023-06-23T13:16:51
|
|
[map] Minor remove a conditional
|
|
817236dc
|
2023-06-23T13:12:40
|
|
[map] Speed up is_real
|
|
628ffd05
|
2023-06-23T14:43:09
|
|
Merge pull request #4287 from googlefonts/tuple_varstore_compile
[instancer] compile tuple variations
|
|
33507a9c
|
2023-06-23T12:40:35
|
|
[subset/cff] Micro-optimize hb_plan_subset_cff_fdselect
|
|
ecb46f70
|
2023-06-23T12:18:33
|
|
[subset/cff1] Comment
|
|
4332cb33
|
2023-06-23T12:03:42
|
|
[subset] Fix bot failure
|
|
c4b2950d
|
2023-06-23T11:55:39
|
|
[subset/cff1] Use cached subset-accel for seac calculations
Before we were creating a new (non-subset) accel each time.
|
|
b10cff99
|
2023-06-20T13:36:10
|
|
[instancer] address review comments
manage memory through vector when possible
|
|
5f399139
|
2023-06-23T11:22:01
|
|
[subset/cff] Move lazy cff-accelerator to cff-subset-accelerator
Fixes https://github.com/harfbuzz/harfbuzz/issues/4295
|
|
97d63e8d
|
2023-06-23T10:43:34
|
|
[subset/cff] Move serialize to accelerator
|
|
7344411c
|
2023-06-23T10:27:44
|
|
[subset] Sprinkle some HB_NO_SUBSET_CFF
|
|
26f320dc
|
2023-06-23T10:24:32
|
|
[subset/cff] Remove unused method
|
|
43ec78f9
|
2023-06-23T10:22:30
|
|
[subset/cff] Cache CFF accelerator in hb_subset_plan_t
This shows 7% speedup in:
BM_subset/subset_glyphs/SourceHanSans-Regular_subset.otf/retaingids/10
|
|
154aae3a
|
2023-06-22T20:41:16
|
|
[subset] Minor use an auto variable
I need this later. :D
|
|
64e49e0f
|
2023-06-22T20:27:20
|
|
[subset-cff2] Store num_glyphs in plan
Like cff1 code does.
Also, check for .notdef, like cff1 code does.
|
|
f05561dd
|
2023-06-22T20:25:04
|
|
[subset-cff1] Use plan.num_glyphs instead of passing again
|
|
7a124a0b
|
2023-06-22T20:18:20
|
|
[cff1] Use constructor for accelerator_templ_t
|
|
ad025ddf
|
2023-06-22T20:09:36
|
|
[subset-cff] Simplify a bit
|
|
e1753782
|
2023-06-22T19:45:29
|
|
[subset-cff] Handle an error condition
|
|
cb5f4d0c
|
2023-06-22T18:46:33
|
|
[subset-plan] Avoid a copy in freeing name-table-overrides
|
|
d8fba5c6
|
2023-06-22T19:25:54
|
|
[use] Add FM categories to `POST_BASE_FLAGS64`
|
|
6a17622a
|
2023-06-22T18:35:10
|
|
[array] Speed up iteration
These are faster than relying on the random-access methods
(forward, rewind, item_it).
|
|
f839bd11
|
2023-06-22T17:29:57
|
|
[multimap] Use one fewer object
Also fix error-checking to check for sub-object errors.
|
|
280edb90
|
2023-06-22T17:07:31
|
|
[map] Use a variable instead of function for is_trivial
|
|
0aa939e7
|
2023-06-22T17:05:55
|
|
[map] Add a constexpr
|
|
cf386e8c
|
2023-06-22T17:02:10
|
|
[map] Speed up resize()
|
|
abd6c305
|
2023-06-22T16:44:29
|
|
[subset-plan] Micro-optimize
|
|
7b53d2db
|
2023-06-22T16:35:11
|
|
[subset] Avoid copying gid_to_unicode multimap
Construct it in the accelerator directly.
|
|
272e159c
|
2023-06-22T16:31:50
|
|
[subset] Speed up populating reverse cmap
|
|
8f80d9d3
|
2023-06-22T16:22:47
|
|
[subset-accelerator] Avoid a multimap copy
|
|
f55619b8
|
2023-06-20T12:37:05
|
|
[instancer] add subset () for cvar
|
|
e39e0201
|
2023-06-20T11:48:53
|
|
[instancer] add serialize() method for TupleVariationData
|
|
5ef0199d
|
2023-06-20T11:39:20
|
|
[instancer] instantiate() and compile_bytes () for tuple_variations_t
Also add testing code
|
|
48c70ce5
|
2023-06-20T11:30:51
|
|
[instancer] add compile_tuple_var_header()
|
|
6354b71f
|
2023-06-20T11:24:05
|
|
[instancer] add compile_deltas() for tuple_delta_t
|
|
a00ad83a
|
2023-06-20T11:17:11
|
|
[instancer] add encode_delta_run()
|
|
19e5033b
|
2023-06-20T11:02:41
|
|
[instancer] add compile_all_point_sets() and find_shared_points ()
compiled bytes for points set are stored in a hashmap
|
|
065e0af5
|
2023-06-20T10:58:24
|
|
[instancer] add compile_point_set() for tuple_variations_t
Also add a byte_data_t struct to store compiled bytes
|
|
e41b688b
|
2023-06-12T13:25:19
|
|
[instancer] fix bug in tuple varstore decompiling
when points count is 0, it means deltas will apply to all points
|
|
5c2aa1a8
|
2023-06-22T11:02:22
|
|
[syllabic] Add buffer messages for inserting dotted-circle
|
|
f0f6f6a8
|
2023-06-22T10:58:44
|
|
[layout] More message massaging
|
|
7232c01d
|
2023-06-22T09:37:48
|
|
[instancer-solver] add tests for instancer-solver crossing calculation fix
|
|
37555f84
|
2023-06-22T10:21:19
|
|
[layout] Trace chosen script tag
|
|
c56275c0
|
2023-06-21T19:01:46
|
|
[instancer-solver] Notation
|
|
dbac2335
|
2023-06-21T18:54:11
|
|
[instancer-solver] Simplify, from upstream
|
|
32a9ac2e
|
2023-06-21T18:30:31
|
|
[instancer/L4] Add a comment from upstream
|
|
244f3224
|
2023-06-21T17:54:49
|
|
[instancer-solver] Port optimization from upstream
Fixes https://github.com/harfbuzz/harfbuzz/issues/4291
|
|
197bb359
|
2023-06-21T15:16:53
|
|
[instancer-solver] Further simplify
From https://github.com/fonttools/fonttools/pull/3179/commits/94e081611c6b40fa6284049a753479d1038bdb1c
|
|
6788932d
|
2023-06-21T15:16:19
|
|
[instancer-solver] Simplify
From https://github.com/fonttools/fonttools/pull/3179/commits/7385cbbc34080d5ed3e9017eb38945cfb03cfe17
|
|
de0c5aed
|
2023-06-21T15:14:23
|
|
[instancer-solver] Backport bugfix from fonttools
Fixes https://github.com/harfbuzz/harfbuzz/issues/4289
Test not ported yet.
|
|
db700b56
|
2023-06-12T23:38:26
|
|
[subset] fix fuzzer timeout.
Fixes: https://oss-fuzz.com/testcase-detail/6681253479579648. Limits iteration of coverage table during MATH subset to valid glyphs.
|
|
1159b9d3
|
2023-06-10T10:54:32
|
|
[subset/cff1] Remove always-true check
|
|
fad2c4ae
|
2023-06-10T10:22:27
|
|
[subset/cff] Simplify a few serialize calls
|
|
2e6919d5
|
2023-06-10T10:08:56
|
|
[subset/cff2] Error handling
Fixes https://oss-fuzz.com/testcase-detail/4916785942757376
|
|
0935b327
|
2023-06-08T18:47:33
|
|
[vector] Speed up shrink_vector for trivial destructors
|
|
da2e2c8c
|
2023-06-08T17:16:53
|
|
[subset/cff] Speed up offset writing
|
|
c85ca75e
|
2023-06-08T15:57:49
|
|
[buffer-verify] Simplify a couple ifs
|
|
e527c17e
|
2023-06-08T15:56:12
|
|
[buffer-verify] Don't consider shaping failure as error
|
|
cb516075
|
2023-06-08T15:50:53
|
|
[buffer-verify] Error handling
|
|
3669a627
|
2023-06-08T13:26:37
|
|
fix bot
|
|
9fd36766
|
2023-06-08T12:27:36
|
|
[instancer] add testing code for change_tuple_variation_axis_limits()
Also fixed a small bug
|
|
8057661f
|
2023-06-08T12:10:27
|
|
[instancer] use axis tag as hashmap key instead of axis index
This makes remove_axis() and set_tent() faster, which are used by
change_axis_limits ()
|
|
389446c5
|
2023-06-08T09:07:47
|
|
[instancer] add merge_tuple_variations ()
|
|
fea47dd3
|
2023-06-08T15:03:27
|
|
[vector] Fix vector error handling when allocation used to be 0
|
|
11308c4d
|
2023-06-08T14:51:18
|
|
[graph] Remove manual destruction
Happens automatically by destructor.
|
|
dbdeb264
|
2023-06-08T12:08:29
|
|
[vector] Keep allocated size when in error
|
|
9df07c3c
|
2023-06-08T11:46:06
|
|
[gsubgpos] Prevent a leak in closure
If the push wasn't successful we were constructing an
hb_set_t on the Crap data... At least that's my reading
of the code.
|
|
0f0b3bee
|
2023-06-08T11:13:33
|
|
[map] Fix use-after-move issue
|
|
a67a7867
|
2023-06-07T20:24:02
|
|
[cff] Tweak CFFIndex accessors again
Faster; avoiding multiply.
|
|
04c5e46a
|
2023-06-07T19:18:04
|
|
[subset/cff] Fix comment
|
|
8832da83
|
2023-06-07T18:58:52
|
|
[subset/cff] Comment
|
|
092373f3
|
2023-06-07T17:49:13
|
|
[subset/cff] Comment
|
|
e0b60bd0
|
2023-06-07T17:25:47
|
|
[subset/cff1] Speed up remap_sids
|
|
67b16247
|
2023-06-07T16:15:48
|
|
[set] Simplify a few set iterations as range loop
|
|
988e4f06
|
2023-06-07T15:57:47
|
|
[iter] Comment
|
|
0364c69e
|
2023-06-07T15:52:18
|
|
[iter] Add has_fast_len
Set iterators are not random_access, but have fast len().
|
|
2d158922
|
2023-06-07T15:47:08
|
|
[subset/hdmx] Remove an unintended vector copy
|
|
81b2a56d
|
2023-06-07T15:04:20
|
|
[set] Micro-optimize iteration
|
|
ad620af6
|
2023-06-07T14:59:22
|
|
Revert "[iter] Another try at writing some for loops as range loops"
This reverts commit 69c6928289cad871b5b096fbdcd2827fdb80c3ad.
This had code size increase, and slows down non-random-access
iterators since it accesses __end__ which is O(n).
|
|
80d6e996
|
2023-06-07T14:21:40
|
|
[subset/cff1] Fix wrong comma location!
|
|
69c69282
|
2023-06-07T14:11:02
|
|
[iter] Another try at writing some for loops as range loops
|
|
138461be
|
2023-06-07T14:07:39
|
|
[susbet/cff] Minor remove one indirection
|
|
41369b66
|
2023-06-07T14:04:42
|
|
Revert "[subset/cff1] Optimize writing of consecutive names"
This reverts commit 3b25a630403b65eb5608d10c3b8d082a141bd5c8.
Not worth it. Shows 0.5% speedup only on SourceSansPro/retaingids/10
Doesn't have code size increase though.
|
|
3b25a630
|
2023-06-07T14:04:25
|
|
[subset/cff1] Optimize writing of consecutive names
|
|
78082357
|
2023-06-07T12:43:05
|
|
Revert "[iter] Rewrite some loops as range loops"
This reverts commit 7a5242a30f3c41755a095909989221b4d22690ef.
This times out test-set. Obviously broke something (in hb_all
I think). Not bothering to figure out right now.
|
|
7a5242a3
|
2023-06-07T12:36:15
|
|
[iter] Rewrite some loops as range loops
|
|
cc9651d5
|
2023-06-07T12:20:48
|
|
[map] Micro-optimize
|
|
79113ec3
|
2023-06-07T12:14:43
|
|
[subset/cff1] Micro-optimize String writing
|
|
5fe96213
|
2023-06-07T12:05:57
|
|
[subset/cff] Micro-optimize CFFIndex writing
|
|
70b13ef0
|
2023-06-07T11:46:37
|
|
Merge pull request #4267 from googlefonts/decompile_tuple_varstore
[instancer] decompile tuple varstore
|
|
b80b6a4f
|
2023-06-06T18:11:55
|
|
[cff] Remove unused types
|
|
26ac1d4b
|
2023-06-06T18:08:59
|
|
[cff] Remove unused method
|
|
c6ce1f81
|
2023-06-06T17:17:29
|
|
[cff] Micro-optimize CFFIndex::operator[]
|
|
a55d0b88
|
2023-06-06T17:13:09
|
|
[subset/cff] Inline type only used once
|