From: collison Date: Fri, 6 Nov 2015 22:38:25 +0000 (+0000) Subject: 2015-11-06 Michael Collison Revert: 2015-08-01 Michael Collison * config/arm/arm.md (*arm_smin_cmp): New pattern. (*arm_umin_cmp): Likewise. 2015-11-06 Michael Collison Revert: 2015-08-01 Michael Collison * gcc.target/arm/mincmp.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@229895 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7c19722b4923..b6dcee59dede 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2015-11-06 Michael Collison + + Revert: + 2015-08-01 Michael Collison + + * config/arm/arm.md (*arm_smin_cmp): New pattern. + (*arm_umin_cmp): Likewise. + 2015-11-06 Jakub Jelinek * gimplify.c (gimplify_omp_ordered): Fix up diagnostics diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index e087c1ab166e..8ebb1bfd221e 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -3455,44 +3455,6 @@ (set_attr "type" "multiple,multiple")] ) -;; t = (s/u)min (x, y) -;; cc = cmp (t, z) -;; is the same as -;; cmp x, z -;; cmpge(u) y, z - -(define_insn_and_split "*arm_smin_cmp" - [(set (reg:CC CC_REGNUM) - (compare:CC - (smin:SI (match_operand:SI 0 "s_register_operand" "r") - (match_operand:SI 1 "s_register_operand" "r")) - (match_operand:SI 2 "s_register_operand" "r")))] - "TARGET_32BIT" - "#" - "&& reload_completed" - [(set (reg:CC CC_REGNUM) - (compare:CC (match_dup 0) (match_dup 2))) - (cond_exec (ge:CC (reg:CC CC_REGNUM) (const_int 0)) - (set (reg:CC CC_REGNUM) - (compare:CC (match_dup 1) (match_dup 2))))] -) - -(define_insn_and_split "*arm_umin_cmp" - [(set (reg:CC CC_REGNUM) - (compare:CC - (umin:SI (match_operand:SI 0 "s_register_operand" "r") - (match_operand:SI 1 "s_register_operand" "r")) - (match_operand:SI 2 "s_register_operand" "r")))] - "TARGET_32BIT" - "#" - "&& reload_completed" - [(set (reg:CC CC_REGNUM) - (compare:CC (match_dup 0) (match_dup 2))) - (cond_exec (geu:CC (reg:CC CC_REGNUM) (const_int 0)) - (set (reg:CC CC_REGNUM) - (compare:CC (match_dup 1) (match_dup 2))))] -) - (define_expand "umaxsi3" [(parallel [ (set (match_operand:SI 0 "s_register_operand" "") diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 774981c21a93..80221c1e301e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2015-11-06 Michael Collison + + Revert: + 2015-08-01 Michael Collison + + * gcc.target/arm/mincmp.c: New test. + 2015-11-06 Dominique d'Humieres PR fortran/54224 diff --git a/gcc/testsuite/gcc.target/arm/mincmp.c b/gcc/testsuite/gcc.target/arm/mincmp.c deleted file mode 100644 index ade3bd9e149c..000000000000 --- a/gcc/testsuite/gcc.target/arm/mincmp.c +++ /dev/null @@ -1,20 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-O2" } */ -/* { dg-require-effective-target arm32 } */ - -#define min(x, y) ((x) <= (y)) ? (x) : (y) - -unsigned int -foo (unsigned int i, unsigned int x, unsigned int y) -{ - return i < (min (x, y)); -} - -int -bar (int i, int x, int y) -{ - return i < (min (x, y)); -} - -/* { dg-final { scan-assembler "cmpcs" } } */ -/* { dg-final { scan-assembler "cmpge" } } */