- 19 Sep, 2014 1 commit
-
-
Andreas Fried authored
-
- 17 Sep, 2014 2 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.
-
- 09 Sep, 2014 1 commit
-
-
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.
-
- 05 Aug, 2014 2 commits
-
-
Matthias Braun authored
This makes our usage of PhiMs to represent the observable behaviour of non-terminating loops more obvious. Having an explicit loop Phi constructor also fixes problems with Phi getting optimized before the keep edge was added.
-
Matthias Braun authored
The global switch is not necessary as the specific switches can express the same options.
-
- 01 Aug, 2014 1 commit
-
-
yb9976 authored
This fixes opt/fehler262.c.
-
- 31 Jul, 2014 1 commit
-
-
Matthias Braun authored
-
- 30 Jul, 2014 1 commit
-
-
Matthias Braun authored
For details see endless loops section on the homepage.
-
- 18 Jul, 2014 1 commit
-
-
Matthias Braun authored
-
- 28 May, 2014 1 commit
-
-
Matthias Braun authored
-
- 27 May, 2014 1 commit
-
-
yb9976 authored
-
- 24 Apr, 2014 1 commit
-
-
Matthias Braun authored
-
- 15 Apr, 2014 1 commit
-
-
Matthias Braun authored
- Compound type selection is performed with Member - Array indexing is performed with Sel - Instead of the simpleSel constructor functions you can use the normal Member constructors now - The concept of array element entities has been removed, Sel nodes just contain a pointer to the array type now.
-
- 10 Apr, 2014 1 commit
-
-
Christoph Mallon authored
-
- 28 Mar, 2014 2 commits
-
-
Matthias Braun authored
This also disables the memcombine optimisation if unaligned stores are not supported by the backend. We may add some tests in the future to reenable this in cases where we can prove that the combined store is aligned.
-
Matthias Braun authored
-
- 27 Mar, 2014 2 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
-
- 25 Mar, 2014 4 commits
-
-
yb9976 authored
-
Matthias Braun authored
-
Matthias Braun authored
Rework load memory chain walking: - We keep the pointer as a base + offset representation all the time - Reuse predict_load code from localopt for more accurate replacement of Loads from constant entities - Support some more cases where load-after-load and load-after-store did not use the same mode but where we can easily get the value with some arithmetic.
-
yb9976 authored
This fixes opt/loadstore6.c.
-
- 21 Mar, 2014 1 commit
-
-
Matthias Braun authored
-
- 14 Mar, 2014 2 commits
-
-
Matthias Braun authored
Some analysis parts create new nodes destroying the CONSISTENT_OUT_EDGES property even though no real change has been performed.
-
Matthias Braun authored
-
- 13 Mar, 2014 1 commit
-
-
Matthias Braun authored
-
- 10 Mar, 2014 1 commit
-
-
yb9976 authored
This fixes opt/loadstore5.c.
-
- 07 Mar, 2014 1 commit
-
-
Matthias Braun authored
-
- 24 Feb, 2014 1 commit
-
-
Matthias Braun authored
- document this correctly - correctly test with tarval_is_constant() if you expect a constant value.
-
- 18 Feb, 2014 1 commit
-
-
Matthias Braun authored
This commit does: - Remove tarval_reachable+tarval_unreachable, dataflow analysis rather use top/bottom instead of other special values. - Rename tarval_undefined to tarval_unknown as it corresponds to the Unknown node (=a value which we don't know) - Remove predefined tarval_top/tarval_bottom from tv.h and place the defines into combo.c - Change compute_XXX constant folding functions to return tarval_unknown instead of tarval_bad if folding failed - compute_Unknown in combo results in tarval_bottom == tarval_unknown this eliminates strange special cases in the Cond/Switch rules and the now unnecessary cprop_X list.
-
- 17 Feb, 2014 1 commit
-
-
Christoph Mallon authored
-
- 28 Jan, 2014 2 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
-
- 27 Jan, 2014 2 commits
-
-
Christoph Mallon authored
This removes the strange entity/type duality and we get rid of union symconst_symbol.
-
Christoph Mallon authored
-
- 24 Jan, 2014 1 commit
-
-
yb9976 authored
-
- 16 Jan, 2014 2 commits
- 28 Nov, 2013 1 commit
-
-
yb9976 authored
We cannot delete the Store if its address aliases with the source of the CopyB. This fixes opt/loadstore3.c.
-