Commit Graph

209 Commits

Author SHA1 Message Date
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
dzaima
fb02f30259 merged LOCM;SET_ 2021-06-19 02:19:28 +03:00
dzaima
d454d4fa50 don't use EXTU 2021-06-17 17:09:53 +03:00
dzaima
4322fb8232 basic constant folding 2021-06-16 03:03:31 +03:00
dzaima
1afe46b393 move TAlloc/TStack around, immediate functions 2021-06-15 01:20:32 +03:00
dzaima
13e0d522e5 update readme, disable JIT by default 2021-06-11 03:56:07 +03:00
dzaima
b1d53f527f LEA, inline RETN 2021-06-10 19:40:29 +03:00
dzaima
550b91688a extremely basic x86-64 generator 2021-06-09 18:47:50 +03:00
dzaima
96f3089410 proper i64 formatting, move openbsd hack up 2021-06-06 22:23:55 +03:00
dzaima
7e994dd913 modifiable defines 2021-06-06 16:50:18 +03:00
dzaima
cdd4d136be make gcc happy 2021-06-04 15:47:26 +03:00
dzaima
4d8375fdfd make ⊏ safe 2021-05-30 02:38:29 +03:00
dzaima
16f379b6c7 fix gc/refc issues, set memory to invalid objects on free in debug 2021-05-30 01:55:59 +03:00
dzaima
837a69b3aa don't allocate child blocks if not needed 2021-05-29 14:40:04 +03:00
dzaima
345a0bfc8b unsigned bytecode 2021-05-28 01:12:36 +03:00
dzaima
1b89661308 inline objects 2021-05-28 01:03:29 +03:00
dzaima
a0ec9c02c9 blocks are guaranteed pointers 2021-05-27 20:20:14 +03:00
dzaima
d9110e8b5a optimize v_get, v_set, and a bit of fills 2021-05-27 19:00:08 +03:00
dzaima
752a68cb2d static const tagged builtins 2021-05-27 18:08:21 +03:00
dzaima
3dbb492b78 separate push 2021-05-27 15:57:26 +03:00