Torsten Ruger
be3d125b82
implement smaller than comparison
...
which is NOT an operator in the risc sense
rather a minus and a check for sign
(which _could be more efficient in arm, with conditional execution)
2018-04-19 22:41:40 +03:00
Torsten Ruger
9e21719aeb
generalise the operator handling
...
ie passing them through
implementing more
2018-04-19 22:13:52 +03:00
Torsten Ruger
3a50b7dd0e
fix mod4 name
...
really did div4
2018-04-19 10:00:55 +03:00
Torsten Ruger
33ffcf1d88
move resolve_method code from word to mom
...
rather make resolve an instruction.
Since it was coded in risc anyway, we not only save the setup and call
But also makes the mom instruction flow clearer
The method really came from not wanting to code it in risc, but with
the Builder, that is now surprisingly painless
2018-04-08 18:55:17 +03:00
Torsten Ruger
ee0a1ca823
renaming methods args and frame
...
to arguments_type and frame_type, because that is what they are
In honour of setup bug, where the types of those types were loaded,
instead of just them types
2018-04-05 12:22:14 +03:00
Torsten Ruger
9fafbe4e96
remove Kernel class for clarification
...
since it was a class it was fake anyway
moved methods to object
2018-04-02 17:06:31 +03:00
Torsten Ruger
87eee0b66e
add object method missing as sys exit
...
functions get added twice and thus removed once
remove restriction for now
2018-04-02 16:49:30 +03:00
Torsten Ruger
fb29fb6431
linked list of methods instead of list of methods
...
api changes slightly, especially for each, but mostly sama sama
2018-04-02 16:36:43 +03:00
Torsten Ruger
3a9539a071
adds multiplication
...
without overflow testing, like the others
2018-04-01 21:18:08 +03:00
Torsten Ruger
b1376e83bd
add integer minus
...
rework plus to make that easy
2018-04-01 15:26:53 +03:00
Torsten Ruger
4725b81270
get those integers crated and used
2018-03-31 20:21:27 +03:00
Torsten Ruger
696886cc94
remove Data2 in favour of Data4
...
as we write a Marker, type and marker make up 2
so data2 is just the type, not useful
2018-03-31 19:12:06 +03:00
Torsten Ruger
cb9f6973d9
fix true false and nil constant
...
going from mom to parfait
basics in place, more ripples to fix
2018-03-31 13:47:02 +03:00
Torsten Ruger
1956f18faa
add an integer plus
...
not correctly handling integer objects yet
2018-03-30 17:09:02 +03:00
Torsten Ruger
3090ccffea
keep risc and cpu instructions separate in method
...
that overwriting was a bit of thorn
2018-03-25 19:33:50 +03:00
Torsten Ruger
82ab8ac4d3
add data objects
...
marker class (may change) to be able to check access
2018-03-25 18:22:02 +03:00
Torsten Ruger
bc4d4b428a
change boot to new hash syntax
2018-03-25 13:27:15 +03:00
Torsten Ruger
99ced4369a
adding Tue False and Nil Class to Parfait
...
and boot
2018-03-19 21:18:56 +05:30
Torsten Ruger
642f16b73a
adding cache entry to parfait
2018-03-17 19:03:39 +05:30
Torsten Ruger
2aa7d37a83
rename locals to frame
...
includes temps and tradition
2018-03-14 17:39:04 +05:30
Torsten Ruger
d6a2ea4cfc
fix dynamic resolve
...
patch more like, real resolve method will have to be written
and put in there
2018-03-10 19:01:38 +05:30
Torsten Ruger
670ebd06cc
remove traces of salama
2017-08-29 18:38:51 +03:00
Torsten Ruger
aa79e41d1c
rename register to risc
...
seems to fit the layer much better as we really have a very reduced
instruction set
2017-01-19 09:02:29 +02:00