Behdad Esfahbod
92806ee055
Move null data definitions to hb-static.cc
...
Also remove " " null data for Tag. Just use zeroes.
7 years ago
Behdad Esfahbod
1b4d5a2402
Minor
7 years ago
Behdad Esfahbod
7df7963b46
Make lazy loader deal with OOM
7 years ago
Behdad Esfahbod
30ff8ac865
Rename
7 years ago
Behdad Esfahbod
85ba4a190f
[ot] Comment
7 years ago
Behdad Esfahbod
07afc1a213
[ot] Add misc tables to tables_t
...
Most unused.
7 years ago
Behdad Esfahbod
74b4df2cde
[ot] Move GDEF into tables_t
7 years ago
Behdad Esfahbod
0271c7ab3b
[ot] Move GSUB/GPOS into tables_t
7 years ago
Behdad Esfahbod
f73d2775cf
[ot] More shuffling
...
Misc. table loading now properly automated.
7 years ago
Behdad Esfahbod
52fbd23d86
[ot] Minor
7 years ago
Behdad Esfahbod
6a0a298aab
[ot] Move code around
7 years ago
Behdad Esfahbod
5e718a751e
[ot] Use switch for checking for blacklisted GDEF tables
...
Faster / more compact code.
7 years ago
Behdad Esfahbod
b5cdf5280d
[ot] In GDEF blacklisting logic, remove the glyph index check for Times
...
Just blacklist based on table sizes like we do for other fonts.
7 years ago
Behdad Esfahbod
c988b11999
Move code around
7 years ago
Behdad Esfahbod
574b37e933
Minor
7 years ago
Behdad Esfahbod
d4d1bf8177
Fix for recent rename
7 years ago
Behdad Esfahbod
91126aa11a
[uniscribe] Update for recent changes
7 years ago
Behdad Esfahbod
66952ec47b
Remove unused table reference
7 years ago
Behdad Esfahbod
443de26fa5
Minor
7 years ago
Behdad Esfahbod
ee35af738b
Make lazy-loader safe for nil objectification
7 years ago
Behdad Esfahbod
6404c49d07
Minor
7 years ago
Behdad Esfahbod
ff7826e90b
Reduce storage by sharing face amongst lazy_loaders
7 years ago
Behdad Esfahbod
bdd3c11a19
Internal templatization of lazy-loaders
7 years ago
Behdad Esfahbod
ed7b2e58fc
Remove OT namespace from hb-machinery-private.hh
7 years ago
Behdad Esfahbod
cb1491f92e
Minor
7 years ago
Behdad Esfahbod
16ccfafbbd
[face] Sprinkle const in the API
7 years ago
Behdad Esfahbod
3d22aefede
Rename
7 years ago
Behdad Esfahbod
1a624c6e06
Add comment re (our only) race condition
7 years ago
Behdad Esfahbod
44d1fb37ef
1.8.5
7 years ago
Behdad Esfahbod
13f4c137c6
[atomic] Fix Solaris ones to add proper barriers
7 years ago
Behdad Esfahbod
19dfaa3515
[atomic] Remove volatile from IBM impl signature
7 years ago
Behdad Esfahbod
2093a3e0cb
[atomic] Oops
7 years ago
Behdad Esfahbod
19b98348ff
[atomic] Use read-barrier for get()
7 years ago
Behdad Esfahbod
006d4f031a
[atomic] Some more minor tweaks
7 years ago
Ebrahim Byagowi
28d03a8afc
[ci] Fix Appveyor bot ( #1123 )
7 years ago
Ebrahim Byagowi
1a7fed6318
Revert "Add a new API, hb_ot_layout_get_feature_name_ids ( #976 )" ( #1121 )
...
This reverts commit 0c1b287b72
.
7 years ago
Behdad Esfahbod
dfc86e4b35
[atomic] Fix cast to fallback ptr_get()
7 years ago
Behdad Esfahbod
7a4d576e81
[gobject] Fix copy/paste error
7 years ago
Behdad Esfahbod
ad27562742
[atomic] On IBM, use light-weight sync for everything
...
lwsync() is a full read/write-barrier. That's all we need, never
need sync(). I'm not sure why an isync() was used in fetch_and_add,
but since that's a read-modify-write, I just changed it to have
lwsync() on both sides.
7 years ago
Behdad Esfahbod
fd638d215f
[atomic] Add XXX items around Solaris ops
...
Since add_int and cas are both read-modify-write, I wonder if we
also need a barrier after them.
7 years ago
Behdad Esfahbod
896ff15ae6
[atomic] Fix get() impl
...
Originally, glib's atomic_get was implemented as "memory_barrier; load".
I copied this into cairo, fontconfig, and harfbuzz. However, that's
wrong. Correct way is "load; memory_barrier". The details are long
and hard to fully grasp. Best to read:
https://www.kernel.org/doc/Documentation/memory-barriers.txt
Also see my report against GNOME:
https://gitlab.gnome.org/GNOME/glib/issues/1449
Note that this is irrelevant if C++11-like atomic ops are available.
7 years ago
Behdad Esfahbod
d7a15799d4
[gobject] Hook up hb_map_t
7 years ago
Behdad Esfahbod
63c74e8d1d
[atomic] Fix fallback impl
7 years ago
Behdad Esfahbod
4bc16aca47
[atomic] Add get_relaxed / set_relaxed
...
To help TSan and be more "correct".
7 years ago
Behdad Esfahbod
3dd1b88765
[atomic] Use CONSUME, not ACQUIRE, memory-order for get()
...
Although, all implementations just elevate that to ACQUIRE.
But requirement for us is just CONSUME.
7 years ago
Behdad Esfahbod
06b91d935d
Revert "[atomic] Make pointer get op relaxed instead of acquire"
...
This reverts commit b1e5650c67
.
After lots of head-scratching and finally finding the only truly
readable source to be the good old:
https://www.kernel.org/doc/Documentation/memory-barriers.txt
I've convinced myself that we need consume memory-ordering on get().
The location of memory-barrier in a load should be after, not before
the load. That needs fixing. I'll do that separately.
7 years ago
Garret Rieger
2bdd903c69
[subset] limit the max codepoint value to the unicode limit.
...
When collecting all codepoints in the cmap avoid using large amount of memory for fonts that declare coverage over all 32 bit integers.
7 years ago
Garret Rieger
7278d9df30
[subset] Add hb_ot_layout_collect_features to harfbuzz-sections.txt.
...
Add the fuzzer test case for feature collection timeout.
7 years ago
Garret Rieger
89733755a4
[subset] use add_array to populate feature_indexes.
...
This is much faster then calling a bunch of individual add()'s.
7 years ago
Garret Rieger
7d92bef9c5
[subset] collect features first, then use those to collect lookups.
7 years ago