Brendan Hansknecht
1156e4f108
Some reorganization and removal of unneeded layout
2020-11-21 18:04:57 -08:00
Brendan Hansknecht
4b3926be50
Add Num.add as inlined function
2020-11-21 00:08:12 -08:00
Brendan Hansknecht
65d6d64102
Fix symbol lifetime
2020-11-20 23:37:50 -08:00
Brendan Hansknecht
13781a6f8f
Add Num.abs as inlined function
2020-11-20 23:04:35 -08:00
Brendan Hansknecht
6da6faa35f
Rename Register to GPReg and add return regs to backend
2020-11-20 17:17:04 -08:00
Brendan Hansknecht
65e14f2941
Add Reuse and Reset to last seen map
2020-11-19 12:12:42 -08:00
Brendan Hansknecht
2b6039d683
Fix error propagation
2020-11-18 23:10:55 -08:00
Brendan Hansknecht
4e973b9236
Mixed refactoring
...
Add error return value as opposed to using panic! and unimplemented!
Reorder some functions
Return relocations
Scan ast for variable lifetimes
Probably put too much into this cl, but it would be annoying to change
at this piont.
2020-11-18 23:07:41 -08:00
Brendan Hansknecht
35fd54b8fd
Define basics of x86_64 calling conventions
2020-11-16 23:37:02 -08:00
Brendan Hansknecht
0fcb1df344
Refactor x86_64 backend and add first assembly methods
2020-11-15 20:43:14 -08:00
Brendan Hansknecht
a8986087f9
Add ability to return int literals
2020-11-15 14:06:20 -08:00
Brendan Hansknecht
86c3c0a409
Add base structure for dev compiler backend
...
Currently we only generate a single static function, but it is probably
loaded and run with jit. This is the base to start generating proper
code.
2020-11-14 18:43:02 -08:00