Commit Graph

2946 Commits

Author SHA1 Message Date
Marshall Lochbaum
ab15eaeeeb Length-1 reverse is a no-op 2024-07-04 12:04:00 -04:00
dzaima
2ce983041c fix shared •HashMap value list 2024-06-30 14:06:05 +03:00
dzaima
9c05b68870 ubsan option for build.bqn 2024-06-29 17:12:12 +03:00
dzaima
47b5d7d832 fix harmless copy-paste error 2024-06-29 04:38:44 +03:00
dzaima
d8a79145a6 add no-catch option to test/run.bqn 2024-06-29 02:59:44 +03:00
dzaima
0319be27ea fix bad error message on /⁼3‿3⥊0 2024-06-29 02:59:15 +03:00
dzaima
7eb60d4ec1 correct ElType comment 2024-06-29 02:33:46 +03:00
dzaima
d885a7d965 don't leave the temporary bootstrap CBQN around 2024-06-26 06:41:27 +03:00
dzaima
79127db4a2
Merge pull request #113 from mlochbaum/fold-rows
Boolean row insert and scan
2024-06-26 06:41:00 +03:00
dzaima
6824b9a747 fix another unaligned load 2024-06-26 06:09:30 +03:00
dzaima
7474e51642 rename mask_of in spaced.singeli
otherwise confusable with maskOf in mask.singeli
2024-06-26 05:39:48 +03:00
dzaima
452065adaf add magic incantation to make optimizer happy 2024-06-26 05:30:09 +03:00
Marshall Lochbaum
e365ecf7dc Fix F`˘ on rank 0 2024-06-25 22:31:47 -04:00
Marshall Lochbaum
ace6105bf6 Fixes for ∧˝˘ and ∨˝˘ on long rows 2024-06-25 22:30:56 -04:00
dzaima
445da5a659 actually test for correctness 2024-06-26 04:22:03 +03:00
dzaima
8e7f19a883 make cells test work under heapverify
disables checking whether the result is correct, which is not important during heapverify
2024-06-26 03:46:08 +03:00
dzaima
b6bf3f2da6 suppress clang ubsan warning
it's a true warning of actual UB and could conceivably be taken advantage of by a compiler, but is not currently so keep things pretty for now
2024-06-26 03:36:02 +03:00
dzaima
8d5efa72f0 testing of ˝˘ & `˘ 2024-06-26 03:18:23 +03:00
dzaima
024ab669d5 fix ∧˝˘0‿8⥊0 running comparison functions on length-0 inputs 2024-06-26 03:09:43 +03:00
dzaima
6c110a29ee use loadu_* & storeu_* for unaligned loads/stores 2024-06-26 03:09:43 +03:00
dzaima
ace06e96ae document CMP_* non-zero length requirement 2024-06-26 03:09:43 +03:00
dzaima
7e15dfe104 make loadu_*/storeu_* take void* 2024-06-26 03:03:57 +03:00
Marshall Lochbaum
e952e4ca3e Disable F´˘ special code when cell rank isn't 1 2024-06-23 17:06:37 -04:00
Marshall Lochbaum
5758853ccb Can't call fold-rows special code with reduction length 0 2024-06-23 10:00:44 -04:00
Marshall Lochbaum
5f1c677d48 Support ∧∨ synonyms in fold_rows_bit 2024-06-20 11:05:59 -04:00
Marshall Lochbaum
355efd1eb4 Insert-cells and scan implementation comments, and minor tweaks 2024-06-19 18:36:53 -04:00
Marshall Lochbaum
4b0f105a7f Implement short-row num⊏˘bool (including ⊣˝˘ ⊢˝˘) with fold code 2024-06-18 14:05:16 -04:00
Marshall Lochbaum
cb1b72fbb2 Extend boolean F˝˘ special code to any ranks 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
1e6c7057e8 Extend boolean F`˘ special code to any frame and cell rank 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
5e3cc6de81 Refactoring, simplification, comments 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
a8b036ad08 Implement ≠˝˘ and =˝˘ like ∧∨ on width<64 boolean 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
f0f130c42e Use a lookup table for evenly-spaced masks, getting division results from those 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
e6f1e04de2 Fast generic and pext-based ∧˝˘ and ∨˝˘ on width<64 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
40bf3bfd1c AVX2-based boolean short-row scans 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
6d27dd391b Clean up scan_rows_bit logic and implement -˘ as (2×⊣˘)-+`˘ 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
efde979fe9 Fast boolean ⊣`˘ 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
3b61568fda Implement boolean list scans ->≤≥ using more common scans 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
fde29684d7 Tweak for faster +`˘ on very short boolean rows 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
8e47221c9f Implement monadic boolean = with ≠ 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
8331a05547 Boolean ≠`˘ implementation 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
bd64e8bcd2 Faster boolean +`˘ for short rows based on flattened prefix sum 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
5591d0f4f0 Boolean row-wise scans ∧˘ and ∨˘ 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
7b4468c394 Move logical fold-rows functions to Singeli 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
2590222988 Generic-architecture implementations of fold.singeli 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
d29b4df50c Boolean and, or, eq folds for row length >64 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
c76e175719 Faster boolean +˝˘, and ≠˝˘ on row length >64 2024-06-18 07:46:31 -04:00
Marshall Lochbaum
ab4e5543a0 Implement matrix ⊣˝˘ and ⊢˝˘ with select_cells 2024-06-18 07:46:31 -04:00
dzaima
4ab84c05f6 handle header […]←rank0 properly 2024-06-16 14:00:40 +03:00
dzaima
563c30c596 allSame Singeli helper, make NEON homMask accept signed types 2024-06-16 14:00:40 +03:00
dzaima
d85f628d72 accept tuple argument in homMask 2024-06-14 04:28:53 +03:00