Commit Graph

244 Commits

Author SHA1 Message Date
Marshall Lochbaum
90863851b7 Use new Singeli type destructuring (no change to generated C) 2024-05-25 18:31:47 -04:00
dzaima
f5e536aefe update bytecode submodule 2024-05-22 15:15:38 +03:00
dzaima
0b1ba06bc0 fix static-lib on macos 2024-05-09 20:27:37 +03:00
dzaima
604b751994 rearrange linker command generation 2024-05-09 20:14:25 +03:00
dzaima
ac405da3ab fix building after compilation error 2024-04-20 23:24:48 +03:00
dzaima
ce4461ff44 build/build: handle dry-run clangd 2024-04-20 21:20:59 +03:00
dzaima
d63e5ab714 build/build: dry → dry-run 2024-04-20 03:52:35 +03:00
dzaima
1f4d1fce0b build/build: warning caching 2024-04-20 03:38:51 +03:00
dzaima
68f0ec749f build/build: dry, clean, rebuild list 2024-04-20 03:10:13 +03:00
dzaima
54cec2fdf5 split up CATCH_ERRORS into functional and semantic options
allows running a non-heapverify build that functions exactly as a heapverify one, while allowing ⎊ to function
2024-04-04 02:52:08 +03:00
dzaima
fd317ddce3 move heapverify CATCH_ERRORS change to build.bqn 2024-04-04 02:35:02 +03:00
dzaima
52e2ccd944 update Singeli submodule 2024-02-27 01:59:45 +02:00
dzaima
5df8c4dbd1 static library build without FFI should still export symbols 2024-02-15 17:56:49 +02:00
dzaima
1318026c4e a bunch of vfor 2024-02-13 22:34:16 +02:00
dzaima
b5f9424209 don't -fno-trapping-math
causes gcc to optimize floatVal!=(i32)floatVal to floatVal!=round(floatVal), which is technically valid as that conversion is UB on overflow, but we want it to work anyways
2024-02-08 15:27:14 +02:00
dzaima
c078f62b1f add GLOBAL, INIT_GLOBAL, or const to globals 2024-02-01 21:13:39 +02:00
dzaima
b6a1a7caa0 add -fno-trapping-math 2024-01-19 18:08:27 +02:00
Marshall Lochbaum
5f3a4769be Rename constrep.singeli to replicate.singeli; not just constant now 2023-12-31 15:30:20 -05:00
Marshall Lochbaum
e50ae40f8b Port replicate-by-scan code from C to Singeli 2023-12-31 15:26:58 -05:00
Marshall Lochbaum
771496a25c Pass slow-pdep build option to Singeli to suppress BMI2 bool/bool 2023-12-31 10:05:51 -05:00
Marshall Lochbaum
92db3f15d0 Implement ≠` with AVX-512 clmul and GFNI 2023-12-30 10:43:06 -05:00
dzaima
9dc44ed1a9 make singeli/arch.bqn the source of SINGELI_AVX2
+ removes noting of lack of AVX2, which isn't shown from the makefile anyway
2023-12-30 02:09:56 +02:00
dzaima
94b1d90995 SSE2 & NEON /⁼ 2023-12-14 18:08:56 +02:00
dzaima
949dc8ff23 update Singeli submodule 2023-12-05 17:34:14 +02:00
dzaima
304899f533 update submodule before singeli/arch.bqn invocation 2023-12-04 16:44:30 +02:00
dzaima
e30973e48b use Singeli's arch.bqn to convert has= to cc flags 2023-12-04 16:44:30 +02:00
dzaima
4499d93f53 don't necessarily suggest x86-64 2023-12-04 16:44:30 +02:00
dzaima
ffa61550e2 update bytecode submodule 2023-12-04 16:44:30 +02:00
dzaima
7357820f19 start of compiler state refactoring 2023-11-25 23:21:32 +02:00
dzaima
469cf08647 nogit=1 option, various readme changes 2023-11-22 20:54:43 +02:00
dzaima
4cf0634b80 rearrange makefiles, remove replxx support from build/makefile 2023-11-21 00:18:18 +02:00
dzaima
4da38bc46c move makefile-based CBQN building to build/makefile
reduces latency of build.bqn-based builds going through the makefile by making logic for CBQN building not run (all makefile ifeq/$(shell)/etc logic always runs regardless of whether it'll ever be used for the current build)
2023-11-20 14:24:05 +02:00
Marshall Lochbaum
0fb845d336 Move self-search hash table code to Singeli 2023-10-31 22:09:11 -04:00
dzaima
b78b654b56 update replxx submodule 2023-11-01 00:32:24 +02:00
dzaima
da19593abd update replxx submodule 2023-10-31 22:37:47 +02:00
dzaima
ae6763f5e3 name linker result by target name only on Windows
avoids unnecessary relinking with varying output names of the same build
2023-10-31 03:15:54 +02:00
dzaima
d911697242 accept comma-separated entries in 'has' 2023-10-31 03:03:12 +02:00
dzaima
f7ec9b2283 update bytecode submodule 2023-10-30 17:09:11 +02:00
vylsaz
2e43c57a03
use the same file name as output for cached file
For Windows, the original file name is written into the binary, which can cause problems when linking
2023-10-29 10:00:32 -07:00
dzaima
55fcb453b0 remove old unnecessary file
was used in the makefile when it could run Singeli, but it hasn't been able to for a while
2023-10-13 00:34:03 +03:00
dzaima
c981889bf0 fix improper escape sequence in build.bqn 2023-09-30 17:19:24 +03:00
dzaima
1005238e9e update replxx submodule 2023-09-30 16:47:15 +03:00
dzaima
090b2a70ce preserve version info in libraries 2023-09-13 18:41:10 +03:00
Marshall Lochbaum
40ed55bc43 Use built-in NEON include for basic vector instructions 2023-09-11 21:17:38 -04:00
Marshall Lochbaum
082f800b3e Combine x86 vector extensions and use iintrinsic/basic when possible 2023-09-11 20:11:16 -04: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
f3b6c7c29c update replxx submodule 2023-08-24 02:35:50 +03:00
dzaima
0d2631a227 update bytecode submodule 2023-08-22 22:52:52 +03:00
dzaima
bc796eac32 relicense core to LGPLv3 or MPL2
closes #90
2023-08-21 15:15:46 +03:00
dzaima
b237f170fb bump for_build binary
hasn't been bumped since •file.RealPath was added, which Singeli currently conditionally uses (and thus won't in older for_build-s); now •file.RealPath will be guaranteed to exist at build-time
2023-08-19 18:25:52 +03: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
568c49ff84 update bytecode submodule 2023-08-19 18:25:43 +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
dzaima
cc160910a2 update Singeli submodule 2023-07-22 17:43:58 +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
cdd3015940 update Singeli submodule 2023-07-17 02:18:07 +03:00
dzaima
1a6e0282e4 another update of the Singeli submodule 2023-07-14 21:30:36 +03:00
dzaima
2a8d13768e update Singeli submodule 2023-07-14 18:31:26 +03:00
dzaima
2561a6d6ed update bytecode submodule 2023-07-10 23:33:17 +03: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
5c7934387a update Singeli submodule, match{} → same{} 2023-06-29 15:19:57 +03:00
dzaima
32064d4de3 fix nproc usage 2023-06-29 01:31:37 +03:00
dzaima
4ee8dfbbda update Singeli submodule, use destructuring parameters 2023-06-28 00:59:28 +03:00
dzaima
774fb9b72f move static linking management to build.bqn 2023-06-19 12:27:49 +03:00
dzaima
9da567cd57 switch to new Singeli block execution 2023-06-15 18:08:57 +03:00
dzaima
4af7aeb09a update Singeli submodule 2023-06-15 17:25:42 +03:00
dzaima
3eac1b767f update Singeli submodule 2023-06-12 01:19:07 +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
b0fa351d12 update bytecode submodule 2023-05-27 16:41:25 +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
27d3ca4e90 update bytecode submodule 2023-05-17 17:42:20 +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
a8738c68ed update bytecode submodule 2023-05-09 21:54:01 +03:00
dzaima
5979c0fed9 pass fully native primitives to r1 2023-05-09 21:50:16 +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
dzaima
0534c4ccc5 update Singeli submodule 2023-04-28 21:56:30 +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
68f179b3fd update bytecode submodule 2023-04-19 22:45:53 +03:00
dzaima
80ca090b16 update Singeli submodule 2023-04-15 19:27:58 +03:00
dzaima
f001841d17 move comparison functions to separate file 2023-04-14 18:11:49 +03:00
dzaima
ca90c6cb89 update Singeli submodule 2023-04-08 20:11:36 +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