- 22 Sep, 2014 3 commits
-
-
Matthias Braun authored
You now only have to specify 1 type and the size of the access instead of 2 types. Also cleaned up some code/comments in the process.
-
Matthias Braun authored
-
Matthias Braun authored
-
- 19 Sep, 2014 11 commits
-
-
Andreas Fried authored
-
Andreas Fried authored
-
Andreas Fried authored
-
Andreas Fried authored
-
Andreas Fried authored
-
Andreas Fried authored
The matrices generated by execfreq tend to be not well conditioned. Therefore, it is advisable to use a numerically stable algorithm, such as QR decomposition. Besides, QR decomposition can be used to directly get a matrix' null space, which is what execfreq actually needs.
-
Andreas Fried authored
Only blocks which have a backward jump will be part of the linear system, because the execution frequencies of other blocks can be computed by simple substition from the predecessors. This speeds up the execfreq algorithm and finds a solution more often, but may still have problems with some ill-conditioned matrices.
-
Andreas Fried authored
-
yb9976 authored
-
yb9976 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 7 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
-
Matthias Braun authored
-
- 15 Sep, 2014 11 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
-
Matthias Braun authored
-
Matthias Braun authored
-
- 12 Sep, 2014 1 commit
-
-
yb9976 authored
This fixes backend/sparc_segfault.c.
-
- 09 Sep, 2014 6 commits
-
-
yb9976 authored
-
Matthias Braun authored
This fixes a subtle bug where the delay slot filler would move a spill/reload across a MemPerm although they both share a spillslot.
-
Manuel Mohr authored
The global analysis has quadratic worst-case complexity in the number of graphs. At least if alias analysis is disabled anyway, this can be avoided.
-
Tobias Rapp authored
-
Matthias Braun authored
-
Matthias Braun authored
-