Log

Author Commit Date CI Message
Xavier Claessens 334bd013 2022-05-30T11:46:08 Skip warning when building as subproject and ragel is missing It is unlikely to be a developer build in that case.
Behdad Esfahbod d11455f2 2022-05-30T06:59:03 [blob] Fix strncpy() use in Mac resource opening code Fixes https://github.com/harfbuzz/harfbuzz/issues/3616
Behdad Esfahbod ea2dd54b 2022-05-26T11:31:28 [map] Place item hash between key and value, not after them This way if only one of key and value is 64bit (eg. pointer), and other is 32bit, the whole item will fit in 128bit, whereas before it would have been bumped up to 196 if only value was 64bit (a common use-case for us.)
Behdad Esfahbod fc5739ea 2022-05-26T11:04:52 [test-map] Whitespace
Behdad Esfahbod ec6cefc4 2022-05-26T11:26:37 [repacker] Simplify map types
Behdad Esfahbod 9eab6d32 2022-05-26T12:00:45 [benchmark-set] Another Pause/Resume
Behdad Esfahbod cbcdf442 2022-05-26T11:20:27 [map] Speed up map's own hash()
Behdad Esfahbod de33ef61 2022-05-26T11:07:21 [map] Add TODO item
Behdad Esfahbod 3e64abd5 2022-05-30T05:52:21 Merge pull request #3613 from harfbuzz/threads-test Threads test
Behdad Esfahbod efa4385b 2022-05-30T05:40:56 Merge pull request #3615 from harfbuzz/gir-freetype [gi] Add freetype2-2.0 for g-i-r includes
Behdad Esfahbod b010962c 2022-05-30T05:34:25 [test/hb-shape-threads] Silence hb_language_get_default() threadysafety issue
Behdad Esfahbod f4a8b700 2022-05-30T05:30:37 More member initialization
Behdad Esfahbod 4e59900f 2022-05-30T05:21:55 [test/hb-shape-threads] Share font amongst threads
Behdad Esfahbod 18b0bd0f 2022-05-30T05:12:12 [test/hb-shape-threads] Verify buffer
Behdad Esfahbod f371789b 2022-05-28T04:02:36 Sprinkle static around
Behdad Esfahbod 4386626e 2022-05-27T17:32:32 [test/threads] Fix dependency
Behdad Esfahbod bf4b11cf 2022-05-27T17:20:36 [configure] Another try at fixing distcheck
Behdad Esfahbod e0544c48 2022-05-27T17:10:07 [test/threads] Fix distcheck
Behdad Esfahbod e3d5a117 2022-05-27T17:05:23 [hb-shape-threads] Fix tsan race
Behdad Esfahbod 33c990f0 2022-05-27T16:57:00 Include cassert to fix bots
Behdad Esfahbod 049af186 2022-05-27T16:53:25 [threads] Add suite to test
Behdad Esfahbod 87453f63 2022-05-27T16:51:12 [hb-shape-threads] Fix current-work-dir so test passes
Behdad Esfahbod f77faf86 2022-05-27T16:34:28 [hb-shape-threads] Allow overriding test parameters from cmdline
Behdad Esfahbod f0fba599 2022-05-27T16:30:19 [hb-shape-threads] Reduce num-iterations
Behdad Esfahbod e8a24363 2022-05-27T16:29:17 [threads] Add a condition_variable to test for all threads to be ready
Behdad Esfahbod 4d42a94c 2022-05-27T16:23:12 [threads] Add hb-shape-threads test
Behdad Esfahbod 484cc187 2022-05-30T05:06:43 [test-shape-threads] Set language
Behdad Esfahbod 315ef83b 2022-05-30T05:09:26 Revert "Revert "[ot-lang] Use atomic int for cache"" This reverts commit c56ce8681c209abd147328142806769752091b1c. The revert was not intentional. Ouch!
Khaled Hosny 34275119 2022-05-30T04:46:02 [gi] Add freetype2-2.0 for g-i-r includes Fixes the warnings: ../src/hb-ft.cc:810: Warning: HarfBuzz: hb_ft_face_create: argument ft_face: Unresolved type: 'FT_Face' ../src/hb-ft.cc:886: Warning: HarfBuzz: hb_ft_face_create_cached: argument ft_face: Unresolved type: 'FT_Face' ../src/hb-ft.cc:855: Warning: HarfBuzz: hb_ft_face_create_referenced: argument ft_face: Unresolved type: 'FT_Face' ../src/hb-ft.cc:920: Warning: HarfBuzz: hb_ft_font_create: argument ft_face: Unresolved type: 'FT_Face' ../src/hb-ft.cc:1029: Warning: HarfBuzz: hb_ft_font_create_referenced: argument ft_face: Unresolved type: 'FT_Face' ../src/hb-ft.cc:240: Warning: HarfBuzz: hb_ft_font_get_face: return value: Unresolved type: 'FT_Face' ../src/hb-ft.cc:262: Warning: HarfBuzz: hb_ft_font_lock_face: return value: Unresolved type: 'FT_Face'
Behdad Esfahbod 97aa1ce6 2022-05-29T10:32:59 [gsubgpos] Move some member initialization
Behdad Esfahbod 0bb4c1f0 2022-05-29T10:23:19 [cache] Set default values for cache template parameters
Behdad Esfahbod 3957d292 2022-05-29T07:30:58 [layout] Remove stale comment
Behdad Esfahbod b6fed6f7 2022-05-29T06:33:34 [set-digest] Minor don't use !! when auto bool conversion happens
Behdad Esfahbod 371e14d9 2022-05-28T13:40:30 Combine uses of map has() then get() with has(.., &..)
Behdad Esfahbod b99efa6c 2022-05-28T05:16:34 [map] Minor: use const reference in has()
Behdad Esfahbod 24d5a11d 2022-05-28T05:14:16 [bimap] Add unlikely and minor optimization in is_empty()
Behdad Esfahbod c56ce868 2022-05-28T04:25:51 Revert "[ot-lang] Use atomic int for cache" This reverts commit d61b2074915cf5f8044dcb8e3dafc04b5b58c6b8.
Behdad Esfahbod 63bc6be0 2022-05-27T08:25:22 Merge pull request #3603 from harfbuzz/font-serial Add font serial API
Behdad Esfahbod e2aa2990 2022-05-27T07:06:02 [set] Use relaxed atomic ops for last_page_index Since iterating a set from multiple threads is supported.
Behdad Esfahbod d61b2074 2022-05-26T18:24:43 [ot-lang] Use atomic int for cache Fixes(?) https://github.com/harfbuzz/harfbuzz/issues/3612
Behdad Esfahbod 67bd147c 2022-05-26T05:16:07 Merge pull request #3610 from googlefonts/subset_create_tables_face [subset] fix subsetting of faces created via hb_face_create_for_tables.
Behdad Esfahbod a719e678 2022-05-24T17:51:24 [ot-font] Use atomic ops for cache serial number This guarantees the cache is coherent.
Behdad Esfahbod 5248b256 2022-05-24T13:55:17 [ot-font/h-advance] Adjust varStore cache condition This gives best performance for short strings, now that we have a h-advance cache as well. The en-words benchmark in particular, now ot-font is faster than ft. Second to last line is of interest: Before: ----------------------------------------------------------------------------------------------------- Benchmark Time CPU Iterations ----------------------------------------------------------------------------------------------------- BM_Shape/en-words.txt/Roboto-Regular.ttf/hb 29.8 ms 29.8 ms 23 BM_Shape/en-words.txt/Roboto-Regular.ttf/ft 30.4 ms 30.4 ms 23 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/hb 16.3 ms 16.3 ms 43 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/ft 16.5 ms 16.5 ms 42 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/var/hb 18.0 ms 18.0 ms 39 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/var/ft 17.8 ms 17.8 ms 39 After: behdad@Behdads-MacBook-Pro harfbuzz % ninja -Cbuild && build/perf/benchmark-shape --benchmark_filter=en-words ----------------------------------------------------------------------------------------------------- Benchmark Time CPU Iterations ----------------------------------------------------------------------------------------------------- BM_Shape/en-words.txt/Roboto-Regular.ttf/hb 30.0 ms 30.0 ms 23 BM_Shape/en-words.txt/Roboto-Regular.ttf/ft 30.3 ms 30.3 ms 23 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/hb 16.3 ms 16.3 ms 43 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/ft 16.4 ms 16.4 ms 43 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/var/hb 17.6 ms 17.6 ms 40 BM_Shape/en-words.txt/SourceSerifVariable-Roman.ttf/var/ft 17.8 ms 17.8 ms 39
Behdad Esfahbod 12fff976 2022-05-24T13:42:25 [ot-var] Use atomic int for cached-serial
Behdad Esfahbod 0919eaa6 2022-05-24T13:07:24 [ot-font] Remove lock around cache Not needed.
Behdad Esfahbod 3548b602 2022-05-23T19:39:52 [ot-font] Cache h-advances for variable fonts
Behdad Esfahbod 39a07bf3 2022-05-23T19:13:05 [ot-font] Rename cache to varStore_cache
Behdad Esfahbod 970e03ec 2022-05-23T19:02:36 [ot-font] Add a hb_ot_font_t struct
Behdad Esfahbod 80c49933 2022-05-23T19:02:27 [hb-ft] Adjust serial signature
Behdad Esfahbod 56e0ff9e 2022-05-20T12:30:46 [ft] If hb_font changed, update FT_Face Fixes https://github.com/harfbuzz/harfbuzz/issues/2270 Rather untested.
Behdad Esfahbod d0de389d 2022-05-20T12:18:43 [font] Fix test
Behdad Esfahbod a2015cd3 2022-05-20T12:15:00 [font] Add a separate serial_coords
Behdad Esfahbod 8629df18 2022-05-20T12:06:22 [ft] Discard advance cache if font changed Uses newly added font serial API. Part of https://github.com/harfbuzz/harfbuzz/issues/2270 But doesn't set new coords on the FT_Face. That's a lot more work :(.
Behdad Esfahbod 48db1c95 2022-05-20T12:03:32 [font] Add serial API New API: + hb_font_get_serial() + hb_font_changed() Fixes https://github.com/harfbuzz/harfbuzz/issues/2426 Unused internally as of now.
Behdad Esfahbod 0fe18692 2022-05-24T17:49:15 [benchmark-set] Pause timing around set copy initialization
Behdad Esfahbod ce5435a8 2022-05-24T16:34:04 [benchmark-set] Remove use of rand() inside benchmark
Behdad Esfahbod efa2a579 2022-05-24T16:24:00 [map] Add hb_map_copy() New API: + hb_map_copy()
Behdad Esfahbod 3b28cff9 2022-05-26T04:42:17 [cff1] Fix null dereference on memory alloc failure
Behdad Esfahbod 8df9aba9 2022-05-26T03:59:21 Actually try to fix null-size undefined behavior Related to: https://github.com/harfbuzz/harfbuzz/pull/2067 https://bugzilla.mozilla.org/show_bug.cgi?id=1577584
Garret Rieger e00c7358 2022-05-25T22:35:23 [subset] special case table presence check for hb_face_create_from_tables faces.
Garret Rieger 6a149a09 2022-05-25T22:22:35 [subset] fix use of lazy static constructor.
Garret Rieger d4c7939e 2022-05-25T22:11:32 [subset] use a list of known tables instead of handled tables.
Garret Rieger 3472f73b 2022-05-25T21:49:12 [subset] also include no subset tables when guessing which tables are present.
Garret Rieger 9564d987 2022-05-25T21:16:37 [subset] fix subsetting of faces created via hb_face_create_for_tables. Fixes #3609.
Behdad Esfahbod 6010feee 2022-05-24T09:00:44 [varStore] Rename variable as per review https://github.com/harfbuzz/harfbuzz/pull/3605
Khaled Hosny 89939c9c 2022-05-24T03:29:23 [ci] Fix fedora-valgrind job Fedora 33 is EOL since 2021-11-30, try the latest Fedora release (36).
Behdad Esfahbod 8a7cfe17 2022-05-23T14:36:06 [perf/benchmark-shape] Test ft font backend as well
Behdad Esfahbod d4733978 2022-05-23T12:24:38 Merge pull request #3605 from harfbuzz/cache-varstore Cache varstore https://github.com/harfbuzz/harfbuzz/pull/3605
Behdad Esfahbod 3eb7eff4 2022-05-21T15:25:53 Remove varstore cache use if HB_NO_VAR
Behdad Esfahbod 099482a3 2022-05-21T15:20:23 [ot-font] Cache v_advance varstore as well
Behdad Esfahbod d9acc045 2022-05-21T14:16:21 [VarStore] Sprinkle cache_t type around It's available so no need to use void*.
Behdad Esfahbod da38312e 2022-05-20T17:32:56 [VarStore] Pepper cache with likely()
Behdad Esfahbod cf8f00e3 2022-05-20T17:14:10 [VarStore] Don't use NAN Is faster. With this, I'm seeing 25 to 28% speedup in glyph_h_advances benchmark of benchmark-font for var/hb tests.
Behdad Esfahbod 5336ba70 2022-05-20T17:03:18 [HVAR] Cache VarStore region scalars
Behdad Esfahbod 880f50f7 2022-05-20T16:50:00 Refactor varstore cache
Behdad Esfahbod f2a2fb91 2022-05-20T16:06:05 [GPOS] Cache VarStore region scalars
Behdad Esfahbod 5fbc70c5 2022-05-20T14:07:27 [VarStore] Add cache API
Behdad Esfahbod e1f4445d 2022-05-21T15:11:53 [benchmark-shape] Allow taking multiple tests from cmdline
Behdad Esfahbod 1bf2d5f8 2022-05-21T14:42:50 [perf/benchmark-shape] Allow taking text-file/font-file args from cmdline
Behdad Esfahbod 852a8f04 2022-05-21T14:31:09 [perf/benchmark-font] Allow benchmarking fonts specified on cmdline
Behdad Esfahbod 05e82aa1 2022-05-20T12:17:31 [ft] Add missing lock to kerning function
Behdad Esfahbod da4b6f15 2022-05-20T17:21:04 [benchmark-shape] Add variable fonts
Behdad Esfahbod 4ea27257 2022-05-20T13:19:27 [set/map] Expose hash API publicly New API: + hb_set_hash() + hb_map_hash()
Behdad Esfahbod 2e186d9f 2022-05-20T13:15:52 [buffer] Improve hash function of segment_properties_t
Khaled Hosny aee123fc 2022-05-20T21:07:25 4.3.0
Behdad Esfahbod 975a5f91 2022-05-20T12:34:49 [array] Use hb_memcmp instead of memcmp Fixes ubsan error.
Behdad Esfahbod 55804e8d 2022-05-20T11:40:44 [hb-ft] Minor rearrange of struct members To make clear what members the lock protects.
Garret Rieger 4e11da05 2022-05-20T01:42:34 [repacker] update repacker test golden file. Changed due to removal of Kahn sorting.
Garret Rieger cbf8f44c 2022-05-19T21:25:21 [subset-perf] swap instead of copying vertice's when reordering during sort.
Garret Rieger b32ca2a2 2022-05-19T20:45:39 [subset-perf] remove sort_kahn from repacker. Without an optimized FIFO queue implementation it's nearly as slow as the now optimized sort_shortest_distance.
Behdad Esfahbod 4266cf3b 2022-05-19T18:15:46 [array] Specialize operator== for bytes_t and ubytes_t
Behdad Esfahbod 6eaa22e9 2022-05-19T18:00:58 [serialize] Reduce link_t size from 16 to 12
Behdad Esfahbod 30ba9a39 2022-05-19T17:34:58 [vector] Add emplacing push implementation
Behdad Esfahbod 25393288 2022-05-19T17:19:21 [test] Fix compiler warning
Garret Rieger 73b8360d 2022-05-19T22:59:51 [subset] fix fuzzer found underflow when heap push fails. Fixes https://oss-fuzz.com/testcase-detail/5148625505746944.
Behdad Esfahbod f1bf14ea 2022-05-19T16:42:35 Revert "[set] Cache hash value" This reverts commit 44952bcc259a906b8875ed62dc40de96ade8b95c. While we investivate https://github.com/harfbuzz/harfbuzz/issues/3599
Behdad Esfahbod b4d1ec31 2022-05-19T16:06:21 [algs] Declare coerce() as constexpr
Behdad Esfahbod 2fdb7616 2022-05-19T16:00:43 [map Further adjust hash function
Behdad Esfahbod 01fc90b6 2022-05-19T16:00:06 [map] Adjust hash function
Behdad Esfahbod a47b0aeb 2022-05-19T15:52:00 [vector] Fix remove() implementation test-vector under valgrind happy now.