Torsten Ruger
|
ab01fa3862
|
switch to 0 based indexing
the world rocked for a moment (and more fixes to follow)
also the crumbling of idealism was heard
|
2018-05-14 11:55:01 +03:00 |
|
Torsten Ruger
|
4856b9891d
|
simplify writing binary
loop as should be, fixes the problem (one problem at least)
|
2018-05-13 18:01:45 +03:00 |
|
Torsten Ruger
|
866467ee5e
|
change binary labels
|
2018-05-13 17:21:48 +03:00 |
|
Torsten Ruger
|
39902401b9
|
positioning code by setting first method code
codes will initial (and on reset) propagate the whole chain
|
2018-05-13 15:28:10 +03:00 |
|
Torsten Ruger
|
7ad36380c2
|
add next_value for dictionary
also next for list
and add types attributes to space
|
2018-05-13 13:03:04 +03:00 |
|
Torsten Ruger
|
2d901bf7b6
|
not wrapping the cpu initial jump anymore
also introduce padding after cpu_init (wip)
|
2018-05-12 18:36:59 +03:00 |
|
Torsten Ruger
|
232fe67c09
|
introduce platform to abstract cpu and load address
|
2018-05-12 18:32:10 +03:00 |
|
Torsten Ruger
|
776a97986d
|
fix instruction positioning
use at as at and only compute difference when needed (to determine if
there is a jump in binary)
Easier to understand that way
|
2018-05-11 18:36:45 +03:00 |
|
Torsten Ruger
|
bc1e29e4f6
|
seperate different Position classes into own files
also tests
and have Position module keep all positions
(singletons should be at module, not class level)
|
2018-05-10 20:56:12 +03:00 |
|
Torsten Ruger
|
1169fa7220
|
propagating binary code position on extend
|
2018-05-09 20:36:49 +03:00 |
|
Torsten Ruger
|
6a1528e75a
|
Fix instruction resetting
which happens on insert of a new instruction
|
2018-05-08 20:53:48 +03:00 |
|
Torsten Ruger
|
7ca7e92dda
|
remove link exception class
|
2018-05-08 20:22:04 +03:00 |
|
Torsten Ruger
|
cf06642768
|
start passing positions along inside the position code
|
2018-05-08 19:59:43 +03:00 |
|
Torsten Ruger
|
ce3cc72f9e
|
move all position setting into position
Position and subclasses handle the logic, external to
the classes, so it can be swapped out later
(at runtime positions can’t change)
|
2018-05-07 22:30:43 +03:00 |
|
Torsten Ruger
|
68fb9b1bdc
|
rename Position get/set
|
2018-05-06 20:04:02 +03:00 |
|
Torsten Ruger
|
e89c4d1ce1
|
pass binary that arm instruction belongs to in
at least to first. repositioning and stuff next
|
2018-05-06 19:56:36 +03:00 |
|
Torsten Ruger
|
415df49199
|
hand context into position
|
2018-05-06 00:34:59 +03:00 |
|
Torsten Ruger
|
6b7e1e3932
|
remove link exception raise
need to fix move logic next
|
2018-05-05 23:55:50 +03:00 |
|
Torsten Ruger
|
40f4bfc287
|
change to position objects complete
|
2018-05-05 20:25:10 +03:00 |
|
Torsten Ruger
|
3244c7d633
|
add position tests
and refactor padding out
|
2018-05-05 20:11:08 +03:00 |
|
Torsten Ruger
|
d65a982454
|
start by moving positioned(module) to position(class)
|
2018-05-05 19:47:18 +03:00 |
|
Torsten Ruger
|
43d5521cfc
|
debugging positions
|
2018-05-05 19:32:01 +03:00 |
|
Torsten Ruger
|
d49d2665c5
|
reinit risc_init
fixes over 100 tests :-)
|
2018-05-01 22:36:46 +03:00 |
|
Torsten Ruger
|
6be28e7f55
|
fix (re)positioning when link exceptions are thrown
slow design, but sort of works
|
2018-05-01 19:48:11 +03:00 |
|
Torsten Ruger
|
1c52ab6b67
|
use hex for labels
idea was to be able to compare to positions
(but they are different positions)
|
2018-05-01 19:20:16 +03:00 |
|
Torsten Ruger
|
06f51da8f1
|
rename get_all_methods
|
2018-05-01 19:19:37 +03:00 |
|
Torsten Ruger
|
dd2c2cb975
|
fix init jump bug
the label for the jump was not translated correctly
call needs to go through to_cpu to create single instance
on the way init order slightly changed
|
2018-05-01 19:19:04 +03:00 |
|
Torsten Ruger
|
1acd231a33
|
debugging binaries, initial jump issues
|
2018-04-30 13:28:55 +03:00 |
|
Torsten Ruger
|
d84d208192
|
implement assignment normalisation
especially when the value is a send that needs normalising
fixes several broken tests
|
2018-04-27 21:56:41 +03:00 |
|
Torsten Ruger
|
1685ba5a44
|
fix send normalisation
|
2018-04-27 21:55:41 +03:00 |
|
Torsten Ruger
|
672ccb351d
|
fix argument hoisting
arguments in vool must be simple variables
finally did the hoisting to do that
|
2018-04-27 09:59:01 +03:00 |
|
Torsten Ruger
|
ec5a7f8a02
|
implement larger/smaller or equal
|
2018-04-24 19:45:58 +03:00 |
|
Torsten Ruger
|
7a2160e9b4
|
fix comparison operator
< implemented <=
|
2018-04-23 19:39:16 +03:00 |
|
Torsten Ruger
|
020bce740a
|
more complex while test
that works, but does leave one wondering what is tested apart from the
result (1)
|
2018-04-20 19:38:33 +03:00 |
|
Torsten Ruger
|
bf6e0853ce
|
fix while back jump
while normalising the condition had gone before the
jump target accidentally
|
2018-04-20 09:56:06 +03:00 |
|
Torsten Ruger
|
04359546b7
|
implement greater than
|
2018-04-19 22:57:31 +03:00 |
|
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
|
13d8a65e07
|
add while interpreter test
|
2018-04-19 19:23:12 +03:00 |
|
Torsten Ruger
|
1849522a54
|
fix TruthCheck
mixing up the false and true, such a basic human mistake
|
2018-04-19 10:34:15 +03:00 |
|
Torsten Ruger
|
3a50b7dd0e
|
fix mod4 name
really did div4
|
2018-04-19 10:00:55 +03:00 |
|
Torsten Ruger
|
8e1efa3993
|
fix source for exit label
|
2018-04-18 20:10:07 +03:00 |
|
Torsten Ruger
|
75d5fff611
|
let builder pass the source down, but inly once
|
2018-04-18 19:27:46 +03:00 |
|
Torsten Ruger
|
059ff4a868
|
pass a source into the builder
for debugging
|
2018-04-18 19:12:30 +03:00 |
|
Torsten Ruger
|
df08cb78e2
|
adds a lot of to_ssss
|
2018-04-17 20:26:15 +03:00 |
|
Torsten Ruger
|
7c33f19bee
|
dont patch over existing string method
|
2018-04-16 21:24:27 +03:00 |
|
Torsten Ruger
|
d19bd5f98d
|
fix dynamic jump
which gets dynamic resolve and call to work.
FIRST DYNAMIC CALL working
|
2018-04-09 15:06:46 +03:00 |
|
Torsten Ruger
|
59e6298879
|
first resolved call running though
and returning an int, as it should
just the value . . .
|
2018-04-08 23:45:23 +03:00 |
|
Torsten Ruger
|
fabe4db4f6
|
fix logic error in vool dynamic send
using receiver of current method
instead of receiver of next message
|
2018-04-08 22:59:42 +03:00 |
|
Torsten Ruger
|
580c53cdae
|
fix the resolve
without return and not being a function
|
2018-04-08 22:30:18 +03:00 |
|