Behdad Esfahbod
f800368df3
Remove unused macros
6 years ago
Behdad Esfahbod
19e0091299
Minor
6 years ago
Behdad Esfahbod
37be774af9
Minor
6 years ago
Behdad Esfahbod
e1acff806b
Move hb_vector_t to hb-vector-private.hh
6 years ago
Behdad Esfahbod
be336dadc0
Move some more code around
6 years ago
Behdad Esfahbod
92806ee055
Move null data definitions to hb-static.cc
...
Also remove " " null data for Tag. Just use zeroes.
6 years ago
Behdad Esfahbod
1b4d5a2402
Minor
6 years ago
Behdad Esfahbod
7df7963b46
Make lazy loader deal with OOM
6 years ago
Behdad Esfahbod
30ff8ac865
Rename
6 years ago
Behdad Esfahbod
85ba4a190f
[ot] Comment
6 years ago
Behdad Esfahbod
07afc1a213
[ot] Add misc tables to tables_t
...
Most unused.
6 years ago
Behdad Esfahbod
74b4df2cde
[ot] Move GDEF into tables_t
6 years ago
Behdad Esfahbod
0271c7ab3b
[ot] Move GSUB/GPOS into tables_t
6 years ago
Behdad Esfahbod
f73d2775cf
[ot] More shuffling
...
Misc. table loading now properly automated.
6 years ago
Behdad Esfahbod
52fbd23d86
[ot] Minor
6 years ago
Behdad Esfahbod
6a0a298aab
[ot] Move code around
6 years ago
Behdad Esfahbod
5e718a751e
[ot] Use switch for checking for blacklisted GDEF tables
...
Faster / more compact code.
6 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.
6 years ago
Behdad Esfahbod
c988b11999
Move code around
6 years ago
Behdad Esfahbod
574b37e933
Minor
6 years ago
Behdad Esfahbod
d4d1bf8177
Fix for recent rename
6 years ago
Behdad Esfahbod
91126aa11a
[uniscribe] Update for recent changes
6 years ago
Behdad Esfahbod
66952ec47b
Remove unused table reference
6 years ago
Behdad Esfahbod
443de26fa5
Minor
6 years ago
Behdad Esfahbod
ee35af738b
Make lazy-loader safe for nil objectification
6 years ago
Behdad Esfahbod
6404c49d07
Minor
6 years ago
Behdad Esfahbod
ff7826e90b
Reduce storage by sharing face amongst lazy_loaders
6 years ago
Behdad Esfahbod
bdd3c11a19
Internal templatization of lazy-loaders
6 years ago
Behdad Esfahbod
ed7b2e58fc
Remove OT namespace from hb-machinery-private.hh
6 years ago
Behdad Esfahbod
cb1491f92e
Minor
6 years ago
Behdad Esfahbod
16ccfafbbd
[face] Sprinkle const in the API
6 years ago
Behdad Esfahbod
3d22aefede
Rename
6 years ago
Behdad Esfahbod
1a624c6e06
Add comment re (our only) race condition
6 years ago
Behdad Esfahbod
44d1fb37ef
1.8.5
6 years ago
Behdad Esfahbod
13f4c137c6
[atomic] Fix Solaris ones to add proper barriers
6 years ago
Behdad Esfahbod
19dfaa3515
[atomic] Remove volatile from IBM impl signature
6 years ago
Behdad Esfahbod
2093a3e0cb
[atomic] Oops
6 years ago
Behdad Esfahbod
19b98348ff
[atomic] Use read-barrier for get()
6 years ago
Behdad Esfahbod
006d4f031a
[atomic] Some more minor tweaks
6 years ago
Ebrahim Byagowi
1a7fed6318
Revert "Add a new API, hb_ot_layout_get_feature_name_ids ( #976 )" ( #1121 )
...
This reverts commit 0c1b287b72
.
6 years ago
Behdad Esfahbod
dfc86e4b35
[atomic] Fix cast to fallback ptr_get()
6 years ago
Behdad Esfahbod
7a4d576e81
[gobject] Fix copy/paste error
6 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.
6 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.
6 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.
6 years ago
Behdad Esfahbod
d7a15799d4
[gobject] Hook up hb_map_t
6 years ago
Behdad Esfahbod
63c74e8d1d
[atomic] Fix fallback impl
6 years ago
Behdad Esfahbod
4bc16aca47
[atomic] Add get_relaxed / set_relaxed
...
To help TSan and be more "correct".
6 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.
6 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.
6 years ago