Commit Graph

145 Commits

Author SHA1 Message Date
dzaima
c981889bf0 fix improper escape sequence in build.bqn 2023-09-30 17:19:24 +03:00
dzaima
090b2a70ce preserve version info in libraries 2023-09-13 18:41:10 +03:00
dzaima
ffa4b38512 mention which fork died in build.bqn 2023-08-26 17:24:06 +03:00
Marshall Lochbaum
d16ba6c3b1 Move xor-scan to scan.singeli; remove neq.singeli 2023-08-26 07:26:33 -04:00
Marshall Lochbaum
00c454d37a Add generic-architecture versions of Singeli scans 2023-08-26 07:26:33 -04:00
dzaima
25c2629842 •platform
incl. adding support for REPL completion of •a.b.c (i.e. >1 '.')
2023-08-19 18:25:52 +03:00
dzaima
fd4477992f fall back from clang to cc in build.bqn & default makefile to cc
even without the makefile change here, a `make o3` will work without clang, but it gave harmless errors from the CC_IS_CLANG check before the makefile recurses to where the custom CC is set (and CC_IS_CLANG recomputed)
2023-08-04 22:27:41 +03:00
dzaima
0b6c5189d8 move arithdDispatch declarations to a header
+ rename some things to make more sense
2023-07-31 20:26:05 +03:00
Marshall Lochbaum
03d8919307 Add has='pclmul' option and avoid using broadcast 2023-07-16 21:56:33 -04:00
Marshall Lochbaum
f315a6d3ea Emulate pext instruction in Singeli 2023-07-16 21:56:33 -04:00
dzaima
cd7807fba0 NEON constrep 2023-07-10 17:11:15 +03:00
Marshall Lochbaum
464a53463d Generic Singeli version of 32-bit binary search 2023-07-10 07:13:21 -04:00
dzaima
32064d4de3 fix nproc usage 2023-06-29 01:31:37 +03:00
dzaima
774fb9b72f move static linking management to build.bqn 2023-06-19 12:27:49 +03:00
dzaima
fdea9cbc09 add the usz option as cache key to Singeli generated output 2023-06-07 13:28:05 +03:00
dzaima
934a2b5ae3 rearrange things 2023-06-06 21:44:50 +03:00
dzaima
227dfa20c7 use isatty as a default for notui 2023-05-25 00:16:16 +03:00
dzaima
de5bcfe211 static library 2023-05-21 23:47:40 +03:00
dzaima
73cc5bba5f more proper fix for wasm; test arch=generic in moreCfgs.sh 2023-05-16 00:15:08 +03:00
dzaima
e4d222173d a bunch of fixes for generic architecture & wasm 2023-05-16 00:07:48 +03:00
dzaima
a3e8a1388d move all targets to build.bqn with Singeli & REPLXX enabled by default 2023-05-12 20:51:25 +03:00
dzaima
9ae4cfb5d0 build.bqn: 'quiet' flag 2023-05-12 19:36:02 +03:00
Marshall Lochbaum
844b537593 Singeli 1-byte table implementations for generic architecture 2023-05-11 21:05:23 -04:00
dzaima
ea4da381f2 CXXFLAGS, notes on cross-compilation 2023-05-11 17:32:09 +03:00
dzaima
32afb4b4ab build.bqn: nicer message on failed runner •SH 2023-05-09 18:29:04 +03:00
dzaima
65e246774e -mllvm --x86-cmov-converter=0 2023-04-30 20:03:09 +03:00
Antti Keränen
6edc3b934d Add install name for MacOS dylib
Without setting the install name, the copied object will still reference
to the original object, which is not going to work if it is ever moved
out of CBQN directory:

$ otool -L libcbqn.dylib
libcbqn.dylib:
	build/obj2/linker-4qa8skka2dk9e991rjom3lns7elgmlak4h98e0bcb0t8os3o6o5/res (compatibility version 0.0.0, current version 0.0.0)

With this change the install name of the dylib object is set to
@rpath/libcbqn.dylib, so it's loaded the same way .so files on Linux
are.
2023-04-26 12:09:04 +03:00
dzaima
d2ac5db1c8 move ⎉ & ˘ to their own file 2023-04-22 17:20:05 +03:00
dzaima
828f5415f6 don't bother with erroring on shared build with version number 2023-04-22 17:20:05 +03:00
dzaima
21ed8f77a7 add 'shared wasi' to build.bqn; redirect all wasm targets to build.bqn 2023-04-22 01:36:37 +03:00
dzaima
f001841d17 move comparison functions to separate file 2023-04-14 18:11:49 +03:00
dzaima
897c46df76 aarch64 fold.singeli 2023-04-06 20:17:09 +03:00
dzaima
b3f3190028 SSE2 fold.singeli 2023-04-06 19:49:14 +03:00
Marshall Lochbaum
b655dd4771 AVX2 counting function for small-range 1-byte /⁼ 2023-04-06 11:32:04 -04:00
dzaima
cba6ef505a add usz option to build/build 2023-04-06 17:47:31 +03:00
dzaima
876914d053 Singeli single-element search 2023-04-06 14:56:49 +03:00
dzaima
5a2b755191 move non-AVX2 x86-64 into SINGELI_SIMD 2023-04-02 15:55:49 +03:00
dzaima
d399e776b0 build.bqn: add ccflags to replxx compiling
now matches readme description & makefile behavior
2023-04-02 15:47:55 +03:00
dzaima
c76adb8b35 default to •internal.EEqual comparing 0 and ¯0 as equal 2023-04-02 15:29:11 +03:00
dzaima
00a5ddcb89 SSE2 squeeze 2023-04-02 15:04:00 +03:00
dzaima
9209ca5d6d SSE2 copy.singeli 2023-04-02 01:53:16 +03:00
dzaima
a62c21733e SSE2 equal.singeli 2023-04-01 22:08:47 +03:00
dzaima
b0a757eaba reorder & rename things in build.bqn Singeli source list 2023-04-01 21:19:59 +03:00
dzaima
96ee73f644 enable Singeli monadic arith & comparisons on SSE2 2023-04-01 20:40:29 +03:00
dzaima
3a45eac1aa separate SSE2, implement SSE2 dyarith & bitsel
also separate maskstore to homogeneous & top bit mask variants, and make blend require equal element widths
2023-04-01 20:40:23 +03:00
dzaima
13eebb1759 move all singeli builds to build.bqn, add has=
also:
include commit-based version by default for build/build
expand things included in --version
don't require Singeli for BMI2 usage in bitarr/bitarr
2023-03-31 19:15:23 +03:00
dzaima
dc2ac37e0a arch-independent Singeli builds 2023-03-31 16:45:29 +03:00
Marshall Lochbaum
410d51501d Check for AVX2 in Singeli transpose so it can build on non-x86 architectures 2023-03-29 12:37:15 -04:00
dzaima
ebd6d9d889 only check src directory for dirty flag for commit info 2023-03-27 15:33:49 +03:00
dzaima
b02be62486 build/build-using makefile targets 2023-03-25 01:10:30 +02:00
Marshall Lochbaum
ff6361e363 Move tranpose to its own file 2023-03-22 15:14:08 -04:00
dzaima
fb645e467a build.bqn: don't include options without docs in width calculation 2023-03-20 19:17:44 +02:00
dzaima
d157fac17f use •ParseFloat instead of •BQN to parse numbers in build.bqn 2023-03-19 21:33:11 +02:00
dzaima
3f0bc57503 move diagnostics coloring option outside of hash 2023-03-11 16:51:59 +02:00
dzaima
6d03071ae6 SIMD i32 transpose 2023-02-26 01:19:54 +02:00
dzaima
b506b434a2 add Singeli directory to build cache key, add rebuild-singeli, quiet gcc 2023-02-23 23:36:41 +02:00
dzaima
1c70a104cd clangd compile command generation fixes 2023-02-18 21:45:22 +02:00
dzaima
645da044b5 better marking of which Singeli files are required for each architecture 2023-02-17 23:10:06 +02:00
dzaima
1e6b612e13 NEON copy.singeli 2023-02-17 22:10:21 +02:00
dzaima
0aada6163a move src/clangdCommands.bqn to build/build clangd 2023-02-17 18:44:13 +02:00
dzaima
af253e25e5 (temporarily?) remove -Wstrict-prototypes 2023-02-04 03:05:49 +02:00
dzaima
a84ca6c5d6 strict prototypes 2023-02-03 15:33:31 +02:00
dzaima
dbeb0e0c2f remove lib prefix from windows dll output; don't -rdynamic for windows 2023-01-29 21:15:54 +02:00
dzaima
9abe7506ab native minimal compiler 2023-01-26 01:30:10 +02:00
dzaima
a262bdf1a3 build.bqn: fix building after error 2023-01-25 15:48:15 +02:00
dzaima
fde8c216ed build.bqn: cp -f; fully explicit position-independent code decisions 2023-01-25 14:27:00 +02:00
dzaima
9f92bac362 build.bqn: react to dependencies changing by other builds properly 2023-01-25 06:38:58 +02:00
dzaima
f637fa7746 build.bqn: proper rule object 2023-01-25 06:08:11 +02:00
dzaima
6baa96c1e3 NEON squeeze 2023-01-25 02:22:53 +02:00
dzaima
b0c4f78176 build.bqn: don't break if dependency doesn't exist 2023-01-23 21:44:55 +02:00
dzaima
721dd8889b monadic arith 2023-01-23 01:22:40 +02:00
dzaima
5f926bf35a build.bqn: fix Singeli builds ran from outside the CBQN root directory 2023-01-22 20:34:30 +02:00
dzaima
afe6707654 dyarith NEON support 2023-01-22 03:27:41 +02:00
dzaima
bc78b9e3a8 Singeli flags option 2023-01-20 23:22:04 +02:00
dzaima
10c98685ab build/build: use -DUSE_REPLXX_IO on windows+replxx 2023-01-17 00:01:17 +02:00
dzaima
a483ac61d9 --version & version specifying in build/build 2023-01-16 19:31:14 +02:00
dzaima
3b494fcae6 build/build: notui option 2023-01-16 19:19:41 +02:00
dzaima
68e0bfc837 allow native=0 for x86-64 singeli 2023-01-14 00:47:02 +02:00
dzaima
b25f83f3de default make forbuild to cc instead of clang 2023-01-12 16:31:50 +02:00
dzaima
c88b7c6a14 define REPLXX_STATIC=1 for CBQN files too 2023-01-08 04:43:54 +02:00
dzaima
69365a969a build.bqn: minimal os=windows 2023-01-08 03:53:45 +02:00
dzaima
3878c022e3 build.bqn: don't add -ldl if ¬FFI 2023-01-08 03:34:32 +02:00
dzaima
833c90b334 add CCFLAGS to linker in build.bqn 2023-01-06 06:14:33 +02:00
dzaima
fd38a5b241 use Ryu for number formatting 2022-12-31 03:19:06 +02:00
dzaima
e28251981a build.bqn: properly clear first redrawing line 2022-12-29 16:16:07 +02:00
dzaima
185e9b7a0b build.bqn: add minimum time between redraw, to maybe reduce flickering 2022-12-29 16:08:53 +02:00
dzaima
946bbc4f97 build.bqn: fix shared build, add PIE option, add -fno-pie when pie=0 2022-12-29 15:48:39 +02:00
dzaima
bcfcbb0813 add -fno-strict-aliasing 2022-12-27 23:42:54 +02:00
dzaima
9928c7176d add --help to build/build; default job count to nproc if available 2022-12-26 20:26:14 +02:00
dzaima
b4fc29e295 don't use <esc>[2K for clearing lines
for whatever reason, it sets the line width to the screen width, causing ugliness on terminal resizing
2022-12-26 17:56:29 +02:00
dzaima
f6b00f97ee make git invocation in build.bqn working-directory-independent 2022-12-25 13:44:09 +02:00
dzaima
e2c21f6103 make build/build have exit code 1 on failed build 2022-12-24 16:16:31 +02:00
dzaima
c58ba6ee52 move global build time start to earliest possible point 2022-12-24 15:52:18 +02:00
dzaima
bb7fe02a45 separate checks for x86-64 & NEON Singeli importing
& restrict the processed Singeli files on NEON to the ones supported
2022-12-24 15:27:53 +02:00
dzaima
d38316e670 BQN-based build system 2022-12-23 23:09:55 +02:00