Skip to content

Commit

Permalink
Extract extend codepoints out in seperate array (#713)
Browse files Browse the repository at this point in the history
IsCombining() is a hotpath when rendering the screen.
Most of the time is spent doing bisearch on the word break interval list
to check it characters has the extend property.

Create a seperate table for intervals with the extend property,
so they can just be searched in isCombining().

Also some of the intervals in the word break interval list
were consecutive and could be combined to reduce the
size of the list.

This gives a ~25% performance improvement when running the benchmark
  • Loading branch information
StefanRvO authored Aug 1, 2023
1 parent bb43ce1 commit 4debd4f
Showing 1 changed file with 158 additions and 429 deletions.
Loading

0 comments on commit 4debd4f

Please sign in to comment.