Commit Graph

13320 Commits

Author SHA1 Message Date
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
Kovid Goyal
e50447c840 Fix cursor rendering during rendering pause 2024-02-25 09:57:33 +05:30
Kovid Goyal
ab919f6fa1 fix copy onto incorrect buffer 2024-02-25 09:57:33 +05:30
Kovid Goyal
f596351bc1 Pause selection rendering 2024-02-25 09:57:33 +05:30
Kovid Goyal
7c5e011fe6 No need to pass Screen to iteration_data() 2024-02-25 09:57:32 +05:30
Kovid Goyal
b444b2ee36 Implement paused rendering for cell data 2024-02-25 09:57:32 +05:30
Kovid Goyal
aeb60edf55 Freeze inverted status during paused rendering 2024-02-25 09:57:32 +05:30
Kovid Goyal
6c2ef90033 Add some const for functions taking ColorProfile 2024-02-25 09:57:32 +05:30
Kovid Goyal
182b0aac98 Freeze the color profile during paused rendering 2024-02-25 09:57:32 +05:30
Kovid Goyal
d9d6bd7ffb ... 2024-02-25 09:57:32 +05:30
Kovid Goyal
21bba05805 Turn off paused rendering on reset, resize and scrollback scroll 2024-02-25 09:57:32 +05:30
Kovid Goyal
b146e9c457 Add basic parser tests for pending mode activation/de-activation 2024-02-25 09:57:32 +05:30
Kovid Goyal
1f835b27c4 start work on implementing pending mode as paused rendering 2024-02-25 09:57:32 +05:30
Kovid Goyal
89debca4af Ensure leftover bytes are a copy 2024-02-25 09:57:32 +05:30
Kovid Goyal
a33b747de5 Fix find_in_memoryview() 2024-02-25 09:57:32 +05:30
Kovid Goyal
532cc44e66 Ensure screen is always set when calling parse_sgr 2024-02-25 09:57:32 +05:30
Kovid Goyal
391a43d967 Store last cursor render pos in the rendered info struct 2024-02-25 09:57:32 +05:30
Kovid Goyal
be37a283d5 Move unfocused ender bool into cursor render info 2024-02-25 09:57:32 +05:30
Kovid Goyal
7e424e1848 Refactor ascii decode into its own function 2024-02-25 09:57:32 +05:30
Kovid Goyal
96bcb1d33b Fix handling on new_input_at 2024-02-25 09:57:32 +05:30
Kovid Goyal
7f60c649f4 ... 2024-02-25 09:57:31 +05:30
Kovid Goyal
e52bcb5b93 more workon simd utf-8 decode 2024-02-25 09:57:31 +05:30
Kovid Goyal
d93283c547 annotate utf-8 encoder 2024-02-25 09:57:31 +05:30
Kovid Goyal
aef0b9f50f ... 2024-02-25 09:57:31 +05:30
Kovid Goyal
74391d7c50 More work on SIMD utf-8 decode 2024-02-25 09:57:31 +05:30
Kovid Goyal
8975d1a9f4 no need to parametrize sentinel 2024-02-25 09:57:31 +05:30
Kovid Goyal
48bf8c6105 Report out of single byte control code embedded in CSI 2024-02-25 09:57:31 +05:30
Kovid Goyal
0ed1c6f840 Simplify utf8 parser func
Also show a replacement char for incomplete utf-8 sequences interrupted by an esc char
2024-02-25 09:57:31 +05:30
Kovid Goyal
72e73f2f81 Fix alignment of output array in UTF8Decoder 2024-02-25 09:57:31 +05:30
Kovid Goyal
95eac2e510 ... 2024-02-25 09:57:31 +05:30
Kovid Goyal
bc499000a5 Infrastructure for developing and testing UTF-8 SIMD decode 2024-02-25 09:57:31 +05:30
Kovid Goyal
e2be8c2d37 Use unaligned loads for SIMD
makes no difference to the benchmarks and simplifies the code
2024-02-25 09:57:31 +05:30
Kovid Goyal
fd4c8e1e2d Get rid of ByteLoader
Doesnt move the benchmarks
2024-02-25 09:57:31 +05:30
Kovid Goyal
ba18c5a669 Move ByteLoader back to simd-string.c in preparation for getting rid of it 2024-02-25 09:57:31 +05:30
Kovid Goyal
293ad34535 Get rid of utoi() 2024-02-25 09:57:31 +05:30
Kovid Goyal
45e10394a0 Get rid of ByteLoader from csi_parse_loop
It benchmark's 4% slower on my machine
2024-02-25 09:57:31 +05:30
Kovid Goyal
0531b4bc79 Move too long CSI check out of parse loop 2024-02-25 09:57:30 +05:30
Kovid Goyal
0f6d11351b Fix benchmark rate calculation 2024-02-25 09:57:30 +05:30
Kovid Goyal
1b11c3e923 Double timeouts on flaky test 2024-02-25 09:57:30 +05:30
Kovid Goyal
c79baa56e4 Remove unused SIMD code 2024-02-25 09:57:30 +05:30