aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/expmed.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fd752b6..2d1c447 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-07-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ * expmed.c (emit_store_flag): Use a recursive call to optimize the
+ xor case.
+
2009-07-24 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (struct ipa_node_params): New flag node_enqued.
diff --git a/gcc/expmed.c b/gcc/expmed.c
index c73bf21..98a99a2 100644
--- a/gcc/expmed.c
+++ b/gcc/expmed.c
@@ -5577,8 +5577,8 @@ emit_store_flag (rtx target, enum rtx_code code, rtx op0, rtx op1,
tem = expand_binop (mode, sub_optab, op0, op1, subtarget, 1,
OPTAB_WIDEN);
if (tem != 0)
- tem = emit_store_flag_1 (target, code, tem, const0_rtx,
- mode, unsignedp, normalizep, target_mode);
+ tem = emit_store_flag (target, code, tem, const0_rtx,
+ mode, unsignedp, normalizep);
if (tem != 0)
return tem;