Behdad Esfahbod
a58bbe5408
[set] Use better hash
2 years ago
Behdad Esfahbod
fe3339ea24
[algs] Add hash for 64bit ints
2 years ago
Behdad Esfahbod
33ef96b649
[glyf] Micro-optimize a few hash operations
2 years ago
Behdad Esfahbod
abb92388cc
Revert "[map] Adjust resizing criteria"
...
This reverts commit 1fa4b41531
.
2 years ago
Behdad Esfahbod
1fa4b41531
[map] Adjust resizing criteria
2 years ago
Behdad Esfahbod
f04d08b883
[fasthash] Remove GNU extension
2 years ago
Behdad Esfahbod
99f5050ccd
[algs] Remove HB_NO_PACKED
...
We depend on packed attribute in fasthash now.
2 years ago
Behdad Esfahbod
da619c69c8
[fasthash] Try to fix unaligned access
2 years ago
Behdad Esfahbod
075ecff750
[hash] Work around g++ bug?!
...
I kid you not. Revert this and see src/test-map loop forever
eating your memory freezing your maching.
In this loop:
{
hb_hashmap_t<int, int> m0;
hb_hashmap_t<std::string, int> m1;
hb_hashmap_t<int, std::string> m2;
hb_hashmap_t<std::string, std::string> m3;
std::string s;
for (unsigned i = 1; i < 1000; i++)
{
s += "x";
m0.set (i, i);
m1.set (s, i);
m2.set (i, s);
m3.set (s, s);
}
}
i will not stop at 1000 and just keeps going. If you figure out
what's going on, please enlighten me!
2 years ago
Behdad Esfahbod
9fbab46f26
[cairo] Fix a clang warning
2 years ago
Behdad Esfahbod
e2fd49ff1a
[hash] Comment
2 years ago
Behdad Esfahbod
fa64e42d75
[algs] Adjust int hash
2 years ago
Behdad Esfahbod
078b2a5101
[hash] Use a Mersenne prime for int hash
...
And hope that compiler optimizes to int ops instead of modula.
Improves chaining it seems.
Part of https://github.com/harfbuzz/harfbuzz/pull/4228
2 years ago
Behdad Esfahbod
fe0f7dc57b
[bytes] Use fasthash as hash algorithm
...
Part of https://github.com/harfbuzz/harfbuzz/pull/4228
2 years ago
Rod S
4bbcff2c5c
Help noobs who don't know their segment properties
2 years ago
Behdad Esfahbod
c005e3a2e3
[bytes] Simplify hash function
...
Part of https://github.com/harfbuzz/harfbuzz/issues/4227
2 years ago
Behdad Esfahbod
0e02680803
[hash] Add hash impl for integers
...
Part of https://github.com/harfbuzz/harfbuzz/issues/4227
2 years ago
Behdad Esfahbod
b7a8d23bc8
[map] Micro-optimize for hb_map_t
2 years ago
Behdad Esfahbod
2f05c32c36
[Coverage] Minor access arrayZ directly in a couple places
2 years ago
Behdad Esfahbod
c0e6a96af3
[bit-set] Minor access an array directly
2 years ago
Behdad Esfahbod
f4d3b49e5d
[set] Micro-optimize iteration
2 years ago
Behdad Esfahbod
3416086de3
[set] Optimize is_subset()
2 years ago
Behdad Esfahbod
45afbdff2c
[array] Add a const to a cast
2 years ago
Behdad Esfahbod
4ad443d5ea
[Coverage/ClassDef] Don't call qsort if sorted already
2 years ago
Behdad Esfahbod
3c2a925b7f
[graph] Micro-optimize
2 years ago
Behdad Esfahbod
62bc2841d9
Merge pull request #4221 from googlefonts/user_glyph_map
...
[subset] Add API method to allow a custom glyph map to be specified.
2 years ago
Khaled Hosny
b6516f3bbf
[cff] Fix the case of HB_OT_TAG_cff(1|2) macros
...
Should be upper case like other HB_OT_TAG_* macros of upper case tables.
2 years ago
Behdad Esfahbod
8df5cdbcda
[Coverage/ClassDef] Handle glyphID overflow in serialize
2 years ago
Behdad Esfahbod
6d7de2f8dd
[array] Implement FNV-1a hash function
2 years ago
Behdad Esfahbod
ebdeab8baa
[array] Improve hash function
...
Previously all arrays of 0 bytes were getting same hash.
2 years ago
Behdad Esfahbod
f772071f3e
[subset-plan] Another error check
2 years ago
Behdad Esfahbod
5ec0ccad63
Undef a macro after use
2 years ago
denis rochette
4bb78e3530
Typo in the documentation of hb-ot-math
2 years ago
Behdad Esfahbod
86658df5d2
[ClassDef] Fix a fuzzer issue
...
Don't qsort an array that failed to allocate!
Fixes https://oss-fuzz.com/testcase-detail/6512559172485120
2 years ago
Behdad Esfahbod
cda646a598
[subset-plan] Check success of all object members
2 years ago
Behdad Esfahbod
5f5660fc5d
[subset] In glyf-closure always add current glyph
...
Bad things can happen otherwise if one composite glyph depleted
the op count.
2 years ago
Behdad Esfahbod
5468b08c02
[subset-plan] Move all object members to a new file
...
To automatically check for their errors.
2 years ago
Behdad Esfahbod
71910fdf91
[Coverage] Remove unnecessary check
2 years ago
Behdad Esfahbod
ee9b631d19
[SingleSubst] Fix condition to upgrade to beyond-64k
2 years ago
Garret Rieger
8eb9f31263
[subset] s/Since/XSince/.
2 years ago
Behdad Esfahbod
5d4f3ff690
[TINY] Fix build
2 years ago
Behdad Esfahbod
7e676cb4cf
[config] Add HB_NO_OT_FONT_ADVANCE_CACHE
...
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
2 years ago
Behdad Esfahbod
8831ba7f55
[config] Add HB_NO_OT_FONT_CMAP_CACHE
...
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
2 years ago
Behdad Esfahbod
0e9ebf1062
[config] Add HB_OPTIMIZE_SIZE_MORE and enable in HB_TINY
...
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
2 years ago
Behdad Esfahbod
da175c6935
[config] Add HB_MINIMIZE_MEMORY_USAGE
...
Part of https://github.com/harfbuzz/harfbuzz/issues/4220
2 years ago
Behdad Esfahbod
bbf4cfa393
[config] Add missing HB_NO_BORING_EXPANSION options
...
Those others are only HB_EXPERIMENTAL_API anyway, but still.
2 years ago
Garret Rieger
d339298f37
[subset] fix hb_subset_input_old_to_new_gid_mapping method comment.
2 years ago
Garret Rieger
374a9a9f5e
[subset] restore accidentally removed function doc.
2 years ago
Garret Rieger
3021b2dbe2
[subset] change glyph mapping api to return a mutable map.
...
Maintains consistency with our other set based api methods.
2 years ago
Garret Rieger
d4c1322547
[subset] Add new glyph map method to docs.
2 years ago