- 05 Sep, 2013 1 commit
-
-
yb9976 authored
Due to the bug, the opcode name of phi nodes are never printed in the first dump of the backend (...-begin.vcg).
-
- 04 Sep, 2013 4 commits
-
-
This covers two cases (assuming no aliasing operations in between the nodes): Firstly, a Store node whose destination lies completely within the CopyB's destination can be deleted. Secondly, if a previous CopyB (A) writes to the source of CopyB to be optimized (B), we can use A's source pointer for further optimizations. If A's source is constant, we can change B to read from A's source. Cases with offsets are not handled.
-
When following the Memory chain for a Store, a CopyB node may be skipped, if both its destination and source do not alias with the Store's destination.
-
yb9976 authored
-
yb9976 authored
-
- 27 Aug, 2013 4 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
- 22 Aug, 2013 11 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
This is a major Makefile refactoring: differentiate between: - source files in $(srcdir) - generated files in $(top_builddir)/gen - object files in $(top_builddir)/$(variant)/ aka $(builddir) - documentation in $(top_builddir)/doc
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
Types need not be in their final form after the new_entity so there is no need to have _d variants like we have with all the graph nodes. You can easily use set_entity_dbg_info() after construction.
-
Matthias Braun authored
Entities need not be in their final form after the new_entity call, so there is no need to have _d variants like we have with all the graph nodes. You can easily use set_entity_dbg_info() after construction.
-
Matthias Braun authored
-
- 20 Aug, 2013 1 commit
-
-
Manuel Mohr authored
Directly reading tp->align breaks (at least) for array types.
-
- 14 Aug, 2013 2 commits
-
-
Andreas Seltenreich authored
-
Luca Barbato authored
-
- 12 Aug, 2013 2 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
-
- 08 Aug, 2013 5 commits
-
-
Matthias Braun authored
It is not usefull for optimization in most languages: - In C/C++ you can't really change the value of enum constants as casting from/to integer has to produce the expected results. - In Java (and other OO languages) enum members are objects so the libfirm enumeration type can't be used there anyway
-
Matthias Braun authored
-
Matthias Braun authored
As they were just a single flag the name should reflect that. I did not change arch_irn_flags_none, as that is not about a single flag.
-
Matthias Braun authored
-
Matthias Braun authored
-
- 31 Jul, 2013 2 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
-
- 29 Jul, 2013 4 commits
-
-
Matthias Braun authored
- fix: not just aggregate parameters need special handling but also aggregate return types. - don't just look at the called function but also on the call type.
-
Matthias Braun authored
This is a type which is aggregated from multiple primtive/simple elements. In libfirm such a type cannot be represented as a mode.
-
Matthias Braun authored
-
Luca Barbato authored
few typo fix
-
- 24 Jul, 2013 3 commits
-
-
Andreas Seltenreich authored
This allows users - such as Special Instruction creation for reconfigurable microarchitectures - to override the backend's predicate.
-
Christoph Mallon authored
-
yb9976 authored
-
- 20 Jul, 2013 1 commit
-
-
Andreas Fried authored
This removes all predecessors from Syncs which are reachable through a path beginning at another predecessor.
-