Commit graph

13359 commits

Author SHA1 Message Date
Kovid Goyal
d8a53fbafd
Retry on temp errors when reading from terminal 2024-02-25 09:57:36 +05:30
Kovid Goyal
b237e1b99f
... 2024-02-25 09:57:36 +05:30
Kovid Goyal
43f64f71e4
DRYer 2024-02-25 09:57:36 +05:30
Kovid Goyal
ceac074dad
Try to print the Apple crash report on test run failure 2024-02-25 09:57:36 +05:30
Kovid Goyal
903dd26a08
Sadly -march=x86-64-v2 is not the culprit for the intermittent SIGILL in macOS CI 2024-02-25 09:57:36 +05:30
Kovid Goyal
f0efb1cb19
Also clear screen at end of each loop when rendering 2024-02-25 09:57:35 +05:30
Kovid Goyal
4eb49b3320
Simplify benchmark kitten
On macOS reading from the same tty device file as we are writing too in
another thread gives continuous EAGAIN errors. We dont actually need
simultaneous read/write, so move the reads to the end.
2024-02-25 09:57:35 +05:30
Kovid Goyal
0fcb055246
tty: retry on temporary read errors 2024-02-25 09:57:35 +05:30
Kovid Goyal
61a89a14b6
Ignore temporary write failures in benchmark kitten 2024-02-25 09:57:35 +05:30
Kovid Goyal
4fbb70d89e
Explain the purpose of the CSI column 2024-02-25 09:57:35 +05:30
Kovid Goyal
5c3e54dede
Note that konsole and xterm dont support synchronized update 2024-02-25 09:57:35 +05:30
Kovid Goyal
5721b1315e
... 2024-02-25 09:57:35 +05:30
Kovid Goyal
85fcac2a61
Add throughput performance numbers 2024-02-25 09:57:35 +05:30
Kovid Goyal
8d01a42db1
Make the default number of repetitions for benchmark 100 2024-02-25 09:57:35 +05:30
Kovid Goyal
0e4c49a0d6
Fix building on macOS ARM 2024-02-25 09:57:35 +05:30
Kovid Goyal
a9111f9a40
Try disabling x86-64-v2 on macOS 2024-02-25 09:57:35 +05:30
Kovid Goyal
616fcfd201
More tests 2024-02-25 09:57:35 +05:30
Kovid Goyal
b3ca5d51fb
Use the new SIMD utf-8 decoder 2024-02-25 09:57:35 +05:30
Kovid Goyal
e783eccc97
fix handling of bits from high byte of 4 byte sequences 2024-02-25 09:57:35 +05:30
Kovid Goyal
c98b9403ac
Dynamically allocated parser state should be 64 byte aligned as well 2024-02-25 09:57:35 +05:30
Kovid Goyal
7e6459a5e4
DRYer 2024-02-25 09:57:35 +05:30
Kovid Goyal
67d22b0ec6
Avoid multiple branches for checking for trailing sequence 2024-02-25 09:57:34 +05:30
Kovid Goyal
79f99bb3ad
Make print_register useable without full debug 2024-02-25 09:57:34 +05:30
Kovid Goyal
fa3579656b
More invalid utf-8 tests 2024-02-25 09:57:34 +05:30
Kovid Goyal
8a10fcaf5a
More tests 2024-02-25 09:57:34 +05:30
Kovid Goyal
4c8b8caead
Handle trailing incomplete sequences 2024-02-25 09:57:34 +05:30
Kovid Goyal
4238fedee7
More tests 2024-02-25 09:57:34 +05:30
Kovid Goyal
b0dcdf74bd
More tests and micro-optimize switch to ASCII fast path 2024-02-25 09:57:34 +05:30
Kovid Goyal
a63d62fb4e
... 2024-02-25 09:57:34 +05:30
Kovid Goyal
8dbb0cff6f
Dont call __builtin_ctz with zero 2024-02-25 09:57:34 +05:30
Kovid Goyal
07bba337f5
fix various bugs in AVX2 utility functions 2024-02-25 09:57:34 +05:30
Kovid Goyal
b28fbf6817
fix zero-ing of last n bytes 2024-02-25 09:57:34 +05:30
Kovid Goyal
daa169b8ed
More work on utf8 SIMD decode 2024-02-25 09:57:34 +05:30
Kovid Goyal
a5251bedc9
More work on SIMD utf8 decode 2024-02-25 09:57:34 +05:30
Kovid Goyal
e9820eb207
zero out bytes beyond src_sz after loading src into the register 2024-02-25 09:57:34 +05:30
Kovid Goyal
645b2811e2
more work on the SIMD utf8 decode 2024-02-25 09:57:34 +05:30
Kovid Goyal
9804021de4
More work on SIMD utf8 decode 2024-02-25 09:57:34 +05:30
Kovid Goyal
ea5858e10b
avoid repeated construction of one, two, tree values vectors 2024-02-25 09:57:33 +05:30
Kovid Goyal
4589a62738
... 2024-02-25 09:57:33 +05:30
Kovid Goyal
1275c9275b
Output the third and final utf8 decoded byte 2024-02-25 09:57:33 +05:30
Kovid Goyal
d95f7ac159
Fix compilation on clang 2024-02-25 09:57:33 +05:30
Kovid Goyal
8e2d448c5c
More work on UTF-8 SIMD decode 2024-02-25 09:57:33 +05:30
Kovid Goyal
37c05e3212
... 2024-02-25 09:57:33 +05:30
Kovid Goyal
99e67f0859
... 2024-02-25 09:57:33 +05:30
Kovid Goyal
2cb87861c0
Ensure cpu is inited before calling cpu_supports() 2024-02-25 09:57:33 +05:30
Kovid Goyal
c1793d8781
Pause rendering per repetition
Needed when number of repetitions is large enough to cause
paused rendering to be aborted
2024-02-25 09:57:33 +05:30
Kovid Goyal
fce896c480
Do not render when benchmarking parser to better isolate parser performance 2024-02-25 09:57:33 +05:30
Kovid Goyal
f45cd87488
Implement paused rendering for graphics 2024-02-25 09:57:33 +05:30
Kovid Goyal
7b963a2372
Allow texture references to outlive parent images
This is needed for paused rendering of images. Use a simple ref counting
scheme.
2024-02-25 09:57:33 +05:30
Kovid Goyal
d863cbd7c0
Ensure selection data is updated on GPU after paused rendering 2024-02-25 09:57:33 +05:30