From: Michael Beck Date: Sun, 18 May 2008 23:44:40 +0000 (+0000) Subject: add missing DBG_OPT calls X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=00a738642c7cfca9a7d3916fd34f53a1efb92dba;p=libfirm add missing DBG_OPT calls [r19656] --- diff --git a/include/libfirm/firmstat.h b/include/libfirm/firmstat.h index 3d72f6b3c..3f5b88280 100644 --- a/include/libfirm/firmstat.h +++ b/include/libfirm/firmstat.h @@ -68,6 +68,7 @@ enum firmstat_optimizations_t { FS_OPT_AND, /**< a & 0b1...1 = 0b1...1 & a = a & a = a */ FS_OPT_TO_EOR, /**< (a|b) & ~(a&b) = a^b */ FS_OPT_EOR_A_A, /**< a ^ a = 0 */ + FS_OPT_EOR_A_B_A, /**< (a ^ b) ^ a = b */ FS_OPT_EOR_TO_NOT_BOOL, /**< bool ^ 1 = !bool */ FS_OPT_EOR_TO_NOT, /**< x ^ 0b1..1 = ~x, (a ^ b) & b -> ~a & b */ FS_OPT_NOT_CMP, /**< !(a cmp b) = a !cmp b */ diff --git a/ir/ir/iropt.c b/ir/ir/iropt.c index 70209ca36..2878fd53d 100644 --- a/ir/ir/iropt.c +++ b/ir/ir/iropt.c @@ -887,9 +887,11 @@ static ir_node *equivalent_node_Eor(ir_node *n) if (aa == b) { /* (a ^ b) ^ a -> b */ n = ab; + DBG_OPT_ALGSIM1(oldn, a, b, n, FS_OPT_EOR_A_B_A); } else if (ab == b) { /* (a ^ b) ^ b -> a */ n = aa; + DBG_OPT_ALGSIM1(oldn, a, b, n, FS_OPT_EOR_A_B_A); } } else if (is_Eor(b)) { ir_node *ba = get_Eor_left(b); @@ -898,9 +900,11 @@ static ir_node *equivalent_node_Eor(ir_node *n) if (ba == a) { /* a ^ (a ^ b) -> b */ n = bb; + DBG_OPT_ALGSIM1(oldn, a, b, n, FS_OPT_EOR_A_B_A); } else if (bb == a) { /* a ^ (b ^ a) -> b */ n = ba; + DBG_OPT_ALGSIM1(oldn, a, b, n, FS_OPT_EOR_A_B_A); } } diff --git a/ir/stat/stat_dmp.c b/ir/stat/stat_dmp.c index e20b112c4..8dcb5d813 100644 --- a/ir/stat/stat_dmp.c +++ b/ir/stat/stat_dmp.c @@ -86,6 +86,7 @@ static const struct { { FS_OPT_AND, "algebraic simplification: a & 0b1...1 = 0b1...1 & a = a & a = (a|X) & a = a" }, { FS_OPT_TO_EOR, "algebraic simplification: (a|b) & ~(a&b) = a^b" }, { FS_OPT_EOR_A_A, "algebraic simplification: a ^ a = 0" }, + { FS_OPT_EOR_A_B_A, "algebraic simplification: (a ^ b) ^ a = b" }, { FS_OPT_EOR_TO_NOT_BOOL,"boolean simplification: bool ^ 1 = !bool" }, { FS_OPT_EOR_TO_NOT, "algebraic simplification: x ^ 0b1..1 = ~x, (a ^ b) & b = ~a & b" }, { FS_OPT_NOT_CMP, "algebraic simplification: !(a cmp b) = a !cmp b" },