platform/upstream/libHarfBuzzSharp.git
5 years ago[test][aat] Add a test and make macOS runners faster (#1422)
Ebrahim Byagowi [Wed, 28 Nov 2018 16:58:42 +0000 (20:28 +0330)]
[test][aat] Add a test and make macOS runners faster (#1422)

5 years agoMerge pull request #1398 from Adenilson/bigInt01
Behdad Esfahbod [Tue, 27 Nov 2018 22:40:32 +0000 (17:40 -0500)]
Merge pull request #1398 from Adenilson/bigInt01

Optimize harfbuzz big integer conversions

5 years agoComment
Behdad Esfahbod [Tue, 27 Nov 2018 22:40:09 +0000 (17:40 -0500)]
Comment

5 years agoOptimize harfbuzz big integer conversions
Adenilson Cavalcanti [Tue, 20 Nov 2018 22:41:19 +0000 (14:41 -0800)]
Optimize harfbuzz big integer conversions

Profiling showed that type conversions were adding considerable cycles in time
spent doing text shaping.

The idea is to optimize it using native processor instructions to help Blink
layout performance.

Doing further investigation revelead that compilers may not use the
proper instruction on ARM 32bits builds (i.e. REV16).

One way to insure that the generated ASM was ideal for both gcc/clang
was using __builtin_bswap16.

Added bonus is that we no longer need to test for CPU architecture.

5 years ago[ci] Add .codecov.yml
Ebrahim Byagowi [Mon, 26 Nov 2018 15:28:39 +0000 (18:58 +0330)]
[ci] Add .codecov.yml

Similar to https://github.com/GoogleChrome/lighthouse/blob/master/.codecov.yml

No strong preference on commenting, feel free to enable it again

5 years ago[test][aat] Enable Tamil MN test (#1414)
Ebrahim Byagowi [Mon, 26 Nov 2018 13:28:58 +0000 (16:58 +0330)]
[test][aat] Enable Tamil MN test (#1414)

5 years ago[aat] Ignore GSUB table of Muthu Foundry if they have morx table
Behdad Esfahbod [Sun, 25 Nov 2018 21:51:22 +0000 (16:51 -0500)]
[aat] Ignore GSUB table of Muthu Foundry if they have morx table

Fixes https://github.com/harfbuzz/harfbuzz/issues/1410

5 years ago[GDEF] Move more code
Behdad Esfahbod [Sun, 25 Nov 2018 21:38:36 +0000 (16:38 -0500)]
[GDEF] Move more code

5 years ago[GDEF] Move code around
Behdad Esfahbod [Sun, 25 Nov 2018 20:59:18 +0000 (15:59 -0500)]
[GDEF] Move code around

5 years ago[GDEF] Minor
Behdad Esfahbod [Sun, 25 Nov 2018 20:51:01 +0000 (15:51 -0500)]
[GDEF] Minor

5 years ago[test][aat] fix 10.13.6 Helvetica expectation
Ebrahim Byagowi [Sun, 25 Nov 2018 10:07:23 +0000 (13:37 +0330)]
[test][aat] fix 10.13.6 Helvetica expectation

5 years ago[aat] Add m grave test (#1412)
Ebrahim Byagowi [Sun, 25 Nov 2018 09:20:30 +0000 (12:50 +0330)]
[aat] Add m grave test (#1412)

5 years ago[aat] Fix macos expectation
Ebrahim Byagowi [Sun, 25 Nov 2018 07:55:17 +0000 (11:25 +0330)]
[aat] Fix macos expectation

5 years ago[aat.feat] Rework API and implementation
Behdad Esfahbod [Sun, 25 Nov 2018 06:14:40 +0000 (01:14 -0500)]
[aat.feat] Rework API and implementation

Fixes https://github.com/harfbuzz/harfbuzz/pull/1346

5 years ago[aat.feat] Add _MAX_VALUE to enums
Behdad Esfahbod [Sat, 24 Nov 2018 17:08:36 +0000 (12:08 -0500)]
[aat.feat] Add _MAX_VALUE to enums

5 years ago[aat.feat] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 16:02:04 +0000 (11:02 -0500)]
[aat.feat] Minor

5 years ago[aat.feat] Whitespace
Behdad Esfahbod [Sat, 24 Nov 2018 16:00:42 +0000 (11:00 -0500)]
[aat.feat] Whitespace

5 years ago[aat.feat] Port to SortedUnsizedArrayOf.bsearch()
Behdad Esfahbod [Sat, 24 Nov 2018 15:54:40 +0000 (10:54 -0500)]
[aat.feat] Port to SortedUnsizedArrayOf.bsearch()

5 years ago[AAT.feat] Use lsearch for looking up SettingName's
Behdad Esfahbod [Sat, 24 Nov 2018 15:46:56 +0000 (10:46 -0500)]
[AAT.feat] Use lsearch for looking up SettingName's

They are not sorted.

5 years ago[aat] Fix include issues
Behdad Esfahbod [Sat, 24 Nov 2018 15:30:35 +0000 (10:30 -0500)]
[aat] Fix include issues

5 years ago[aat] Move contents of hb-aat.h to hb-aat-layout.h
Behdad Esfahbod [Fri, 23 Nov 2018 19:05:11 +0000 (14:05 -0500)]
[aat] Move contents of hb-aat.h to hb-aat-layout.h

Since it was pages and pages...

5 years ago[aat.feat] Fix enum namespace
Behdad Esfahbod [Fri, 23 Nov 2018 17:23:35 +0000 (12:23 -0500)]
[aat.feat] Fix enum namespace

5 years agoMinor
Behdad Esfahbod [Fri, 23 Nov 2018 17:21:02 +0000 (12:21 -0500)]
Minor

5 years ago[aat] Rename feat API a bit more
Behdad Esfahbod [Fri, 23 Nov 2018 16:57:42 +0000 (11:57 -0500)]
[aat] Rename feat API a bit more

5 years ago[feat] Rename API uses of setting to selector
Ebrahim Byagowi [Fri, 23 Nov 2018 08:35:06 +0000 (12:05 +0330)]
[feat] Rename API uses of setting to selector

5 years ago[feat] Apply renamings and add documentation
Ebrahim Byagowi [Fri, 23 Nov 2018 08:14:53 +0000 (11:44 +0330)]
[feat] Apply renamings and add documentation

5 years ago[feat] Use bsearch
Ebrahim Byagowi [Sat, 17 Nov 2018 10:53:11 +0000 (14:23 +0330)]
[feat] Use bsearch

5 years ago[feat] Address Behdad comments
Ebrahim Byagowi [Sat, 17 Nov 2018 08:00:50 +0000 (11:30 +0330)]
[feat] Address Behdad comments

5 years ago[feat] Address @behdad comments
Ebrahim Byagowi [Fri, 16 Nov 2018 21:37:09 +0000 (01:07 +0330)]
[feat] Address @behdad comments

5 years ago[feat] Complete feature types list
Ebrahim Byagowi [Thu, 8 Nov 2018 21:20:10 +0000 (00:50 +0330)]
[feat] Complete feature types list

5 years ago[feat] Add feature iteration API
Ebrahim Byagowi [Thu, 1 Nov 2018 18:54:42 +0000 (22:24 +0330)]
[feat] Add feature iteration API

5 years ago[feat] Turn AAT feature id into enum
Ebrahim Byagowi [Thu, 1 Nov 2018 18:08:54 +0000 (21:38 +0330)]
[feat] Turn AAT feature id into enum

5 years ago[feat] Rename records to selectors as @drott
Ebrahim Byagowi [Thu, 1 Nov 2018 16:32:57 +0000 (20:02 +0330)]
[feat] Rename records to selectors as @drott

5 years ago[feat] Apply @behdad comments
Ebrahim Byagowi [Thu, 1 Nov 2018 16:26:16 +0000 (19:56 +0330)]
[feat] Apply @behdad comments

5 years ago[feat] Apply @drott and @jfkthame comments
Ebrahim Byagowi [Thu, 1 Nov 2018 15:50:20 +0000 (19:20 +0330)]
[feat] Apply @drott and @jfkthame comments

5 years ago[feat] Apply @jfkthame reviews
Ebrahim Byagowi [Thu, 1 Nov 2018 11:45:56 +0000 (15:15 +0330)]
[feat] Apply @jfkthame reviews

5 years ago[feat] Expose public API
Ebrahim Byagowi [Thu, 1 Nov 2018 09:44:29 +0000 (13:14 +0330)]
[feat] Expose public API

* hb_aat_get_feature_settings

5 years ago[test] Reorder test suites
Behdad Esfahbod [Sun, 25 Nov 2018 05:30:08 +0000 (00:30 -0500)]
[test] Reorder test suites

aots is less interesting.  Run text-rendering-tests before aots.

5 years ago[kerx] Fix crash
Behdad Esfahbod [Sun, 25 Nov 2018 05:27:23 +0000 (00:27 -0500)]
[kerx] Fix crash

5 years agoSimplify sanitize set_object() / fix bots
Behdad Esfahbod [Sun, 25 Nov 2018 05:21:13 +0000 (00:21 -0500)]
Simplify sanitize set_object() / fix bots

5 years ago[kerx] Port to hb_sanitize_with_object_t
Behdad Esfahbod [Sun, 25 Nov 2018 04:49:23 +0000 (23:49 -0500)]
[kerx] Port to hb_sanitize_with_object_t

5 years ago[morx] Port to hb_sanitize_with_object_t
Behdad Esfahbod [Sun, 25 Nov 2018 04:46:15 +0000 (23:46 -0500)]
[morx] Port to hb_sanitize_with_object_t

5 years agoAdd hb_sanitize_with_object_t
Behdad Esfahbod [Sun, 25 Nov 2018 04:38:06 +0000 (23:38 -0500)]
Add hb_sanitize_with_object_t

Context manager.

5 years agoSimplify sanitize set_object()
Behdad Esfahbod [Sun, 25 Nov 2018 04:34:34 +0000 (23:34 -0500)]
Simplify sanitize set_object()

5 years ago[aat] Skip terminator in VarSizedBinSearchArray<>
Behdad Esfahbod [Sun, 25 Nov 2018 04:12:28 +0000 (23:12 -0500)]
[aat] Skip terminator in VarSizedBinSearchArray<>

Fixes shaping with Apple Chancery on 10.13 again.  In that font,
there was a terminator segment, that was tripping off sanitize().

5 years agoMinor
Behdad Esfahbod [Sun, 25 Nov 2018 03:48:34 +0000 (22:48 -0500)]
Minor

5 years ago[debug] Print function in return_trace()
Behdad Esfahbod [Sun, 25 Nov 2018 03:32:17 +0000 (22:32 -0500)]
[debug] Print function in return_trace()

5 years agoRevert "[aat.morx] Remove set_object() business"
Behdad Esfahbod [Sun, 25 Nov 2018 03:16:59 +0000 (22:16 -0500)]
Revert "[aat.morx] Remove set_object() business"

This reverts commit ae8ed58a6e53441d9ccbf67afd8a00b815cde99e.

Apparently this broke Apple Chancery from OS X 10.12 :(.
Investigating...

5 years agoRevert "[aat.kerx] Remove kerx subtable boundary enforcement"
Behdad Esfahbod [Sun, 25 Nov 2018 03:16:53 +0000 (22:16 -0500)]
Revert "[aat.kerx] Remove kerx subtable boundary enforcement"

This reverts commit 15905a2a2998f7ddd964f920a4828602235d6b00.

5 years agoRevert "[sanitize] Remove now-unused set_object() machinery"
Behdad Esfahbod [Sun, 25 Nov 2018 03:16:47 +0000 (22:16 -0500)]
Revert "[sanitize] Remove now-unused set_object() machinery"

This reverts commit bbdb6edb3e1cea4c5b7076c4f6b3e6998ae36dae.

5 years ago[tests] Minor
Behdad Esfahbod [Sun, 25 Nov 2018 03:01:06 +0000 (22:01 -0500)]
[tests] Minor

5 years ago[arrays] Use hb_array_t<> in all places with sub_array()
Behdad Esfahbod [Sun, 25 Nov 2018 02:36:57 +0000 (21:36 -0500)]
[arrays] Use hb_array_t<> in all places with sub_array()

5 years ago[arrays] Merge ArrayOf's sub_array into hb_array_t's
Behdad Esfahbod [Sun, 25 Nov 2018 02:32:00 +0000 (21:32 -0500)]
[arrays] Merge ArrayOf's sub_array into hb_array_t's

5 years ago[test] Add the missed aots fonts
Ebrahim Byagowi [Sat, 24 Nov 2018 22:42:40 +0000 (02:12 +0330)]
[test] Add the missed aots fonts

5 years ago[test] Merge 10.12.6 and 10.13.6 tests, update to Apple Chancery fix
Ebrahim Byagowi [Sat, 24 Nov 2018 22:29:54 +0000 (01:59 +0330)]
[test] Merge 10.12.6 and 10.13.6 tests, update to Apple Chancery fix

5 years ago[sanitize] Remove now-unused set_object() machinery
Behdad Esfahbod [Sat, 24 Nov 2018 22:15:38 +0000 (17:15 -0500)]
[sanitize] Remove now-unused set_object() machinery

5 years ago[aat.kerx] Remove kerx subtable boundary enforcement
Behdad Esfahbod [Sat, 24 Nov 2018 22:14:39 +0000 (17:14 -0500)]
[aat.kerx] Remove kerx subtable boundary enforcement

Have not encountered fonts needing this, but same reasoning as
for morx (see previos commit.)

5 years ago[aat.morx] Remove set_object() business
Behdad Esfahbod [Sat, 24 Nov 2018 22:11:09 +0000 (17:11 -0500)]
[aat.morx] Remove set_object() business

With OS X 10.13 Apple Chancery fails to ligate if we limit each morx
sub-chain to its declared length.  Perhaps their newer compiler does
object-sharing across sub-chains.  Anyway, since that's a valid, if
unspecified, way to compile tables, remove enforcement.

Probably do the same with kern/kerx.

5 years agoAdd 10.13.6 aat fonts tests and bot (#1409)
Ebrahim Byagowi [Sat, 24 Nov 2018 22:09:00 +0000 (01:39 +0330)]
Add 10.13.6 aat fonts tests and bot (#1409)

5 years ago[aat] Add test for recent regression
Behdad Esfahbod [Sat, 24 Nov 2018 20:56:17 +0000 (15:56 -0500)]
[aat] Add test for recent regression

5 years ago[tests] Redo test runner logging a bit
Behdad Esfahbod [Sat, 24 Nov 2018 20:49:33 +0000 (15:49 -0500)]
[tests] Redo test runner logging a  bit

5 years ago[tests] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 20:42:11 +0000 (15:42 -0500)]
[tests] Minor

5 years ago[tests/shaping] Allow comments in test files
Behdad Esfahbod [Sat, 24 Nov 2018 20:37:01 +0000 (15:37 -0500)]
[tests/shaping] Allow comments in test files

Line should start with "# ".

5 years ago[tests] Rename
Behdad Esfahbod [Sat, 24 Nov 2018 20:22:09 +0000 (15:22 -0500)]
[tests] Rename

5 years ago[morx/kerx] Fix sanitize regression
Behdad Esfahbod [Sat, 24 Nov 2018 19:52:34 +0000 (14:52 -0500)]
[morx/kerx] Fix sanitize regression

Broke in 8dcc1913a1670ede7b124f7b5b775d7ab8791386

If sanitizer is left with another object, it wouldn't work.

Better fix coming soon.

5 years ago[test] Enable more of aots tests (#1408)
Ebrahim Byagowi [Sat, 24 Nov 2018 17:19:21 +0000 (20:49 +0330)]
[test] Enable more of aots tests (#1408)

The ones commented out in this change should've be passed :/
a closer look is needed.

5 years agoAdd Adobe AOTS tests (#1395)
Ebrahim Byagowi [Sat, 24 Nov 2018 16:37:24 +0000 (20:07 +0330)]
Add Adobe AOTS tests (#1395)

Annotated OpenType Specification or aots, https://github.com/adobe-type-tools/aots
provides a set of tests for OpenType specification, this change add those tests in addition
to modified version of their HarfBuzz test runner for generating harfbuzz project specific tests.

5 years ago[color] Use SortedUnsizedArrayOf<>
Behdad Esfahbod [Sat, 24 Nov 2018 15:25:10 +0000 (10:25 -0500)]
[color] Use SortedUnsizedArrayOf<>

5 years ago[trak] Coment
Behdad Esfahbod [Sat, 24 Nov 2018 15:17:59 +0000 (10:17 -0500)]
[trak] Coment

5 years ago[arrays] Add not_found to reference bsearch as well
Behdad Esfahbod [Sat, 24 Nov 2018 15:09:17 +0000 (10:09 -0500)]
[arrays] Add not_found to reference bsearch as well

5 years ago[arrays] Improve bfind() interface
Behdad Esfahbod [Sat, 24 Nov 2018 15:06:13 +0000 (10:06 -0500)]
[arrays] Improve bfind() interface

Much more useful now. :)

5 years ago[fuzzing] Add tests for previous commit
Behdad Esfahbod [Sat, 24 Nov 2018 14:49:21 +0000 (09:49 -0500)]
[fuzzing] Add tests for previous commit

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11526
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11522

5 years ago[kerx/morx] Make sure object length is sanitized before accessing it
Behdad Esfahbod [Sat, 24 Nov 2018 14:47:45 +0000 (09:47 -0500)]
[kerx/morx] Make sure object length is sanitized before accessing it

5 years ago[arrays] Port ArrayOf.qsort() and hb_vector_t.qsort() to hb_array_t
Behdad Esfahbod [Sat, 24 Nov 2018 06:59:50 +0000 (01:59 -0500)]
[arrays] Port ArrayOf.qsort() and hb_vector_t.qsort() to hb_array_t

5 years ago[arrays] Port ArrayOf.qsort() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:48:48 +0000 (01:48 -0500)]
[arrays] Port ArrayOf.qsort() to hb_array_t's

5 years ago[arrays] Add copy-constructor to hb_array_t and hb_sorted_array_t
Behdad Esfahbod [Sat, 24 Nov 2018 06:47:49 +0000 (01:47 -0500)]
[arrays] Add copy-constructor to hb_array_t and hb_sorted_array_t

5 years ago[arrays] Port hb_vector_t.qsort() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:45:58 +0000 (01:45 -0500)]
[arrays] Port hb_vector_t.qsort() to hb_array_t's

5 years ago[arrays] Remove one flavor of hb_vector_t.qsort()
Behdad Esfahbod [Sat, 24 Nov 2018 06:42:17 +0000 (01:42 -0500)]
[arrays] Remove one flavor of hb_vector_t.qsort()

5 years ago[arrays] Add (unused) SortedUnsizedArrayOf<>
Behdad Esfahbod [Sat, 24 Nov 2018 06:37:11 +0000 (01:37 -0500)]
[arrays] Add (unused) SortedUnsizedArrayOf<>

5 years ago[arrays] Port SortedArrayOf.bsearch/bfind to hb_sorted_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:31:00 +0000 (01:31 -0500)]
[arrays] Port SortedArrayOf.bsearch/bfind to hb_sorted_array_t's

5 years ago[arrays] Port hb_vector_t.bsearch/bfind to (new) hb_sorted_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:24:48 +0000 (01:24 -0500)]
[arrays] Port hb_vector_t.bsearch/bfind to (new) hb_sorted_array_t's

5 years ago[arrays] Port (unused) ArrayOf.lsearch() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:11:12 +0000 (01:11 -0500)]
[arrays] Port (unused) ArrayOf.lsearch() to hb_array_t's

5 years ago[arrays] Port hb_vector_t.lsearch() to hb_array_t's
Behdad Esfahbod [Sat, 24 Nov 2018 06:09:28 +0000 (01:09 -0500)]
[arrays] Port hb_vector_t.lsearch() to hb_array_t's

5 years ago[arrays] More
Behdad Esfahbod [Sat, 24 Nov 2018 06:07:15 +0000 (01:07 -0500)]
[arrays] More

5 years ago[arrays] Update ArrayOf.lsearch()
Behdad Esfahbod [Sat, 24 Nov 2018 05:58:44 +0000 (00:58 -0500)]
[arrays] Update ArrayOf.lsearch()

Currently unused apparently

5 years ago[arrays] Change argument type of cmp called by hb_vector_t.bsearch()
Behdad Esfahbod [Sat, 24 Nov 2018 05:53:19 +0000 (00:53 -0500)]
[arrays] Change argument type of cmp called by hb_vector_t.bsearch()

Towards consolidating all array bsearch/...

5 years agoUsermanual: clusters chapter; add brief grapheme definition and clarify monotonous...
Nathan Willis [Thu, 15 Nov 2018 23:40:21 +0000 (17:40 -0600)]
Usermanual: clusters chapter; add brief grapheme definition and clarify monotonous cluster handling.

5 years agoUsermanual: clusters chapter, minor updates.
Nathan Willis [Thu, 15 Nov 2018 21:47:03 +0000 (15:47 -0600)]
Usermanual: clusters chapter, minor updates.

5 years agoUsermanual: expand clusters chapter.
Nathan Willis [Mon, 12 Nov 2018 18:17:06 +0000 (12:17 -0600)]
Usermanual: expand clusters chapter.

5 years agoChange ArrayOf.bsearch() return semantics
Behdad Esfahbod [Sat, 24 Nov 2018 05:35:31 +0000 (00:35 -0500)]
Change ArrayOf.bsearch() return semantics

Towards consolidating all array bsearch/...

5 years agoMinor
Behdad Esfahbod [Sat, 24 Nov 2018 05:38:36 +0000 (00:38 -0500)]
Minor

5 years agoWhitespace
Behdad Esfahbod [Sat, 24 Nov 2018 05:45:55 +0000 (00:45 -0500)]
Whitespace

5 years agoAssert that item-type of arrays have static size
Behdad Esfahbod [Sat, 24 Nov 2018 05:31:40 +0000 (00:31 -0500)]
Assert that item-type of arrays have static size

5 years ago[vector] Rename
Behdad Esfahbod [Sat, 24 Nov 2018 05:29:22 +0000 (00:29 -0500)]
[vector] Rename

5 years ago[aat] Minor
Behdad Esfahbod [Sat, 24 Nov 2018 05:27:57 +0000 (00:27 -0500)]
[aat] Minor

5 years agoAdd hb_static_size(T)
Behdad Esfahbod [Sat, 24 Nov 2018 05:25:40 +0000 (00:25 -0500)]
Add hb_static_size(T)

5 years agoAdd template-function convenience macros
Behdad Esfahbod [Sat, 24 Nov 2018 05:22:21 +0000 (00:22 -0500)]
Add template-function convenience macros

5 years agoAdd null bytes for CmapSubtableLongGroup
Behdad Esfahbod [Sat, 24 Nov 2018 00:58:49 +0000 (19:58 -0500)]
Add null bytes for CmapSubtableLongGroup

5 years agoRemove lsearch for small TableDirectorys
Behdad Esfahbod [Fri, 23 Nov 2018 21:24:28 +0000 (16:24 -0500)]
Remove lsearch for small TableDirectorys

5 years ago[arrays] Add as_array() to hb_vector_t<>
Behdad Esfahbod [Fri, 23 Nov 2018 21:07:43 +0000 (16:07 -0500)]
[arrays] Add as_array() to hb_vector_t<>