- 28 Jan, 2014 3 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
Deduce the mode automatically from the given entity.
-
Christoph Mallon authored
-
- 27 Jan, 2014 1 commit
-
-
Christoph Mallon authored
This removes the strange entity/type duality and we get rid of union symconst_symbol.
-
- 10 Jan, 2014 3 commits
-
-
Matthias Braun authored
based on a patch by Luca Barbato <lu_zero@gentoo.org>
-
Matthias Braun authored
-
Matthias Braun authored
-
- 15 Nov, 2013 1 commit
-
-
Matthias Braun authored
The file wasn't really meant to be included (it lacks the proper includes to be useful on its own), the correct file to include is irnode.h. Anyway the guards don't hurt either...
-
- 28 Oct, 2013 1 commit
-
-
Matthias Braun authored
All users of NEW_ARR_A used it to construct a simple array, yet noone cared about it actually being an array with a length field in front. For this simple use case you should use ALLOCAN.
-
- 19 Oct, 2013 8 commits
-
-
Christoph Mallon authored
-
Christoph Mallon authored
This avoids the deprecated u''.
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
Christoph Mallon authored
-
- 22 Aug, 2013 1 commit
-
-
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
-
- 08 Aug, 2013 1 commit
-
-
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
-
- 31 Jul, 2013 1 commit
-
-
Matthias Braun authored
-
- 19 Jul, 2013 1 commit
-
-
Andreas Fried authored
This requires to actually compute volatility in a number of places. Therefore, this also adds some helper functions to do that.
-
- 08 Jul, 2013 2 commits
-
-
Matthias Braun authored
The new code has less options and variants, if you call irg_verify() verification is performed, regardless of DEBUG_libfirm, or NDEBUG being set and regardless of firm verification setting switches. On the other side no atomic dump and abort is performed anymore, the call has to do this, though an irg_assert_verify() function has been added as a convenience measure. There has also been a complete rewrite of the actual checking performed. The new code is simpler, should produce more consistent output and can report more than one error.
-
Matthias Braun authored
-
- 27 Jun, 2013 1 commit
-
-
Andreas Zwinkau authored
This reverts commit 3d1d2c43. Creating a Bad node does not imply that it has users or is reachable within an irg. While clearing the property is certainly correct as a conservative approximation, it should not be necessary.
-
- 26 Jun, 2013 3 commits
-
-
Matthias Braun authored
This node was used by OO code in the past, but newer versions of liboo have their own node and don't need it anymore.
-
Matthias Braun authored
CopyB is normally used to transfer data on the stack or to enable compound value calling conventions. Exceptions don't happen in these cases.
-
Matthias Braun authored
I don't really understand what it was supposed to do (because nodes using/producing should be pretty much immovable anyway because of their dependencies, so an additional pinning type appears unnecessary). In practice there was no code differentiating between mem_pinned and exc_pinned.
-
- 25 Jun, 2013 1 commit
-
-
yb9976 authored
-
- 06 Jun, 2013 1 commit
-
-
Matthias Braun authored
The backends which support rotl now match for or(shl,shr) patterns.
-
- 07 May, 2013 1 commit
-
-
Matthias Braun authored
They are considered low level operations now which just allocate/free a block of memory on the stack. There is no highlevel typeinformation attached anymore or support for heap allocation. Frontends/liboo should provide their custom highlevel nodes if they need these features.
-
- 06 May, 2013 6 commits
-
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
-
Matthias Braun authored
the templates are now friendlier for usage outside of libfirm
-
Matthias Braun authored
-
Matthias Braun authored
Templates are put in separate files now, making the main script more generic in nature
-
- 12 Mar, 2013 2 commits
-
-
Matthias Braun authored
They weren't used in a sensible way and their semantic for non-arithmetic ops was unclear. Also implicitely fixes a bunch of bugs where these where set but no op_index was set at the same time.
-
Matthias Braun authored
oparity_unary, oparity_binary require opindex to be set, which wasn't always the case. Also people seem to expect certain semantics from unops/binops, like being arithmetic operations. So we shouldn't automatically set oparity_XXX.
-
- 26 Feb, 2013 2 commits
-
-
Manuel Mohr authored
-
Manuel Mohr authored
-