From 84d289d4b799707af519962a7d2670c71176d7a1 Mon Sep 17 00:00:00 2001 From: Michael Collison Date: Fri, 6 Nov 2015 22:38:25 +0000 Subject: [PATCH] revert: arm.md (*arm_smin_cmp): New pattern. 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. From-SVN: r229895 --- gcc/ChangeLog | 10 +++++++ gcc/config/arm/arm.md | 38 --------------------------- gcc/testsuite/ChangeLog | 9 +++++++ gcc/testsuite/gcc.target/arm/mincmp.c | 20 -------------- 4 files changed, 19 insertions(+), 58 deletions(-) delete mode 100644 gcc/testsuite/gcc.target/arm/mincmp.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7c19722b492..b6dcee59ded 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 e087c1ab166..8ebb1bfd221 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 774981c21a9..80221c1e301 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 ade3bd9e149..00000000000 --- 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" } } */ -- 2.30.2