update status
This commit is contained in:
parent
262868161c
commit
dded655443
@ -72,36 +72,32 @@ Time to add some meat.
|
|||||||
Step 5 - Register allocation
|
Step 5 - Register allocation
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
Unfortunately Hello world cheated a little in that it assumed knowledge of registers. Next up is a dynamic
|
A first version of register allocation is done. I moved away from the standard c calling convention to pin a
|
||||||
algorithm for register allocation.
|
type register and also not have passing and return overlapping.
|
||||||
|
That at least simplified thinking about register allocation. One has to remember the machine level is completely
|
||||||
|
value and pass by value based.
|
||||||
|
|
||||||
Probably using something along llvm lines (again!), ie Instructions refering to the Values theu use.
|
As a side i got a return statement done now, and implicit return at the end has been working. Just making sure all
|
||||||
Ravel the chain up from the back, ie where things have to be at the end to make it work.
|
branches actually return implicitly is not done. But no rush there, as one can always write the return explicitly.
|
||||||
|
|
||||||
Step 6 - Basic type instructions
|
Step 6 - Basic type instructions
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
As we want to work on values, all the value methods have to be implemented to map to machine instructions.
|
As we want to work on values, all the value methods have to be implemented to map to machine instructions.
|
||||||
|
|
||||||
With optimisations there are so many!!
|
Some are done, most are not. But they are straightforward.
|
||||||
|
|
||||||
Step 7 - Compound types
|
Step 7 - Compound types
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
Your basic array and hash need to be parsed , and implemented along with string. Nothing much happens without
|
Arrays and Hash parse. Good. But this means The Actual datastructures should be implemented. AWIP ( a work in progress)
|
||||||
these guys.
|
|
||||||
|
|
||||||
Step 8
|
Step 8
|
||||||
-------
|
|
||||||
|
|
||||||
Implement a way to call libc
|
|
||||||
|
|
||||||
Step 9
|
|
||||||
------
|
------
|
||||||
|
|
||||||
Implement classes, implement Core library of arrays/hash
|
Implement classes, implement Core library of arrays/hash
|
||||||
|
|
||||||
Step 10
|
Step 9
|
||||||
------
|
------
|
||||||
|
|
||||||
Implement Blocks
|
Implement Blocks
|
||||||
@ -114,6 +110,10 @@ Implement Exceptions
|
|||||||
Step 12
|
Step 12
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
Implement a way to call libc
|
||||||
|
|
||||||
|
Step 13
|
||||||
|
-------
|
||||||
|
|
||||||
Celebrate New year 2030
|
Celebrate New year 2030
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user