Commit graph

18 commits

Author SHA1 Message Date
Quentin Carbonneaux
5fc8104e00 major lifting: get rid of RReg
I've been septic since I introduced it, this commit
proves that it costs more than it helps.  I've also fixed
a bad bug in rega() where I alloc'ed the wrong size for
internal arrays.  Enums now have names so I can use them
to cast in gdb to get the name corresponding to a constant.
2015-09-15 23:01:31 -04:00
Quentin Carbonneaux
df358ad6d2 use correct sizes during reg allocation 2015-09-15 23:01:30 -04:00
Quentin Carbonneaux
9456200d91 use a new Ref type for registers
This might not be a good idea, the problem was that
many spurious registers would be added to the Bits
data-structures during compilation (and would
always remain 0).  However, doing the above
modification de-uniformizes the handling of temps
and regs, this makes the code longer and not
really nicer.  Also, additional Bits structures
are required to track the registers independently.

Overall this might be a bad idea to revert.
2015-09-15 23:01:29 -04:00
Quentin Carbonneaux
8d2d674466 start change of representation for registers 2015-09-15 23:01:29 -04:00
Quentin Carbonneaux
5fe13b14e2 compile emit module 2015-09-15 23:01:29 -04:00
Quentin Carbonneaux
33fe5637c5 initiate work on reg allocation 2015-09-15 23:01:29 -04:00
Quentin Carbonneaux
abdcbe845a this makefile fu was useless 2015-09-15 23:01:29 -04:00
Quentin Carbonneaux
ee961fb487 always preserve last build 2015-09-15 23:01:29 -04:00
Quentin Carbonneaux
8165e327e0 start working with loops in spill.c 2015-09-15 23:01:28 -04:00
Quentin Carbonneaux
186e68a8d3 single bit bitfield needs to be unsigned 2015-09-15 23:01:28 -04:00
Quentin Carbonneaux
a244ca17f1 start simple work on isel 2015-09-15 23:01:28 -04:00
Quentin Carbonneaux
77bdb3ae9e move main function out of parse.c 2015-09-15 23:01:28 -04:00
Quentin Carbonneaux
d7548fa5d7 add rpo test and some liveness code 2015-09-15 23:01:28 -04:00
Quentin Carbonneaux
60f60425cd object files depend on lisc.h 2015-09-15 23:01:28 -04:00
Quentin Carbonneaux
ba1b430524 compile ssa 2015-09-15 23:01:28 -04:00
Quentin Carbonneaux
a9b2d0338b change phi nodes representation 2015-09-15 23:01:27 -04:00
Quentin Carbonneaux
cff56263fa compile the ssa module 2015-09-15 23:01:27 -04:00
Quentin Carbonneaux
1e0d8e2f64 add a Makefile in lisc 2015-09-15 23:01:27 -04:00