Age | Commit message (Collapse) | Author | |
---|---|---|---|
2015-10-30 | fix several bugs on Blk.gen in liveness | Quentin Carbonneaux | |
2015-10-30 | break phi-classes following interferences | Quentin Carbonneaux | |
2015-10-30 | fix typo bug in liveness | Quentin Carbonneaux | |
2015-10-30 | start integrating RAMem references | Quentin Carbonneaux | |
2015-10-05 | fix debug output of liveness | Quentin Carbonneaux | |
2015-10-05 | clean the command line interface | Quentin Carbonneaux | |
2015-09-28 | stupid hinting works better without traces! | Quentin Carbonneaux | |
2015-09-27 | compute reg interferences in filllive() | Quentin Carbonneaux | |
2015-09-26 | move the liveon() function in live.c | Quentin Carbonneaux | |
2015-09-15 | heavy modification of call handling | Quentin Carbonneaux | |
The IR generated by calls was very bulky because two instructions were used for marking the live range of a clobber. This patch attempts to store the information of what registers are use/def/clobber in the call instruction itself, this leads to more compact code (even more when we'll have SSE registers). However, I find that the amount of extra code needed is not really easonable. Fortunately it is not too invasive, thus if the complexity creeps in, it should be easy to revert. | |||
2015-09-15 | major lifting: get rid of RReg | Quentin Carbonneaux | |
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 | use a new Ref type for registers | Quentin Carbonneaux | |
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 | silence clang warning | Quentin Carbonneaux | |
2015-09-15 | start change of representation for registers | Quentin Carbonneaux | |
2015-09-15 | cosmetics | Quentin Carbonneaux | |
2015-09-15 | rework liveness to compute reg pressure | Quentin Carbonneaux | |
2015-09-15 | cosmetics | Quentin Carbonneaux | |
2015-09-15 | fix allocation bug | Quentin Carbonneaux | |
2015-09-15 | simplify liveness | Quentin Carbonneaux | |
2015-09-15 | fix phi handling in liveness | Quentin Carbonneaux | |
2015-09-15 | add rpo test and some liveness code | Quentin Carbonneaux | |