Commit graph

  • d8feebf58f chore(bytecode): get rid of Parse(Ext) trait call-only Alain Zscheile 2022-10-25 13:23:22 +0200
  • c64152dda8 fix(bytecode): get rid of unnecessary call opcode Alain Zscheile 2022-10-25 10:37:00 +0200
  • 0a1e4994f3 get rid of all non-callstack opcodes Alain Zscheile 2022-10-25 10:23:52 +0200
  • 28b60c5dbb refactor: move verification code from 'vm' to 'bytecode' crate main Alain Zscheile 2022-10-23 01:17:34 +0200
  • c04860b933 fix(bytecode): invalid code transformation Alain Zscheile 2022-10-23 01:02:44 +0200
  • 6294b2ae9c fix(bytecode): remove misleading comment part Alain Zscheile 2022-10-23 01:01:29 +0200
  • bdc42a3fae refactor(bytecode): coalesce an annoying match duplicate Alain Zscheile 2022-10-23 00:56:46 +0200
  • 7e7fae3769 feat(bytecode): add param to remote calls, to prevent the necessity to add multiple of them Alain Zscheile 2022-10-23 00:49:46 +0200
  • 4ff3b98de9 API BREAK: bytecode: get rid of Label Alain Zscheile 2022-10-23 00:01:45 +0200
  • e83e9f8394 feat(vm): normal exec errors also shouldn't allocate Alain Zscheile 2022-10-22 22:04:13 +0200
  • 668fc0d6fa fix(vm): verify function should never allocate Alain Zscheile 2022-10-22 22:00:34 +0200
  • 582f0435a1 API BREAK feat(vm): move jumpdest check out of 'run' into 'verify' Alain Zscheile 2022-10-22 21:42:52 +0200
  • 550c25340d feat(bytecode): +DupFrom Alain Zscheile 2022-10-22 20:45:19 +0200
  • b889f626ab chore: cargo fmt Alain Zscheile 2022-10-15 17:18:59 +0200
  • ff2d189344 API BREAK: use simple byteslices for module; -ModuleKind Alain Zscheile 2022-10-15 17:18:17 +0200
  • 25ae04cb37 feat(vm): callstack doesn't really need to always store the module pointer for each callframe Alain Zscheile 2022-10-15 17:09:36 +0200
  • e101c9fd9f GENERAL BREAK: get rid of signed pointers zseri 2022-09-30 12:35:08 +0200
  • 18a7c524e6 fix(_): fix misc stuff Alain Zscheile 2022-09-28 15:44:05 +0200
  • 5f77e04826 feat(bytecode): add signed remainder operation Alain Zscheile 2022-09-28 15:28:44 +0200
  • 14c7cbb08b feat(bytecode): add bitshift operation Alain Zscheile 2022-09-28 15:07:03 +0200
  • 3cccbc31b8 API BREAK: make the VM u128-based (as only datatype) Alain Zscheile 2022-09-28 14:23:05 +0200
  • 920983d003 fix(vm): remote calls might resume where left off, without additional label... Alain Zscheile 2022-09-28 03:29:09 +0200
  • 9c770e4015 feat(vm): make VM no-std usable Alain Zscheile 2022-09-28 03:19:21 +0200
  • d193a66f04 refactor(vm): make run non-async, return Error::RemoteCall when remote-calls are invoked Alain Zscheile 2022-09-28 03:03:18 +0200
  • b67f42b773 feat(vm): basic comparison operators Alain Zscheile 2022-09-28 02:08:00 +0200
  • 7602e9f7b9 feat: more and better math operators Alain Zscheile 2022-09-28 01:48:32 +0200
  • cdebdd2ce9 fix(vm): proper error reporting (for library usage) Alain Zscheile 2022-09-27 18:22:00 +0200
  • 6c75da9cd2 feat(vm/Origin): make call method async Alain Zscheile 2022-09-27 17:41:35 +0200
  • 9c0ad2fa15 feat(vm): reset origin id before calling <origin,ptr,atom> Alain Zscheile 2022-09-27 17:28:34 +0200
  • 7580ba28bb fix(bc/pointer): cancel upper two bytes of payload bc they're node-specific Alain Zscheile 2022-09-27 17:17:27 +0200
  • 911d662634 feat+rf(vm): replace WrappedPointer with Pointer, reducing stack item size from 48 bytes to 32 Alain Zscheile 2022-09-27 16:39:28 +0200
  • 6256336a5c refactor(bytecode/pointer): use [u8; 16] instead of (u64, u64) Alain Zscheile 2022-09-27 15:19:25 +0200
  • 724531eae9 fix(vm): add doesnt_crash baseline test Alain Zscheile 2022-09-26 05:56:51 +0200
  • 0bcf710db3 +docs/xor.fgrs Alain Zscheile 2022-09-26 05:49:41 +0200
  • 9af713411b feat(vm): Process/ make fields public Alain Zscheile 2022-09-26 05:09:14 +0200
  • db88aa1f3f fix(vm): get rid of unused origin-reliant refcounts Alain Zscheile 2022-09-26 03:33:31 +0200
  • a05ebb7f1e refactor(vm): split cli and library code Alain Zscheile 2022-09-26 03:29:25 +0200
  • 0aa63e6c85 fix(bytecode): get rid of redundant 'jump' instruction Alain Zscheile 2022-09-25 17:08:23 +0200
  • 7388571a33 feat(bytecode): add ability to insert a deferred local call Alain Zscheile 2022-09-25 16:50:24 +0200
  • 7ce7753bae feat(vm): implement NAND on byte vectors of equal length Alain Zscheile 2022-09-25 15:55:06 +0200
  • e65cfa9f91 feat(bytecode): swap should be able to swap the top item with any other in 2^16 range Alain Zscheile 2022-09-25 15:05:01 +0200
  • 09e533f768 [example] just print +jpex just-print Alain Zscheile 2022-09-23 21:13:11 +0200
  • b1ea85cf3e feat(bytecode): pop and dup should take 16bit values Alain Zscheile 2022-09-25 01:58:51 +0200
  • de02eba3dc fix(bytecode): make bytecode more compact (inline atom ops; smaller opcodes) Alain Zscheile 2022-09-25 01:39:47 +0200
  • 391c478647 refactor(bytecode): OnAtom: build <-> decon (replaces: upper, lower) Alain Zscheile 2022-09-24 02:07:32 +0200
  • 6557e172e7 feat: add conditional jumps Alain Zscheile 2022-09-24 01:49:44 +0200
  • b410e7a5b8 refactor(vm): DRY jump safety checks Alain Zscheile 2022-09-23 23:25:47 +0200
  • bc96f9f130 fix(vm): trivial errors found during initial testing Alain Zscheile 2022-09-23 21:49:12 +0200
  • a7c2068b01 refactor(vm): use crate tracing Alain Zscheile 2022-09-23 21:03:41 +0200
  • 51438c5568 feat(vm): concatenation of byte vectors Alain Zscheile 2022-09-23 20:58:13 +0200
  • 993ce94fbd feat: proper support for local (inside the same module) calls Alain Zscheile 2022-09-23 20:16:19 +0200
  • d5148669b9 refactor(vm): split NOOP_* stuff from rest Alain Zscheile 2022-09-23 19:57:02 +0200
  • 17efdff6f5 ~: function calls should be restricted in input arity Alain Zscheile 2022-09-23 19:41:37 +0200
  • 94117e5817 fix(vm): make sure that we only jump to jump targets Alain Zscheile 2022-09-23 18:44:43 +0200
  • 14e809e0a6 feat(vm): implement proxy support for ocap calls Alain Zscheile 2022-09-23 18:34:53 +0200
  • 89124f0b6a feat(vm): tail call optimization Alain Zscheile 2022-09-23 17:34:08 +0200
  • 3c15ffa0f3 feat(vm): implement most baseline instructions Alain Zscheile 2022-09-23 16:22:21 +0200
  • 12d2a92ada update docs and get rid of Header; use capability model for linking Alain Zscheile 2022-09-23 14:51:54 +0200
  • 682eae2833 [WIP] Alain Zscheile 2022-09-23 14:26:39 +0200
  • 4021d238d4 feat(bytecode): split Atom ops from MathBinOp's Alain Zscheile 2022-09-23 12:53:22 +0200
  • f8d5100213 fix(bytecode): make sure Atom,Pointer are FFI-safe Alain Zscheile 2022-09-23 12:34:15 +0200
  • acb8346a55 refactor(bytecode): IntEnum DRY Alain Zscheile 2022-09-23 12:32:15 +0200
  • 6b6ed6e36a fix(bytecode): we need to be able to deconstruct Pointer Alain Zscheile 2022-09-23 12:21:29 +0200
  • b77b3a14de feat(bytecode): minimal math operations Alain Zscheile 2022-09-23 12:14:44 +0200
  • c5bbf31cf8 feat(bytecode): many small things; proper call tables Alain Zscheile 2022-09-23 11:39:47 +0200
  • 2c05579f7a feat(bytecode): +Header Alain Zscheile 2022-09-23 09:54:36 +0200
  • ec6eed9a7f fix(bytecode): make sure the proptest runs long enough Alain Zscheile 2022-09-23 07:54:00 +0200
  • 7c992a5c84 more documentation, some opcodes Alain Zscheile 2022-09-23 06:50:42 +0200
  • d09d68cc30 refactor(bytecode): rename PointerKey -> Atom Alain Zscheile 2022-09-23 06:24:08 +0200
  • da124af6d1 refactor(bytecode): rename Type -> ValueType Alain Zscheile 2022-09-23 05:56:39 +0200
  • f9214f54db feat(bytecode): add ability to serialize Alain Zscheile 2022-09-23 05:52:10 +0200
  • e8f10c4f34 feat(bytecode): implement basic Value + parsing Alain Zscheile 2022-09-23 05:31:02 +0200
  • 8ed0b781a3 initial commit Alain Zscheile 2022-09-23 04:45:34 +0200