This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

fix alpha_emit_setcc


Broken by

2009-05-12 Paolo Bonzini <bonzini@gnu.org>

        * dojump.c (compare_from_rtx): Delete.
        * expmed.c (emit_store_flag): Only try cstore_optab.  Canonicalize
        any MODE_CC mode to the cstorecc4 pattern.  Use prepare_operand, fail
        if the comparison does not satisfy the predicate; test predicates for
        operands 2 and 3 of a cstore pattern.  Don't try cstore optab
        further if one existing pattern fails.

An obvious == vs != typo.



r~
2009-06-11  Richard Henderson  <rth@redhat.com>

	* config/alpha/alpha.c (alpha_emit_setcc): Fix test for
	when gen_lowpart is needed.

--- alpha.c	(revision 148422)
+++ alpha.c	(local)
@@ -2623,7 +2623,7 @@ alpha_emit_setcc (rtx operands[], enum m
       emit_insn (gen_rtx_SET (VOIDmode, tmp,
 			      gen_rtx_fmt_ee (cmp_code, cmp_mode, op0, op1)));
 
-      op0 = cmp_mode == DImode ? gen_lowpart (DImode, tmp) : tmp;
+      op0 = cmp_mode != DImode ? gen_lowpart (DImode, tmp) : tmp;
       op1 = const0_rtx;
     }
 

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]