projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix fehler40
[libfirm]
/
ir
/
opt
/
reassoc.c
diff --git
a/ir/opt/reassoc.c
b/ir/opt/reassoc.c
index
4e8db32
..
3a1a138
100644
(file)
--- a/
ir/opt/reassoc.c
+++ b/
ir/opt/reassoc.c
@@
-27,13
+27,12
@@
#include "config.h"
#endif
#include "config.h"
#endif
+#include "iropt_t.h"
#include "irnode_t.h"
#include "irgraph_t.h"
#include "irmode_t.h"
#include "irnode_t.h"
#include "irgraph_t.h"
#include "irmode_t.h"
-#include "iropt_t.h"
#include "ircons_t.h"
#include "irgmod.h"
#include "ircons_t.h"
#include "irgmod.h"
-#include "dbginfo.h"
#include "iropt_dbg.h"
#include "irflag_t.h"
#include "irgwalk.h"
#include "iropt_dbg.h"
#include "irflag_t.h"
#include "irgwalk.h"
@@
-182,6
+181,9
@@
static int reassoc_Sub(ir_node **in)
DBG((dbg, LEVEL_5, "Applied: %n - %n => %n + (-%n)\n",
get_Sub_left(n), c, get_Sub_left(n), c));
DBG((dbg, LEVEL_5, "Applied: %n - %n => %n + (-%n)\n",
get_Sub_left(n), c, get_Sub_left(n), c));
+ if(n == irn)
+ return 0;
+
exchange(n, irn);
*in = irn;
exchange(n, irn);
*in = irn;