Behdad Esfahbod
b182e2808a
[bit-set] Don't clear pages when copying set
2022-12-04 12:22:17 -07:00
Behdad Esfahbod
f5307c3ba8
[map] Speed up is_real()
2022-12-04 11:54:16 -07:00
Behdad Esfahbod
301f6e4b47
[Coverage] Remove TODO
2022-12-04 11:46:10 -07:00
Behdad Esfahbod
dbbb8e8006
Revert "[map] Add hb_map_filter_invalid"
...
This reverts commit 8d7e921117
.
Surprisingly this slowed NotoNastaliqUrdu benchmark down by a couple
percent instead of speeding it up.
2022-12-04 11:13:39 -07:00
Behdad Esfahbod
8d7e921117
[map] Add hb_map_filter_invalid
...
Use it in one place.
2022-12-04 11:02:15 -07:00
David Corbett
260df1fa32
[indic] Support <U+0A02, U+0A40>
2022-12-04 10:46:47 -07:00
Behdad Esfahbod
8b533763c0
Use hb_len() instead of .len()
2022-12-03 15:58:12 -07:00
Behdad Esfahbod
e28e2dad03
[VarData] Don't clear memory we are going to fill in completely
2022-12-03 15:56:43 -07:00
Behdad Esfahbod
0e13b4abbc
[VarData] Optimize main loop slightly
2022-12-03 15:50:24 -07:00
Behdad Esfahbod
ad17c0acce
[VarData] Whitespace
2022-12-03 14:56:57 -07:00
Behdad Esfahbod
e7eb445d29
[VarData] Optimize longWord calculation
2022-12-03 14:56:00 -07:00
Behdad Esfahbod
f2c980be29
[VarData] Optimize wordCount calculation
...
6% speedup in RobotoFlex-Variable/900 benchmark.
2022-12-03 14:49:38 -07:00
Behdad Esfahbod
3641b0e01e
[VarData] Optimize serialize()
2022-12-03 14:26:21 -07:00
Behdad Esfahbod
e155f12307
[VarData] Minor save a variable
2022-12-03 14:14:39 -07:00
Behdad Esfahbod
5596a73087
[layout] Speed up ClassDefFormat2 intersects
2022-12-03 13:33:48 -07:00
Behdad Esfahbod
85e7263b38
[VariationStore] Minor access array directly
2022-12-03 13:28:02 -07:00
Behdad Esfahbod
41a8597f38
[layout] Simplify CoverageFormat2 intersects_coverage()
2022-12-03 13:23:26 -07:00
Behdad Esfahbod
1f4d8ccaed
[CoverageFormat2] Optimize intersects()
2022-12-03 13:17:15 -07:00
Behdad Esfahbod
c482b06108
[gpos] Optimize PairPosFormat1::intersects
2022-12-03 13:14:31 -07:00
Behdad Esfahbod
58e9df132f
[Device] Serialize VariationDevice zerocopy
2022-12-03 13:04:00 -07:00
Behdad Esfahbod
071a2bb4f7
[serialize] Support zerocopy while sharing
2022-12-03 13:03:38 -07:00
Behdad Esfahbod
44a5de3a97
[Device] Save a snap/revert
2022-12-03 12:50:32 -07:00
Behdad Esfahbod
93328cedfc
[Device] Save a map get()
2022-12-03 12:49:26 -07:00
Behdad Esfahbod
630b874ae6
[gsubgpos] Add a cache to intersected_class_glyphs
...
30% gain on subset_codepoints/NotoNastaliqUrdu-Regular.ttf/nohinting/1400.
2022-12-03 12:13:15 -07:00
Behdad Esfahbod
c044f4af3e
[gsubgpos] Remove wrong const
2022-12-03 11:58:04 -07:00
Behdad Esfahbod
2680be1f22
[gsubgpos] Don't set unnecessary funcs
2022-12-03 11:54:52 -07:00
Behdad Esfahbod
023f595dec
[cmap] Speed up DefaultUVS::copy even more
...
Another 14% on SourceHanSerifVF/10 benchmark.
2022-12-03 11:18:05 -07:00
Behdad Esfahbod
4ca6105108
[cmap] Remove double-min
2022-12-03 11:15:06 -07:00
Behdad Esfahbod
cd29147e30
[cmap] Minor cast
2022-12-03 10:41:42 -07:00
Behdad Esfahbod
4cdb5cc69b
[cmap] Minor change iterator
2022-12-03 10:40:24 -07:00
Behdad Esfahbod
2cdaedaf54
Use hb_enumerate in more places
2022-12-03 10:16:35 -07:00
Behdad Esfahbod
02bc4dd69b
Use hb_enumerate instead of hand-coding
2022-12-03 10:10:01 -07:00
Behdad Esfahbod
4d19c724c0
[CoverageFormat1] Speed up intersects()
...
Speeds up SourceHanSerif/10000 benchmark (not in test suite) by
32%!
2022-12-03 09:57:29 -07:00
Behdad Esfahbod
a2d33779e1
Fix arm bot build
2022-12-03 09:49:00 -07:00
Behdad Esfahbod
dabbf13d40
[cmap] Speed up DefaultUVS::copy
2022-12-03 09:46:11 -07:00
Qunxin Liu
8eadb83640
[subset] Update hb_subset_input_override_name_table API
...
Override the name string for the NameRecord identified by name_id,
platform_id, encoding_id and language_ids specified by the user.
If a record with specified name_id does not exist, this API will create
a new NameRecord with provided info and insert it to the name table.
2022-12-02 18:05:53 -07:00
Behdad Esfahbod
29903f46b9
[benchmark-subset] Cache (preprocessed) face amongst runs
2022-12-02 18:02:55 -07:00
Behdad Esfahbod
3fb4ea29cd
Merge pull request #3914 from harfbuzz/multimap
...
[multimap] Add a multimap datastructure & use for gid-to-unicodes subset accelerator
2022-12-02 17:08:31 -07:00
Behdad Esfahbod
ddeac3658b
[test-multimap] More tests
2022-12-02 16:51:07 -07:00
Behdad Esfahbod
ff419789ef
[subset-plan] Sort unicode_to_new_gid_list when needed
2022-12-02 16:43:33 -07:00
Behdad Esfahbod
1a40da4ad1
[subset-plan] Use add_array instead of add_sorted_array
...
That vector is not declared as sorted.
2022-12-02 16:13:37 -07:00
Behdad Esfahbod
32e049a315
[subset-plan] Use gid-to-unicodes multimap
...
One test fails. Need investigation.
2022-12-02 16:09:10 -07:00
Behdad Esfahbod
da7961b2e8
.
2022-12-02 16:08:40 -07:00
Behdad Esfahbod
7d6893a803
[subset-accelerator] Cache gid-to-unicodes
2022-12-02 15:50:52 -07:00
Behdad Esfahbod
10c8fc5553
[multimap] Add a multimap datastructure
2022-12-02 15:50:49 -07:00
Behdad Esfahbod
a42fc8ec4a
[subset-accelerator] Adjust in_error()
2022-12-02 15:41:18 -07:00
Behdad Esfahbod
65d9630312
[subset-cff2] Whitespace
2022-12-02 14:59:26 -07:00
Behdad Esfahbod
b33297ee26
[cff2] Remove unused typedef
2022-12-02 14:43:37 -07:00
Behdad Esfahbod
3ade2ffaa5
[serialize] Adjust pop_discard for zerocopy
2022-12-02 14:26:36 -07:00
Behdad Esfahbod
043eeb29a3
[subset-cff] Optimize encode_subrs
...
Don't loop over all original subrs. Just walk over closure subrs.
2022-12-02 13:58:36 -07:00