diff options
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/expmed.c | 4 |
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; |