Age | Commit message (Collapse) | Author | |
---|---|---|---|
2015-09-15 | split cmp in two sizes | Quentin Carbonneaux | |
2015-09-15 | fix two bugs in isel | Quentin Carbonneaux | |
2015-09-15 | use a temporary for constant comparisons | Quentin Carbonneaux | |
2015-09-15 | quick fix for comparisons with constants | Quentin Carbonneaux | |
2015-09-15 | start work on comparisons | Quentin Carbonneaux | |
There are two things I overlooked so far. 1. Binary instructions like cmp that do not have a result in registers need the size suffix sometimes, for example when comparing a spill location with a constant. 2. The register allocator needs to be adapted to support the comparison instruction: it is not possible to compare two spill locations without using a register. | |||
2015-09-15 | use regs of the correct type in isel | Quentin Carbonneaux | |
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 | patch isel to use symbol types | Quentin Carbonneaux | |
2015-09-15 | start work on word/long handling | Quentin Carbonneaux | |
2015-09-15 | replace IA with X for x64 instructions | Quentin Carbonneaux | |
2015-09-15 | avoid keyword clash by using cons for constants | Quentin Carbonneaux | |
2015-09-15 | add more printing support | Quentin Carbonneaux | |
2015-09-15 | isel logic was moved to spill | Quentin Carbonneaux | |
2015-09-15 | fix some instruction emitting code | Quentin Carbonneaux | |
2015-09-15 | define curi as a global too | Quentin Carbonneaux | |
2015-09-15 | fix small type issues | Quentin Carbonneaux | |
2015-09-15 | start simple work on isel | Quentin Carbonneaux | |