- 02 Oct, 2014 8 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
This puts the special logic for cfops into the common code instead of repeating it in all schedulers.
-
Matthias Braun authored
I don't see a reason why this would be bad, and I have such a case now so I removed the assert.
-
Matthias Braun authored
-
Matthias Braun authored
We now add missing keeps exactly before register allocation where we actually need them (so that unused outputs which still need registers assigned are not missed by the register allocation).
-
Matthias Braun authored
-
- 01 Oct, 2014 3 commits
-
-
Tobias Rapp authored
-
Matthias Braun authored
-
Matthias Braun authored
-
- 30 Sep, 2014 7 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
This removes functions from the public API which are pointless outside localopt rules, and also avoids another struct in the public API.
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
- 25 Sep, 2014 2 commits
-
-
Matthias Braun authored
The start block is not special block without any "real" instructions anymore. In particular this means: - There is no X_initial_exec Proj from the Start node anymore, "normal" cfopts are used for jumping out of the start block. - The backend never had the special convention of the start block not containing actual code and used to fixup this discrpancy, no more fixup code needed now. - The part_block() code got a bit more complicated because splitting the start block is tricky (previously part_block() simply failed in this case but was never used in the Start block because of its special convention)
-
Christoph Mallon authored
-
- 22 Sep, 2014 1 commit
-
-
Matthias Braun authored
-
- 19 Sep, 2014 3 commits
-
-
Andreas Fried authored
-
Andreas Fried authored
-
Matthias Braun authored
- It was only available in the ia32 backend and broken there. As the feature is rarely used, I remove it for now instead of going through the trouble of fixing it.
-
- 18 Sep, 2014 1 commit
-
-
Matthias Braun authored
This should fix the 186.crafty problem.
-
- 17 Sep, 2014 6 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
The previous approach put the irg link into the block attributes, so while saving memory an extra indirection was necessary. Some testing with valgrind massif+callgrind revealed that a direct link increses peak memory usage by ~1% while also increasing runtime by ~1%. More importantly the code gets a bit simpler and some strange corner cases can be removed with the direct link.
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
- 15 Sep, 2014 9 commits
-
-
Tobias Rapp authored
-
Matthias Braun authored
Make the list scheduler a set of helper functions, instead of a complex design with a set of callbacks. Simplified list scheduler code.
-
Matthias Braun authored
In their current state they produce very bad code and are just a maintenance burden.
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-