Commit Graph
26 Commits
Author SHA1 Message Date
MightyPork 22cbfeb4ff have the sign extend instructions also extend zero sign 2020-10-15 00:55:11 +02:00
MightyPork 01ab4e7e1f add sign extend commands 2020-10-15 00:41:07 +02:00
MightyPork c953e39b34 Add ld{32,16,8},sw{32,16,8},clz{,32,16,8},clo{,32,16,8},rng,rev,rbit; rename swap->xch 2020-10-11 22:01:12 +02:00
MightyPork ace92a6411 rewrite the stdio module to be less broken. also add sehbang support 2020-10-10 18:46:32 +02:00
MightyPork 982ba27ed3 cleanup, auto deref Wd, Wr, RdObj 2020-10-10 15:45:01 +02:00
MightyPork 7a3cb539e1 add new rdwr access type to guard against illegal writes that can be caught at compile time 2020-10-10 15:39:18 +02:00
MightyPork 3a8895b790 add rcmp instr, add rot13 example 2020-10-10 14:31:07 +02:00
MightyPork e3fe3c6d72 performance improvements 2020-10-07 23:40:00 +02:00
MightyPork 33ec1461e4 remove unnecessary cloning of SourcePosition, reduce SourcePosition size. clean, format 2020-10-06 23:12:11 +02:00
MightyPork 91573140a4 all errors now contain source location 2020-10-06 22:54:34 +02:00
MightyPork 34e339b1ca add pretty-printer for assembled instructions 2020-10-05 00:32:08 +02:00
MightyPork 986f3be6a2 cleanup. remove conditional jumps, replaced by condition embedded in the enum 2020-10-04 23:30:11 +02:00
MightyPork e580a2b679 Add "sym" and "def" instructions, add argument naming 2020-10-01 23:26:06 +02:00
MightyPork 4be5b4e05b generalize parsing to allow extensions to add arbitrary syntax; add 'proc' keyword to introduce a routine. 2020-09-30 23:16:22 +02:00
MightyPork c37408c7a2 read program from file; fmt, cleanup 2020-09-29 13:27:54 +02:00
MightyPork b7345144e0 refactors 2020-09-28 20:58:30 +02:00
MightyPork 2269d759c6 refactors 2020-09-28 20:44:37 +02:00
MightyPork d5de189af6 add more sensible API for object handles, add drop instruction 2020-09-28 19:36:15 +02:00
MightyPork 79d5aa3cd5 renaming, cleanup, fmt, move "extension module" traits and structs into a separate mod 2020-09-28 13:55:56 +02:00
MightyPork 8222efe6da remove "immediate ptr" data type, move read, write funcs to RunState, add %objectPtr syntax 2020-09-28 01:01:57 +02:00
MightyPork 0cd800653f Example extension: Stacks; fixes to allow module data storage in thread context 2020-09-26 22:49:06 +02:00
MightyPork 3e0aaa71e9 Convert builtin ops into a pseudo-extension 2020-09-26 22:00:27 +02:00
MightyPork 1d444fd516 cleaning 2020-09-26 21:06:34 +02:00
MightyPork ba0e3d0fd2 preparations for module data storage, remove broken tests (dyn trait can't implement PartialEq because ???) 2020-09-26 20:13:41 +02:00
MightyPork 44e7cd3a8f renames, improve module API (avoid cloning) 2020-09-26 19:01:40 +02:00
MightyPork f015104b95 re-arrange modules, add "plug-in" system so instructions can be defined in multiple crates 2020-09-26 00:29:33 +02:00