1013 Commits

Author SHA1 Message Date
Kovid Goyal
65923b1aba Add some benchamrking 2024-03-07 11:09:24 +05:30
Kovid Goyal
47fea26b62 Add an IndexByte implementation useful for benchmarking against stdlib SIMD implementation 2024-03-07 09:36:40 +05:30
Kovid Goyal
210c417d96 ... 2024-03-06 10:41:39 +05:30
Kovid Goyal
c1af14c22a Fix @ send-key not working to send keys to self over TTY 2024-03-05 13:09:07 +05:30
Kovid Goyal
63d974135b Clean up linter warnings 2024-03-05 08:27:13 +05:30
Kovid Goyal
c19488f3be Graphics protocol: Add a new delete mode for deleting images whose ids fall within a range
Useful for bulk deletion. See #7080
2024-02-25 09:57:44 +05:30
Kovid Goyal
b52af64ffe Hide cursor during benchmark run 2024-02-25 09:57:43 +05:30
Kovid Goyal
a7c06b38e6 We dont actually need vzeroupper at start of function
GCC emits vzeroupper automatically when compiling with native
optimizations but we still need it otherwise
2024-02-25 09:57:43 +05:30
Kovid Goyal
16d36c46fe Update to using math/rand/v2 2024-02-25 09:57:43 +05:30
Kovid Goyal
720618bc37 Use go 1.22 for building
It supports PCALIGN on non ARM arches as well
2024-02-25 09:57:43 +05:30
Kovid Goyal
2f727e6561 ... 2024-02-25 09:57:43 +05:30
Kovid Goyal
b65a5f78fd Fix regression causing shells in darwin to not run in login mode 2024-02-25 09:57:43 +05:30
Kovid Goyal
ede4d7fbca ... 2024-02-25 09:57:42 +05:30
Kovid Goyal
c01b959723 Fix Go unaligned index implementation 2024-02-25 09:57:42 +05:30
Kovid Goyal
7467307200 Add some alignment tests 2024-02-25 09:57:42 +05:30
Kovid Goyal
bbdb0b15f3 DRYer 2024-02-25 09:57:42 +05:30
Kovid Goyal
b5edd9ad57 Dont precalculate mask in loop body
No need since we dont shift. Avoids the extra mask instructions for the
not found case.
2024-02-25 09:57:42 +05:30
Kovid Goyal
f9fd6ffd46 Use only aligned loads for index funcs
Also obviates the necessity for safe slice wrappers
2024-02-25 09:57:41 +05:30
Kovid Goyal
31a5fcf297 DRYer 2024-02-25 09:57:41 +05:30
Kovid Goyal
561712090d Fix cmplt implementation 2024-02-25 09:57:41 +05:30
Kovid Goyal
d9190ea675 DRYer 2024-02-25 09:57:41 +05:30
Kovid Goyal
57f4ea4d4a Add some tests for broadcast from constant intrinsic 2024-02-25 09:57:41 +05:30
Kovid Goyal
9b0ae8d403 Dont use VEX encoded instructions for 128 bit ISA 2024-02-25 09:57:41 +05:30
Kovid Goyal
aed0611fb8 Avoid double trailing RET 2024-02-25 09:57:40 +05:30
Kovid Goyal
5a5e31c38b Also zero upper at start of function 2024-02-25 09:57:40 +05:30
Kovid Goyal
db2e0e816d Fix mixing of register types in the same function 2024-02-25 09:57:40 +05:30
Kovid Goyal
a298781b85 DRYer 2024-02-25 09:57:40 +05:30
Kovid Goyal
d5cd9ef2ca ... 2024-02-25 09:57:40 +05:30
Kovid Goyal
da31db3212 ... 2024-02-25 09:57:40 +05:30
Kovid Goyal
601c4ad4df Fix some typos 2024-02-25 09:57:40 +05:30
Kovid Goyal
68d800d4fa make clean should clean generated asm as well 2024-02-25 09:57:40 +05:30
Kovid Goyal
9fc3db1dd1 Work on C0 index func 2024-02-25 09:57:40 +05:30
Kovid Goyal
161eae78b6 Make generated asm_* files world readable 2024-02-25 09:57:40 +05:30
Kovid Goyal
77cfd44f24 More efficient clearing of register to all zeros or all ones 2024-02-25 09:57:39 +05:30
Kovid Goyal
59be7213cf Make set1_epi8 more general 2024-02-25 09:57:39 +05:30
Kovid Goyal
d60dacbd09 Implement > and < intrinsics for vector registers 2024-02-25 09:57:39 +05:30
Kovid Goyal
82b7b4fcce Make a re-useable template for generating ASM index functions with different tests 2024-02-25 09:57:39 +05:30
Kovid Goyal
4e6138d785 Generate SIMD code during build 2024-02-25 09:57:39 +05:30
Kovid Goyal
de8c1e0206 Work on porting SIMD vt arser to Go for the kittens 2024-02-25 09:57:39 +05:30
Kovid Goyal
fa11858a72 Make bash integration tests more robust on macOS 2024-02-25 09:57:38 +05:30
Kovid Goyal
1293ee60e0 ... 2024-02-25 09:57:38 +05:30
Kovid Goyal
d5fae07ab7 More help text for the benchmark kitten 2024-02-25 09:57:36 +05:30
Kovid Goyal
58dbcf0840 ... 2024-02-25 09:57:36 +05:30
Kovid Goyal
0340c3c8f7 Ensure CSI state reset at end of test 2024-02-25 09:57:36 +05:30
Kovid Goyal
d8a53fbafd Retry on temp errors when reading from terminal 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
8d01a42db1 Make the default number of repetitions for benchmark 100 2024-02-25 09:57:35 +05:30