Behdad Esfahbod
cb09fe7995
[bit-set] Remove a likely()
1 week ago
Behdad Esfahbod
749dc1eee0
[bit-set] Fix may_intersect() logic
1 week ago
Behdad Esfahbod
b30c65e271
Merge pull request #5040 from harfbuzz/aat-set
...
[aat] Speed up subchain skipping using exact sets
1 week ago
Behdad Esfahbod
22a21e81a0
[aat] Fix a crash
1 week ago
Behdad Esfahbod
275fb565bb
[morx] Clean up memory
1 week ago
Behdad Esfahbod
255dadc152
[set] Speed up may_intersect()
1 week ago
Behdad Esfahbod
a617328005
[bit-set] Sprinkle a few .arrayZ around
...
All accesses are valid.
1 week ago
Behdad Esfahbod
7862c7c5e1
Rename a method again
1 week ago
Behdad Esfahbod
474bef1cfd
[aat] Use exact set for buffer intersection versus subchains
1 week ago
Behdad Esfahbod
95eefa38f6
[set] Add a brute-force intersects(other_set)
1 week ago
Behdad Esfahbod
80bbb0b2e9
[set-digest] Rename a method
1 week ago
Behdad Esfahbod
7d17ea4996
Merge pull request #5037 from harfbuzz/face-blob
...
[face] Add fallback implementation to hb_face_reference_blob
1 week ago
Khaled Hosny
a315d43b04
[doc] Update hb_face_reference_blob() and hb_reference_table_func_t
1 week ago
Behdad Esfahbod
5b49ac21fe
Merge pull request #5039 from harfbuzz/lucida
...
[aat] Speed up Lucida Grande among others
1 week ago
Behdad Esfahbod
722ab54868
[kerx] Don't compute buffer digest
...
We don't use it in kerx
1 week ago
Behdad Esfahbod
449c7f2a0d
[aat] Add some tracing
1 week ago
Behdad Esfahbod
3a1d7ee7e8
[aat] Remove the buffer-digest threshold
...
This can help us skip entire subchains, eg. when they are for
different scripts.
Speeds up LucidaGrande with ASCII text by 20%.
1 week ago
Behdad Esfahbod
e1cb3b155a
Revert "[aat] Remove set-digest"
...
This reverts commit 832f199607
.
1 week ago
Behdad Esfahbod
359d163d25
Revert "[aat] Remove buffer-digest stuff"
...
This reverts commit 7642366593
.
1 week ago
Behdad Esfahbod
7d23e642a2
Revert "[aat] Remove dead code"
...
This reverts commit bf36f5c3a4
.
1 week ago
Behdad Esfahbod
d109947672
Revert "[aat] Remove unused macro"
...
This reverts commit 2ddcccd26e
.
1 week ago
Behdad Esfahbod
2ddcccd26e
[aat] Remove unused macro
1 week ago
Behdad Esfahbod
1ff462354b
[morx] Micro-optimize
1 week ago
Khaled Hosny
4825e5e2b4
[face] Add fallback implementation to hb_face_reference_blob
...
If referencing the face blob is not possible (e.g. not implemented by
the font functions), use face builder to create a blob out of
individual table blobs.
Fixes https://github.com/harfbuzz/harfbuzz/issues/5036
2 weeks ago
Behdad Esfahbod
9cf2ea3e8f
Merge branch 'kern-set'
2 weeks ago
Behdad Esfahbod
bf36f5c3a4
[aat] Remove dead code
2 weeks ago
Behdad Esfahbod
7642366593
[aat] Remove buffer-digest stuff
...
With both morx & kerx sped up now using cache / set, this is not
beneficial anymore. Remove it.
2 weeks ago
Behdad Esfahbod
9a4601b06b
[kern/kerx] Use hb-set-t for left/right, to guard bsearch
...
Use a set of all left glyphs participating in kerning, and all
right glyphs participating in kerning, and use these two to weed
out non-kerning pairs before bsearching into the kerns.
Speeds up shaping of HelveticaNeue by ~10%.
2 weeks ago
Behdad Esfahbod
3e50a8dfec
[buffer] Use UINT_MAX instead of wrong macro
2 weeks ago
Behdad Esfahbod
cafbdf4217
Merge pull request #5031 from harfbuzz/aat-speedup
...
[aat] Add a class-cache to the machine & fix speed regression from 2023!
2 weeks ago
Behdad Esfahbod
267ebeeccd
[perf/text] Add a long piece of JS code for benchmarking
2 weeks ago
Behdad Esfahbod
ee4ca63b6d
[aat] Micro-optimize
2 weeks ago
Behdad Esfahbod
ed37725e00
[aat] Micro-optimize get_class
2 weeks ago
dependabot[bot]
be022b3550
Bump actions/setup-python from 5.3.0 to 5.4.0
...
Bumps [actions/setup-python](https://github.com/actions/setup-python ) from 5.3.0 to 5.4.0.
- [Release notes](https://github.com/actions/setup-python/releases )
- [Commits](0b93645e9f...42375524e2
)
---
updated-dependencies:
- dependency-name: actions/setup-python
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2 weeks ago
dependabot[bot]
4291114246
Bump github/codeql-action from 3.28.5 to 3.28.8
...
Bumps [github/codeql-action](https://github.com/github/codeql-action ) from 3.28.5 to 3.28.8.
- [Release notes](https://github.com/github/codeql-action/releases )
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md )
- [Commits](f6091c0113...dd746615b3
)
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2 weeks ago
Behdad Esfahbod
91572945bb
[aat] More delambda
...
Again, this was costly.
2 weeks ago
Behdad Esfahbod
556eb02977
[aat] Remove a lambda
...
This lambda was added to "simplify" the logic. But has a lot of overhead.
2 weeks ago
Behdad Esfahbod
d9a25bc4ee
[aat] Allocate caches together
...
No separate malloc.
2 weeks ago
Behdad Esfahbod
7b44a94a55
[aat] Shrink cache to 256 bytes per subtable
2 weeks ago
Behdad Esfahbod
b89ab7d0fb
[aat] Shrink the class cache to be 512 bytes instead of 1kb
2 weeks ago
Behdad Esfahbod
4fb0ac7728
[aat] Minor simplify
2 weeks ago
Behdad Esfahbod
832f199607
[aat] Remove set-digest
...
Now that we have a class cache, this was just speeding things down.
2 weeks ago
Behdad Esfahbod
0e13e78153
[aat] Add a class-cache to the machine
...
Speeds up Times.ttc benchmark by 20%.
2 weeks ago
dependabot[bot]
3839e5fd59
Bump fonttools from 4.55.6 to 4.55.8 in /.ci
...
Bumps [fonttools](https://github.com/fonttools/fonttools ) from 4.55.6 to 4.55.8.
- [Release notes](https://github.com/fonttools/fonttools/releases )
- [Changelog](https://github.com/fonttools/fonttools/blob/main/NEWS.rst )
- [Commits](https://github.com/fonttools/fonttools/compare/4.55.6...4.55.8 )
---
updated-dependencies:
- dependency-name: fonttools
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2 weeks ago
Tor Arne Vestbø
04b2006fc9
Remove outdated documentation note about CT operating in 96 DPI
...
As extensively discussed and documented in #1484 , Core Text does
not operate in 96 DPI. Core Text doesn't actually have a concept of
DPI internally, as it doesn't rasterize anything by itself, it just
generates vector paths that get passed along to Core Graphics.
In practice this means Core Text operates in the classical macOS
logical DPI of 72, with one typographic point corresponding to one
point in the Core Graphics coordinate system, which for a normal
bitmap context then corresponds to one pixel -- or two pixels for
a "retina" context with a 2x scale transform.
As of f401f85a5a
, we no longer apply
any assumptions in HB about the target DPI being different than the
72 DPI used by CT, for example to account for the Web's standard of
96 DPI, so let's remove the documentation that still indicated this
was necessary.
2 weeks ago
Khaled Hosny
bbb9e56365
[ci] Pin GitHub workflows to Python 3.12 for now
...
Some dependencies seem to fail to install on Python 3.13.
2 weeks ago
Behdad Esfahbod
d8d0987feb
[benchmark-shape] Remove variable-font test set
...
It doesn't really affect shaping much. Kill it.
2 weeks ago
Behdad Esfahbod
138448487e
[aat] Typo
2 weeks ago
Behdad Esfahbod
f5e50890d0
[open-type] Another tweak to cmp()
...
Again, unlikely that compiler cares.
2 weeks ago
Behdad Esfahbod
c68df817a6
[open-type] Minor tweak to cmp()
...
Remove codepath that was never taken.
2 weeks ago