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
|
3b6ff3d94f
|
add emu and watcher script too
|
2018-05-01 16:15:04 +03:00 |
|
Torsten Ruger
|
e39a0957d7
|
add sync command
must extract pwd at some point
(and make ping optional)
|
2018-05-01 14:24:47 +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
|
08d0aae79e
|
refactor send vool tests
|
2018-04-26 20:26:42 +03:00 |
|
Torsten Ruger
|
26fe77ed68
|
add some multi method tests
|
2018-04-26 12:33:33 +03:00 |
|
Torsten Ruger
|
a8e7602193
|
extract setup for mains test
|
2018-04-26 12:33:19 +03:00 |
|
Torsten Ruger
|
a7207a9984
|
wrap parfait tests in module and boot
|
2018-04-26 12:31:37 +03:00 |
|
Torsten Ruger
|
30ba626cf9
|
fix knock ons
|
2018-04-24 20:16:50 +03:00 |
|
Torsten Ruger
|
6fc84d2f98
|
bit of renaming and a string test
|
2018-04-24 20:12:49 +03:00 |
|
Torsten Ruger
|
ee28d12429
|
bit more comparison testing
|
2018-04-24 19:57:14 +03:00 |
|
Torsten Ruger
|
2bd39bd3dd
|
renaming
|
2018-04-24 19:46:22 +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
|
ef5854c4df
|
start larger tests
|
2018-04-23 14:05:37 +03:00 |
|
Torsten Ruger
|
1907574c60
|
bit of organising
|
2018-04-23 13:16:46 +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
|
6a8bb90704
|
test multiple assigns
|
2018-04-20 13:13:09 +03:00 |
|
Torsten Ruger
|
98f3898acd
|
fix while tests
|
2018-04-20 10:27:06 +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
|
7d9132ee36
|
test other int methods
harness for testing compiler in a method (before just in a case)
|
2018-04-19 19:59:48 +03:00 |
|
Torsten Ruger
|
a98d7630fb
|
start testing builtin seperately
in terms of output only
|
2018-04-19 19:47:35 +03:00 |
|
Torsten Ruger
|
1741ad540e
|
move test helper code to support
to be reused
|
2018-04-19 19:33:40 +03:00 |
|
Torsten Ruger
|
13d8a65e07
|
add while interpreter test
|
2018-04-19 19:23:12 +03:00 |
|