Commit Graph

228 Commits

Author SHA1 Message Date
dzaima
4a316c9398 don't include setjmp.h when CATCH_ERRORS=0 2022-04-06 18:52:54 +03:00
dzaima
0c79b44ae0 output errors to stderr 2022-03-05 02:32:28 +02:00
dzaima
022d760c95 rethrow(), fix •primitives after errored •ReBQN execution 2022-03-04 18:29:21 +02:00
dzaima
3fb793526c )erase; try to not oom on printing errors 2022-01-19 01:02:07 +02:00
dzaima
3536c351fa preallocate oom message 2022-01-12 14:05:08 +02:00
dzaima
675a0e8045 make body->bl an owned pointer 2022-01-11 00:32:58 +02:00
dzaima
3a510f99e5 pass direct u32 to bc_repr 2022-01-10 20:25:33 +02:00
dzaima
5cde913c78 •CurrentError 2022-01-08 21:55:19 +02:00
dzaima
2602a6499d rename block types 2021-12-31 17:48:19 +02:00
dzaima
08f04a8521 pass untagged pointer to under functions 2021-12-30 21:52:29 +02:00
dzaima
c7a6176be3 store untagged modifier in derived function object 2021-12-30 03:01:02 +02:00
dzaima
bebf1e4255 error location for autogenerated FAIL bodies
and also more )gc things
2021-12-25 18:01:52 +02:00
dzaima
7e89e190f2 )vars 2021-12-19 01:32:36 +02:00
dzaima
9e6b8ecaae throw error on reaching heap size limit if reasonable 2021-12-12 23:29:09 +02:00
dzaima
3da8302249 cast ptrdiff to i64 2021-12-10 21:40:13 +02:00
dzaima
f81b680aad NOTM 2021-11-29 22:40:12 +02:00
dzaima
4f66b6b88a native namespace creation 2021-11-29 16:44:20 +02:00
dzaima
ef5864afbc global name list 2021-11-29 00:21:41 +02:00
dzaima
0389eda29b inverse modifiers 2021-11-25 00:24:16 +02:00
dzaima
55c1d79d86 headers for immediate modifiers 2021-11-22 10:56:18 +02:00
dzaima
f55e349999 inverse headers 2021-11-21 21:03:14 +02:00
dzaima
896049ab12 directly call scope_freeF from scope_dec 2021-11-20 17:30:09 +02:00
dzaima
ff6e6aa9c7 clean up evalBC 2021-11-20 16:56:54 +02:00
dzaima
c79e260e34 m_v[1234] → m_hVec[1234] 2021-11-20 01:05:14 +02:00
dzaima
5484c109ea return value from ptr_inc 2021-11-20 00:58:18 +02:00
dzaima
2baa9ac196 fix & speed up variable modification fns 2021-11-18 01:10:30 +02:00
dzaima
a663c0bbee reorder md*Bl_d 2021-11-03 19:08:24 +02:00
dzaima
9bcf8d7d64 bl_m*d → md*Bl_d 2021-11-02 18:34:34 +02:00
dzaima
6aaaaeb39c more consistent print method naming scheme 2021-11-02 18:32:25 +02:00
dzaima
f9253a477e fix zero printing 2021-10-28 22:03:51 +03:00
dzaima
0deb5cfcd4 add missing bytecodes to FOR_BC 2021-10-28 21:55:18 +03:00
dzaima
06c7e40642 ⋄ → ; in DEBUG_VM 2021-10-28 21:22:15 +03:00
dzaima
470bb0968a use hex in printBC 2021-10-28 21:21:25 +03:00
dzaima
e526fede86 clean up DEBUG_VM 2021-10-28 20:46:30 +03:00
dzaima
5c59f0de6f make precompiled.bqn work 2021-10-14 18:34:28 +03:00
dzaima
363309a218 some cleanup 2021-10-11 21:50:16 +03:00
dzaima
debc4e2afe don't truncate max stack size 2021-10-09 14:47:26 +03:00
dzaima
71de4fcc59 don't use x++ on bool 2021-10-04 16:19:46 +03:00
dzaima
1bca264db8 bitarrs 2021-10-03 23:18:30 +03:00
dzaima
3725bd58c7 hide unknown stackframes in non-debug mode 2021-10-01 23:08:48 +03:00
dzaima
34fb5c275a manual tables for bytecode switches 2021-10-01 22:48:33 +03:00
dzaima
ad436a07ee fix PRED in nested blocks 2021-10-01 20:25:23 +03:00
dzaima
c4cc861054 fix namespace assignment to special name list 2021-10-01 19:59:55 +03:00
dzaima
07ae36e672 faster loop when not yet seen PRED 2021-10-01 19:01:28 +03:00
dzaima
89c19662d8 argument remapping for PRED 2021-10-01 18:52:03 +03:00
dzaima
dc1295afb7 fix SETH in immediate bodies 2021-09-28 18:17:12 +03:00
dzaima
9631702b14 PRED 2021-09-28 18:09:22 +03:00
dzaima
751652c392 alternative JIT memory allocation if MAP_32BIT isn't sufficient 2021-09-26 22:00:19 +03:00
dzaima
2ddfc43682 function to print a sequence of bytecode 2021-09-25 23:19:23 +03:00
dzaima
084eaaecbd SETC 2021-09-25 23:05:15 +03:00
dzaima
4bdc1ec3cd squeeze objects
negative effect on performance, but whatever
2021-09-25 14:39:48 +03:00
dzaima
c1ff25a253 fix multi-body function error offset 2021-09-21 19:00:16 +03:00
dzaima
b38e8c9aeb normalize tag whitespace 2021-09-21 17:24:23 +03:00
dzaima
cd5f50e3eb incG 2021-09-16 17:09:12 +03:00
dzaima
a36ae1a716 pass untagged pointer to get & getU 2021-09-09 23:52:18 +03:00
dzaima
59dcde16c9 untag this pointer of modifier impl functions 2021-09-09 21:38:56 +03:00
dzaima
337a6bbc5e more changes 2021-09-09 18:42:48 +03:00
dzaima
563e4a8780 new bytecode numbering 2021-09-03 00:46:34 +03:00
dzaima
1d13a1ef07 •ReBQN with only the repl setting 2021-08-28 23:55:48 +03:00
dzaima
6b52c2069f compile-time separated DFND 2021-08-27 12:35:23 +03:00
dzaima
8f8828c671 fix no fill case in ⥊ and namespace destructuring in header 2021-08-22 04:58:01 +03:00
dzaima
a56a20b046 fix vm_fmtPoint on non-equal s and src types 2021-08-21 04:41:51 +03:00
dzaima
3991efd3cd full SETH 2021-08-21 03:32:11 +03:00
dzaima
a99a80a7a0 VFYM 2021-08-19 00:37:54 +03:00
dzaima
7d43d74b28 make evalBC consume the scope 2021-08-16 02:24:34 +03:00
dzaima
521abe669d hopefully fix SETH refcounts 2021-08-16 00:48:15 +03:00
dzaima
0af6895f4b unfinished SETH 2021-08-15 03:54:13 +03:00
dzaima
de86ce2aaa src/README.md, and cleaning up things while at it 2021-08-14 21:27:06 +03:00
dzaima
5d82350b0b fix more things about multiple bodies 2021-08-14 18:32:27 +03:00
dzaima
5c829a7fd7 fix wrong sortedness check for body indices 2021-08-12 05:11:34 +03:00
dzaima
849eeff465 initialize ia on allocation always 2021-08-03 02:57:46 +03:00
dzaima
749b098f1e use decR less 2021-07-31 22:40:33 +03:00
dzaima
c00834cf15 move mm_free call into virtual function so dec is simpler 2021-07-30 04:40:56 +03:00
dzaima
e04cd3c135 make gcc warn less 2021-07-22 03:38:25 +03:00
dzaima
7ee8d642dc trailing newlines 2021-07-20 22:18:37 +03:00
dzaima
0bcf3b592f more comparison type fixing
and some more / opt to make it not slower
2021-07-20 21:56:35 +03:00
dzaima
9c66cbbb4b move noinline fns out of .h files 2021-07-19 03:48:52 +03:00
dzaima
1719374e0a make ubsan happier, optimize nextBC
still doesn't like f==(f64)(someIntType)f but that's, like, not replaceable
2021-07-17 21:25:11 +03:00
dzaima
9ae1ab80cf multiple body support 2021-07-16 22:42:22 +03:00
dzaima
c192125a9c fix •file in REPL 2021-07-12 12:10:06 +03:00
dzaima
08723a3c80 use TI macros everywhere 2021-07-06 19:22:45 +03:00
dzaima
774db7a956 tagged bytecode position 2021-07-04 02:13:52 +03:00
dzaima
72896feb8f merged SET_i+POPS 2021-07-03 18:04:27 +03:00
dzaima
7999683edf skip value checking for builtin loading
perf is reporting an 0.15% increase in instruction count (what?), but that's not gonna stop me
2021-07-03 02:38:09 +03:00
dzaima
08df9bfe7b arrP_sh* → arr_sh* 2021-07-03 01:38:56 +03:00
dzaima
c52a042eb4 return Arr* from slices 2021-07-03 01:25:55 +03:00
dzaima
49810ce8bc rename mm_allocN 2021-07-03 00:27:20 +03:00
dzaima
d8b2ac0268 delay tagging 2021-07-03 00:02:56 +03:00
dzaima
3451cc48c2 0 parent scope loading 2021-07-02 22:26:14 +03:00
dzaima
c029703c3a cleaner stack reading 2021-07-02 18:42:58 +03:00
dzaima
e5471e8f87 fix reference counts for comp->path 2021-06-30 23:16:08 +03:00
dzaima
b32074f4d1 support nested compilation 2021-06-30 22:54:33 +03:00
dzaima
726451ed0c include path in errors 2021-06-29 22:54:37 +03:00
dzaima
a4446716bf compiler errors 2021-06-27 20:28:19 +03:00
dzaima
eac62d4c29 inline i_FN1Ci and i_FN2Ci 2021-06-26 01:29:23 +03:00
dzaima
8b561a065a offset envCurr by 1 2021-06-25 18:03:54 +03:00
dzaima
0b7c5eb860 call counter for JIT 2021-06-22 02:27:12 +03:00
dzaima
b51cf8cfc2 fix CHKV 2021-06-19 21:28:57 +03:00
dzaima
d27dc57bed CHKV 2021-06-19 21:16:23 +03:00
dzaima
8ad686ab1b inline scope variable setting 2021-06-19 21:03:33 +03:00