Commit Graph

102 Commits

Author SHA1 Message Date
Torsten Ruger d6108e7b3a fix interpreter overflow issue
flag set for bigness, result reduced
tests for + and *
fixed fibs tests
2015-11-08 15:15:55 +02:00
Torsten Ruger 37564d9c2e implement message pseudo variable (like self)
too easy
also simplified some tests
2015-11-08 13:55:38 +02:00
Torsten Ruger 502cfa357d implement and test field access 2015-11-08 13:39:13 +02:00
Torsten Ruger f11e8f0a13 fix all the test
many are off course affected by call sequence changes
2015-11-07 22:20:21 +02:00
Torsten Ruger b1939e9828 rename helper 2015-11-07 12:18:08 +02:00
Torsten Ruger 42c404802d more class function testing 2015-11-07 00:13:57 +02:00
Torsten Ruger ebcc15d314 testing fibo 2015-11-06 14:24:57 +02:00
Torsten Ruger eae5cac4b5 check returns on tests 2015-11-05 17:00:41 +02:00
Torsten Ruger 1309ea37de fibonacci while works just as well now
surprisingly much faster though,
2015-11-05 13:37:08 +02:00
Torsten Ruger aad50021fe more messages for recursive fibs 2015-11-05 12:23:11 +02:00
Torsten Ruger 4014ad27fe fix and test return
return was in the wrong message
better tests now
2015-11-05 12:22:48 +02:00
Torsten Ruger 8310bc4985 fix while tests now that while is fixed 2015-11-04 20:28:02 +02:00
Torsten Ruger 14f8b42015 fix instruction order, now with the save
and finally formatted in statements too
2015-11-03 11:25:02 +02:00
Torsten Ruger dae12c532c fix fragment tests
they mostly got longer due to the added store instruction + label
2015-11-03 11:23:58 +02:00
Torsten Ruger 03979156db fix statements
as they go
2015-11-02 20:12:01 +02:00
Torsten Ruger 7eebc775d6 let helper output correct version in case of error 2015-11-02 20:11:40 +02:00
Torsten Ruger 23e09b7149 more dubious test hacking 2015-11-02 17:32:06 +02:00
Torsten Ruger 7d7b7ca995 adding types to layout
so we can test assignment
2015-10-29 12:45:29 +02:00
Torsten Ruger e4201143b3 last fixes from source change 2015-10-28 21:40:48 +02:00
Torsten Ruger ef6cb2a069 use instruction steam from message
had been attached there last week, but was still used mainly through
the source (which i’m trying to remove)
2015-10-28 14:33:38 +02:00
Torsten Ruger 142c36a374 fix return statement to actually return
fix a million tests
2015-10-27 21:04:46 +02:00
Torsten Ruger bb908dcf76 adding arg length to call sequence
and fix all the tests that affects
2015-10-27 16:21:11 +02:00
Torsten Ruger bd171d091a fix tests for indexed messages and frames
index_length changes index a bit
but from now on changes to layouts should push the index automatically
just have to set the index while calling now
2015-10-27 16:05:50 +02:00
Torsten Ruger 49b25ad971 fixed fragment tests 2015-10-27 11:00:48 +02:00
Torsten Ruger 638c367e00 more class methods 2015-10-26 22:23:06 +02:00
Torsten Ruger 5b7c98f50b order requires 2015-10-26 22:22:38 +02:00
Torsten Ruger 9d0b264b79 minors 2015-10-26 17:23:35 +02:00
Torsten Ruger 9f4952b5ac create behavior module
behavior handles instance methods (add/remove/find)
and shall be included in layout later too
2015-10-26 13:27:56 +02:00
Torsten Ruger b76c140d32 some class field tests 2015-10-26 13:08:40 +02:00
Torsten Ruger 979ebb7612 fixing indexed stuff
layout returns layout as first name (offsets indexes)
object internal length is gone  into layouts functionality
2015-10-26 12:22:32 +02:00
Torsten Ruger b7d0ee8f99 wit metaclass and class functions
needs to go back to arrays first
2015-10-25 15:40:12 +02:00
Torsten Ruger 7de2f913a0 more class tests 2015-10-25 13:19:18 +02:00
Torsten Ruger 12e31f28c2 fix and test class definition 2015-10-25 12:31:35 +02:00
Torsten Ruger 57f37ec023 removed blocks and moved to labels
somewhat easier to understand the code as a linked list
relatively painless change, considering
2015-10-23 21:27:36 +03:00
Torsten Ruger e0c5bc4c11 rename phisol to soml 2015-10-23 14:22:55 +03:00
Torsten Ruger dcbd3c7091 fold last of the virtual into register 2015-10-22 18:16:29 +03:00
Torsten Ruger c68577c3f4 fixed more cases of empty block syndrome 2015-10-22 15:37:02 +03:00
Torsten Ruger b932f67da0 fixing tests
because interpreter was fixed
2015-10-22 14:51:20 +03:00
Torsten Ruger 3895ac624c fix offsets, debugging revealed them to be 1 off 2015-10-22 11:48:03 +03:00
Torsten Ruger 4ca15449be test and fix arg passing offset too 2015-10-22 11:32:37 +03:00
Torsten Ruger 13b8d0645f tests for offset fix 2015-10-22 11:02:57 +03:00
Torsten Ruger db5c37bc55 fix while syntax and test 2015-10-19 16:37:12 +03:00
Torsten Ruger 99cff3aa32 fix the if syntax and branches 2015-10-19 16:22:24 +03:00
Torsten Ruger 1fd937927c adjust branch names
IsXXX  with xxx as condition, same as after if_xxx
AlwaysBranch is back to Branch
2015-10-19 16:08:00 +03:00
Torsten Ruger 50379a1fea update to new syntax and patch tests
basic semantics remain, but have to improve test for new functionality
that has to be written for new branch types
2015-10-19 15:31:48 +03:00
Torsten Ruger bdcd0f297d first interpreted tests, fix branch issues
whole branch logic wobbly
better syntax needed, but working(ish) for now
2015-10-19 14:46:12 +03:00
Torsten Ruger d767caf479 remove MethodCall and thus all virtual instructions 2015-10-18 19:27:46 +03:00
Torsten Ruger fa4949fc80 remove MethodEnter Instructions
only resolved to SaveReturn anyway
also Halt instruction wasn’t used, gone
passes changed to start at register
2015-10-18 17:39:35 +03:00
Torsten Ruger 8bf1337043 Remove MethodReturn instruction
and pass
and fix all tests
move towards removing all vm instructions
2015-10-18 17:32:32 +03:00
Torsten Ruger 6c7e4c0fe2 stop pinning self and frame
before: r0-message , r1-self , r2-frame , r3-new_message , r4 + tmps
now: r0-message , r1-new_message , r2 + tmps
programs got smaller, less fuss
also fix in return implementation that got the address from the wrong
message
2015-10-18 17:20:19 +03:00