From: Christian Helmer Date: Fri, 14 Sep 2012 16:21:29 +0000 (+0200) Subject: divmod handling broken and preliminary removed X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=b5da39413a84ef8ab8a4c0eab12103b1c1675938;p=libfirm divmod handling broken and preliminary removed --- diff --git a/ir/opt/gvn_pre.c b/ir/opt/gvn_pre.c index 23d312acf..c7537e1d9 100644 --- a/ir/opt/gvn_pre.c +++ b/ir/opt/gvn_pre.c @@ -61,7 +61,7 @@ /* Attempt to reduce register pressure and reduce code size for hoisted nodes. */ #define HOIST_HIGH 0 -#define COMMON_DOM 0 +#define COMMON_DOM 1 /* Seamless implementation of handling loads and generally memory dependent nodes with GVN-PRE. */ @@ -69,7 +69,7 @@ #define DIVMODS 0 /* Experimental */ -#define MIN_CUT 1 +#define MIN_CUT 0 #define OLD_DIVMODS 0 #define NO_INF_LOOPS2 0 @@ -259,9 +259,7 @@ static int compare_gvn_identities(const void *elt, const void *key) if (is_memop(a) || is_memop(b)) { /* Loads with the same predecessors are the same value; this should only happen after phi translation. */ - if ((! is_Load(a) || ! is_Load(b)) - && (! is_Div(a) || ! is_Div(b)) - && (! is_Mod(a) || ! is_Mod(b))) + if (! is_Load(a) || ! is_Load(b)) return 1; }