src


Log

Author Commit Date CI Message
Behdad Esfahbod 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.
Behdad Esfahbod 19eb5e3b 2023-06-23T15:12:13 [subset/cff1] Micro-optimize Charset::serialize
Behdad Esfahbod d36b87bd 2023-06-23T14:42:21 [vector] Speed up hb_vector_t<hb_vector_t<U>>::realloc_vector Use in CFF subsetting.
Behdad Esfahbod b96eed02 2023-06-23T14:30:21 [vector] Speed up vector_t<vector_t<U>>::resize() Used in CFF subsetting...
Behdad Esfahbod b80b628a 2023-06-23T13:41:42 [subset/cff1] Speed up plan_subset_charset
Behdad Esfahbod 1902f6cc 2023-06-23T13:21:21 [map] Inline an accessor function
Behdad Esfahbod 43d2ced8 2023-06-23T13:16:51 [map] Minor remove a conditional
Behdad Esfahbod 817236dc 2023-06-23T13:12:40 [map] Speed up is_real
Behdad Esfahbod 628ffd05 2023-06-23T14:43:09 Merge pull request #4287 from googlefonts/tuple_varstore_compile [instancer] compile tuple variations
Behdad Esfahbod 33507a9c 2023-06-23T12:40:35 [subset/cff] Micro-optimize hb_plan_subset_cff_fdselect
Behdad Esfahbod ecb46f70 2023-06-23T12:18:33 [subset/cff1] Comment
Behdad Esfahbod 4332cb33 2023-06-23T12:03:42 [subset] Fix bot failure
Behdad Esfahbod 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.
Qunxin Liu b10cff99 2023-06-20T13:36:10 [instancer] address review comments manage memory through vector when possible
Behdad Esfahbod 5f399139 2023-06-23T11:22:01 [subset/cff] Move lazy cff-accelerator to cff-subset-accelerator Fixes https://github.com/harfbuzz/harfbuzz/issues/4295
Behdad Esfahbod 97d63e8d 2023-06-23T10:43:34 [subset/cff] Move serialize to accelerator
Behdad Esfahbod 7344411c 2023-06-23T10:27:44 [subset] Sprinkle some HB_NO_SUBSET_CFF
Behdad Esfahbod 26f320dc 2023-06-23T10:24:32 [subset/cff] Remove unused method
Behdad Esfahbod 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
Behdad Esfahbod 154aae3a 2023-06-22T20:41:16 [subset] Minor use an auto variable I need this later. :D
Behdad Esfahbod 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.
Behdad Esfahbod f05561dd 2023-06-22T20:25:04 [subset-cff1] Use plan.num_glyphs instead of passing again
Behdad Esfahbod 7a124a0b 2023-06-22T20:18:20 [cff1] Use constructor for accelerator_templ_t
Behdad Esfahbod ad025ddf 2023-06-22T20:09:36 [subset-cff] Simplify a bit
Behdad Esfahbod e1753782 2023-06-22T19:45:29 [subset-cff] Handle an error condition
Behdad Esfahbod cb5f4d0c 2023-06-22T18:46:33 [subset-plan] Avoid a copy in freeing name-table-overrides
David Corbett d8fba5c6 2023-06-22T19:25:54 [use] Add FM categories to `POST_BASE_FLAGS64`
Behdad Esfahbod 6a17622a 2023-06-22T18:35:10 [array] Speed up iteration These are faster than relying on the random-access methods (forward, rewind, item_it).
Behdad Esfahbod f839bd11 2023-06-22T17:29:57 [multimap] Use one fewer object Also fix error-checking to check for sub-object errors.
Behdad Esfahbod 280edb90 2023-06-22T17:07:31 [map] Use a variable instead of function for is_trivial
Behdad Esfahbod 0aa939e7 2023-06-22T17:05:55 [map] Add a constexpr
Behdad Esfahbod cf386e8c 2023-06-22T17:02:10 [map] Speed up resize()
Behdad Esfahbod abd6c305 2023-06-22T16:44:29 [subset-plan] Micro-optimize
Behdad Esfahbod 7b53d2db 2023-06-22T16:35:11 [subset] Avoid copying gid_to_unicode multimap Construct it in the accelerator directly.
Behdad Esfahbod 272e159c 2023-06-22T16:31:50 [subset] Speed up populating reverse cmap
Behdad Esfahbod 8f80d9d3 2023-06-22T16:22:47 [subset-accelerator] Avoid a multimap copy
Qunxin Liu f55619b8 2023-06-20T12:37:05 [instancer] add subset () for cvar
Qunxin Liu e39e0201 2023-06-20T11:48:53 [instancer] add serialize() method for TupleVariationData
Qunxin Liu 5ef0199d 2023-06-20T11:39:20 [instancer] instantiate() and compile_bytes () for tuple_variations_t Also add testing code
Qunxin Liu 48c70ce5 2023-06-20T11:30:51 [instancer] add compile_tuple_var_header()
Qunxin Liu 6354b71f 2023-06-20T11:24:05 [instancer] add compile_deltas() for tuple_delta_t
Qunxin Liu a00ad83a 2023-06-20T11:17:11 [instancer] add encode_delta_run()
Qunxin Liu 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
Qunxin Liu 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
Qunxin Liu 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
Behdad Esfahbod 5c2aa1a8 2023-06-22T11:02:22 [syllabic] Add buffer messages for inserting dotted-circle
Behdad Esfahbod f0f6f6a8 2023-06-22T10:58:44 [layout] More message massaging
Qunxin Liu 7232c01d 2023-06-22T09:37:48 [instancer-solver] add tests for instancer-solver crossing calculation fix
Behdad Esfahbod 37555f84 2023-06-22T10:21:19 [layout] Trace chosen script tag
Behdad Esfahbod c56275c0 2023-06-21T19:01:46 [instancer-solver] Notation
Behdad Esfahbod dbac2335 2023-06-21T18:54:11 [instancer-solver] Simplify, from upstream
Behdad Esfahbod 32a9ac2e 2023-06-21T18:30:31 [instancer/L4] Add a comment from upstream
Behdad Esfahbod 244f3224 2023-06-21T17:54:49 [instancer-solver] Port optimization from upstream Fixes https://github.com/harfbuzz/harfbuzz/issues/4291
Behdad Esfahbod 197bb359 2023-06-21T15:16:53 [instancer-solver] Further simplify From https://github.com/fonttools/fonttools/pull/3179/commits/94e081611c6b40fa6284049a753479d1038bdb1c
Behdad Esfahbod 6788932d 2023-06-21T15:16:19 [instancer-solver] Simplify From https://github.com/fonttools/fonttools/pull/3179/commits/7385cbbc34080d5ed3e9017eb38945cfb03cfe17
Behdad Esfahbod de0c5aed 2023-06-21T15:14:23 [instancer-solver] Backport bugfix from fonttools Fixes https://github.com/harfbuzz/harfbuzz/issues/4289 Test not ported yet.
Garret Rieger 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.
Behdad Esfahbod 1159b9d3 2023-06-10T10:54:32 [subset/cff1] Remove always-true check
Behdad Esfahbod fad2c4ae 2023-06-10T10:22:27 [subset/cff] Simplify a few serialize calls
Behdad Esfahbod 2e6919d5 2023-06-10T10:08:56 [subset/cff2] Error handling Fixes https://oss-fuzz.com/testcase-detail/4916785942757376
Behdad Esfahbod 0935b327 2023-06-08T18:47:33 [vector] Speed up shrink_vector for trivial destructors
Behdad Esfahbod da2e2c8c 2023-06-08T17:16:53 [subset/cff] Speed up offset writing
Behdad Esfahbod c85ca75e 2023-06-08T15:57:49 [buffer-verify] Simplify a couple ifs
Behdad Esfahbod e527c17e 2023-06-08T15:56:12 [buffer-verify] Don't consider shaping failure as error
Behdad Esfahbod cb516075 2023-06-08T15:50:53 [buffer-verify] Error handling
Qunxin Liu 3669a627 2023-06-08T13:26:37 fix bot
Qunxin Liu 9fd36766 2023-06-08T12:27:36 [instancer] add testing code for change_tuple_variation_axis_limits() Also fixed a small bug
Qunxin Liu 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 ()
Qunxin Liu 389446c5 2023-06-08T09:07:47 [instancer] add merge_tuple_variations ()
Behdad Esfahbod fea47dd3 2023-06-08T15:03:27 [vector] Fix vector error handling when allocation used to be 0
Behdad Esfahbod 11308c4d 2023-06-08T14:51:18 [graph] Remove manual destruction Happens automatically by destructor.
Behdad Esfahbod dbdeb264 2023-06-08T12:08:29 [vector] Keep allocated size when in error
Behdad Esfahbod 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.
Behdad Esfahbod 0f0b3bee 2023-06-08T11:13:33 [map] Fix use-after-move issue
Behdad Esfahbod a67a7867 2023-06-07T20:24:02 [cff] Tweak CFFIndex accessors again Faster; avoiding multiply.
Behdad Esfahbod 04c5e46a 2023-06-07T19:18:04 [subset/cff] Fix comment
Behdad Esfahbod 8832da83 2023-06-07T18:58:52 [subset/cff] Comment
Behdad Esfahbod 092373f3 2023-06-07T17:49:13 [subset/cff] Comment
Behdad Esfahbod e0b60bd0 2023-06-07T17:25:47 [subset/cff1] Speed up remap_sids
Behdad Esfahbod 67b16247 2023-06-07T16:15:48 [set] Simplify a few set iterations as range loop
Behdad Esfahbod 988e4f06 2023-06-07T15:57:47 [iter] Comment
Behdad Esfahbod 0364c69e 2023-06-07T15:52:18 [iter] Add has_fast_len Set iterators are not random_access, but have fast len().
Behdad Esfahbod 2d158922 2023-06-07T15:47:08 [subset/hdmx] Remove an unintended vector copy
Behdad Esfahbod 81b2a56d 2023-06-07T15:04:20 [set] Micro-optimize iteration
Behdad Esfahbod 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).
Behdad Esfahbod 80d6e996 2023-06-07T14:21:40 [subset/cff1] Fix wrong comma location!
Behdad Esfahbod 69c69282 2023-06-07T14:11:02 [iter] Another try at writing some for loops as range loops
Behdad Esfahbod 138461be 2023-06-07T14:07:39 [susbet/cff] Minor remove one indirection
Behdad Esfahbod 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.
Behdad Esfahbod 3b25a630 2023-06-07T14:04:25 [subset/cff1] Optimize writing of consecutive names
Behdad Esfahbod 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.
Behdad Esfahbod 7a5242a3 2023-06-07T12:36:15 [iter] Rewrite some loops as range loops
Behdad Esfahbod cc9651d5 2023-06-07T12:20:48 [map] Micro-optimize
Behdad Esfahbod 79113ec3 2023-06-07T12:14:43 [subset/cff1] Micro-optimize String writing
Behdad Esfahbod 5fe96213 2023-06-07T12:05:57 [subset/cff] Micro-optimize CFFIndex writing
Behdad Esfahbod 70b13ef0 2023-06-07T11:46:37 Merge pull request #4267 from googlefonts/decompile_tuple_varstore [instancer] decompile tuple varstore
Behdad Esfahbod b80b6a4f 2023-06-06T18:11:55 [cff] Remove unused types
Behdad Esfahbod 26ac1d4b 2023-06-06T18:08:59 [cff] Remove unused method
Behdad Esfahbod c6ce1f81 2023-06-06T17:17:29 [cff] Micro-optimize CFFIndex::operator[]
Behdad Esfahbod a55d0b88 2023-06-06T17:13:09 [subset/cff] Inline type only used once