src


Log

Author Commit Date CI Message
Behdad Esfahbod 794fac32 2023-06-29T20:55:52 [glyf] Minor another range for loop
Behdad Esfahbod 0ae16766 2023-06-29T20:38:42 [CompositeGlyph] Minor use a range for loop
Behdad Esfahbod 05c01ad5 2023-06-29T16:49:20 [SimpleGlyph] Minor use a range for loop
Behdad Esfahbod 4123e0c7 2023-06-29T16:27:35 [path-builder] Speed up mid-point calculation
Behdad Esfahbod 73376b24 2023-06-29T16:14:45 [subset/cff1] More error handling
Behdad Esfahbod cc44b3bc 2023-06-29T16:12:10 [subset/cff1] Handle an error condition Fixes https://oss-fuzz.com/testcase-detail/5191907895279616
Behdad Esfahbod fc38c01a 2023-06-29T15:29:15 Minor inline a function
Behdad Esfahbod a520177e 2023-06-29T14:56:05 [gvar] Remove unnecessary initialization
Behdad Esfahbod ca44c38c 2023-06-29T14:41:21 Add HB_ALWAYS_INLINE With MSVC implementation as well.
Behdad Esfahbod 0a00dc0c 2023-06-29T14:17:47 [draw] Add a few unlikely's
Behdad Esfahbod 2d9c3da0 2023-06-29T13:31:11 [draw] Inline more functions
Behdad Esfahbod d26b3ade 2023-06-29T13:25:52 [draw-session] Inline small functions
Behdad Esfahbod 7aba1e6d 2023-06-29T12:44:34 [cache] Minor use a range for loop
Behdad Esfahbod afae537c 2023-06-29T12:42:44 [cache] Minor remove .init() Use constructor.
Behdad Esfahbod c49ca371 2023-06-29T12:38:45 [Glyph] Minor micro-optimize away a function call For when coords are not set.
Behdad Esfahbod 5fb7b02a 2023-06-29T12:28:43 [CompositeGlyph] Minor use range loop
Behdad Esfahbod 20b32b04 2023-06-29T12:08:11 [SimpleGlyph] Micro-optimize phantom_only
Behdad Esfahbod d1660eaf 2023-06-29T11:59:03 [subset/cff] Minor use HB_OPTIMIZE_SIZE_VAL
Behdad Esfahbod 04809ede 2023-06-29T11:58:53 [CompositeGlyph] Micro-optimize translate()
Behdad Esfahbod 229db973 2023-06-29T11:54:10 [CompositeGlyph] Minor use vector::push()
Behdad Esfahbod 75101802 2023-06-29T10:54:49 [CompositeGlyph] Micro-optimize
Behdad Esfahbod e9d74d6b 2023-06-29T10:53:52 [SimpleGlyph] Minor add an unlikely to error condition
Behdad Esfahbod 6abca413 2023-06-29T10:39:49 [path-builder] Micro-optimize No need to initialize these when has_data=false.
Behdad Esfahbod 5703c1c4 2023-06-29T10:35:23 [path-builder] Add a couple of unlikely's
Behdad Esfahbod f5eead04 2023-06-28T15:07:15 [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.
Behdad Esfahbod e42d6df5 2023-06-28T14:25:11 [glyf] Minor refactor a couple of lines and micro-optimize
Behdad Esfahbod c31471d1 2023-06-28T13:51:54 [glyf] Micro-optimize
Behdad Esfahbod 83d75d5e 2023-06-28T13:35:24 [glyf] always_inline consume_point 7% speedup in: BM_Font/draw_glyph/Roboto-Regular.ttf/hb
Behdad Esfahbod 8795cced 2023-06-28T13:29:29 Revert "[SimpleGlyph] Avoid branches in read_points" This reverts commit ba062c713e469f91f57f3c85990f721789ec7c2a.
Behdad Esfahbod ba062c71 2023-06-28T13:24:37 [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.
Behdad Esfahbod 62f5ed46 2023-06-28T12:02:52 [subset/cff] Fix an infinite loop Fixes https://oss-fuzz.com/testcase-detail/5419002026131456
أحمد المحمودي (Ahmed El-Mahmoudy) 10b9ca54 2023-06-28T07:46:33 Fix typo: subtitution -> substitution
Behdad Esfahbod 73a82af1 2023-06-27T17:05:22 [subset/cff] Remove stale wrong code With my recent rewrite of serialize_header, this seems to work now.
Behdad Esfahbod 158eba66 2023-06-27T16:22:54 [subset/cff] Fix compiler error About variable with internal linkage with no definition.
Behdad Esfahbod b0472199 2023-06-27T16:07:54 [subset/cff1] Micro-optimize code Let compiler see whether optional argument is present.
Behdad Esfahbod 1cabb65b 2023-06-27T16:01:17 [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.
Behdad Esfahbod dfaf9cd5 2023-06-27T14:56:32 [subset/cff1] Minor optimize
Behdad Esfahbod 585c8426 2023-06-27T11:28:38 [subset/cff1] Minor micro-optimize
Behdad Esfahbod 00904503 2023-06-27T08:18:18 [config] Graduate avar2 from boring-expansion
Behdad Esfahbod 3edd6cdc 2023-06-27T06:56:00 [vector] Minor micro-optimize shrink_vector The compiler seems to understand this pattern better.
Behdad Esfahbod aed21563 2023-06-26T22:51:50 [subset/cff1] Micro-optimize
Behdad Esfahbod 40a1c08f 2023-06-26T19:03:04 [subset/cff1] Micro-optimize
Behdad Esfahbod bd3e7877 2023-06-26T18:55:39 [subset/cff1] Reuse a function
Behdad Esfahbod ffd23d3a 2023-06-26T18:54:06 [subset/cff1] Micro-optimize Charset serialization
Behdad Esfahbod 452557cd 2023-06-26T18:40:54 Replace a free with hb_free Ouch.
Behdad Esfahbod 1fc128f6 2023-06-26T18:34:27 Replace a few memset/memcpy's with hb_ equivalents
Behdad Esfahbod 2c359635 2023-06-26T18:28:11 [face-builder] Don't zero allocation We overwrite it.
Behdad Esfahbod 347b9448 2023-06-26T18:09:40 [null] Fix getting Crap(hb_bytes_t) Fixes https://oss-fuzz.com/testcase-detail/6187272924692480
Behdad Esfahbod 49c52fa9 2023-06-26T17:55:29 [cmap] Don't zero a few allocations unnecessarily
Behdad Esfahbod e4b2d9c3 2023-06-26T17:52:37 [pool] Don't clear unused memory
Behdad Esfahbod 6129702e 2023-06-26T17:34:54 [subset/cff] Simplify some allocation embedding
Behdad Esfahbod 99db06b4 2023-06-26T17:30:31 [var] Simplify a couple of copy operations
Behdad Esfahbod 73bcd3f2 2023-06-26T17:24:40 [var] Adjust a few allocations to not clean space Since we immediately copy.
Behdad Esfahbod b1e7e8ba 2023-06-26T17:19:45 [algs] Fix return of hb_memset()
Behdad Esfahbod c2bab073 2023-06-26T16:34:53 [subset/cff] Minor optimization
Behdad Esfahbod 570fb4df 2023-06-26T16:26:12 [subset/cff] Add a vector pre-alloc
Behdad Esfahbod e447d394 2023-06-26T16:02:41 [subset/cff1] Micro-optimize
Behdad Esfahbod 50499e9e 2023-06-26T15:32:27 [subset/cff1] Minor use rvalues in a few vector push() places
Behdad Esfahbod e5b3d4b1 2023-06-26T14:24:38 [subset/cff1] Minor use ?:
Behdad Esfahbod 81e2db7c 2023-06-26T14:17:44 [subset/cff1] Speed up plan_subset_charset
Behdad Esfahbod d3f90a8c 2023-06-26T14:02:26 [subset/cff] Use a typedef for glyph_to_sid_map_t
Behdad Esfahbod 6783701b 2023-06-26T12:31:22 [subset] Handle an error condition Fixes https://oss-fuzz.com/testcase-detail/6306810588692480
Behdad Esfahbod 7d3d157d 2023-06-26T12:02:21 [subset/cff] Speed up hb_plan_subset_cff_fdselect
Behdad Esfahbod f79d961a 2023-06-26T11:32:37 [vector] Speedup push()
Behdad Esfahbod b4b80bca 2023-06-26T11:29:32 [subset/cff1] Speed up plan_subset_charset
Behdad Esfahbod 87f1b80d 2023-06-25T23:14:01 [bimap] Write with a map & vector combo Faster for getting keys. Speeds up 10% in: BM_subset/subset_glyphs/RobotoFlex-Variable.ttf/retaingids/10
Behdad Esfahbod e7ad017c 2023-06-25T22:25:24 [subset/cff] Allocate more memory for retain-gids To avoid serializing twice. 20% speedup in: BM_subset/subset_glyphs/SourceSansPro-Regular.otf/retaingids/10
Behdad Esfahbod 30f1ab86 2023-06-25T19:29:03 [subset/cff1] Fix typo
Behdad Esfahbod 7c7db0fc 2023-06-25T19:07:40 [subset/cff1] Minor shuffle code around
Behdad Esfahbod 1e09ebeb 2023-06-25T18:24:42 [subset/cff1] Minor use vector length instead of map population
Behdad Esfahbod 23109dde 2023-06-25T18:21:57 [subset/cff1] Minor use an exact allocation
Behdad Esfahbod 393f0f9f 2023-06-25T18:14:56 [map] Rename resize() to alloc() Better matches the functionality, and hb_vector_t.
Behdad Esfahbod 793f663b 2023-06-25T17:33:57 [vector] Speed up hb_vector_t<hb_array_t<U>>
Behdad Esfahbod 289bad82 2023-06-25T17:26:40 [subset/cff1] Minor use a dagger
Behdad Esfahbod 31d971d1 2023-06-25T17:23:52 [vector] Sprinkle std::addressof
Behdad Esfahbod c03c0a9d 2023-06-25T17:13:59 [subset/cff1] Remove unnecessary remap_sid_t::reset The object is initialized automatically.
Behdad Esfahbod 6ed0d04b 2023-06-25T17:10:36 [subset/cff1] In remap_sid_t::reset(), reset everything Previous code wasn't resetting next=0; tests were passing. It's always called when sidmap is empty. So, redundant, but keeping as is.
Behdad Esfahbod 7e97233c 2023-06-25T17:06:02 [subset/cff1] Comment
Behdad Esfahbod 86a550dc 2023-06-25T17:01:40 [subset/cff1] Speed up string writing
Behdad Esfahbod dc1b1724 2023-06-25T16:35:36 [subset/cff1] Minor reuse a returned value
Behdad Esfahbod 95341bcc 2023-06-25T16:31:54 [subset/cff1] Minor use {} initialization syntax
Behdad Esfahbod be0cec28 2023-06-25T16:01:13 [map] Micro-optimize iteration Make is_real() faster (removes a shift). is_used() gets inlined so is not slowed down by this change.
Behdad Esfahbod 9dbea607 2023-06-25T14:28:02 [subset/cff1] Fix resource leak in error case
David Corbett e310473c 2023-06-24T21:50:58 [use] Allow multiple CMAbv glyphs on subjoined
Behdad Esfahbod d4bbe3f4 2023-06-23T18:13:30 [subset/cff] Reuse a calculate index total data size
Behdad Esfahbod ec0fbf8f 2023-06-23T16:13:13 [subset/ClassDef] Micro-optimize use_class_zero calc Probably never matters.
Behdad Esfahbod b557a841 2023-06-23T15:31:54 [algs] Speed up fasthash for aligned uint64_t
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.