From: Ian Bolton Date: Thu, 14 Mar 2013 10:48:51 +0000 (+0000) Subject: AArch64 should return CC_NZ for AND operation. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a8504f223d6174ae6760c94f0e03dad86bce9d7d;p=gcc.git AArch64 should return CC_NZ for AND operation. From-SVN: r196654 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c403ca72d6d..71c8b9fdfbe 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2013-03-14 Ian Bolton + + * config/aarch64/aarch64.c (aarch64_select_cc_mode): Return correct + CC mode for AND. + 2013-03-14 Jakub Jelinek PR tree-optimization/53265 diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index 8c8532c97cc..ce572f912d2 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -3086,7 +3086,7 @@ aarch64_select_cc_mode (RTX_CODE code, rtx x, rtx y) if ((GET_MODE (x) == SImode || GET_MODE (x) == DImode) && y == const0_rtx && (code == EQ || code == NE || code == LT || code == GE) - && (GET_CODE (x) == PLUS || GET_CODE (x) == MINUS)) + && (GET_CODE (x) == PLUS || GET_CODE (x) == MINUS || GET_CODE (x) == AND)) return CC_NZmode; /* A compare with a shifted operand. Because of canonicalization,