public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r12-1170] arc: Remove define_insn_and_split *bbit_di
@ 2021-06-03  2:16 Kewen Lin
  0 siblings, 0 replies; only message in thread
From: Kewen Lin @ 2021-06-03  2:16 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:bff9a7ec6e3b8bf9d9635445c94e6c166e6f43e1

commit r12-1170-gbff9a7ec6e3b8bf9d9635445c94e6c166e6f43e1
Author: Kewen Lin <linkw@linux.ibm.com>
Date:   Wed Jun 2 21:15:17 2021 -0500

    arc: Remove define_insn_and_split *bbit_di
    
    define_insn_and_split *bbit_di has unexpected empty split
    condition when its insn condition isn't empty.  But as
    Claudiu pointed out, this pattern looks useless and it's
    better to remove it.
    
    gcc/ChangeLog:
    
            * config/arc/arc.md (*bbit_di): Remove.

Diff:
---
 gcc/config/arc/arc.md | 28 ----------------------------
 1 file changed, 28 deletions(-)

diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
index b6f2d8e28be..a67bb581003 100644
--- a/gcc/config/arc/arc.md
+++ b/gcc/config/arc/arc.md
@@ -5016,34 +5016,6 @@ core_3, archs4x, archs4xd, archs4xd_slow"
 	(if_then_else (match_test "get_attr_length (insn) == 6")
 		      (const_string "true") (const_string "false")))])
 
-; ??? When testing a bit from a DImode register, combine creates a
-; zero_extract in DImode.  This goes via an AND with a DImode constant,
-; so can only be observed on 64 bit hosts.
-(define_insn_and_split "*bbit_di"
-  [(set (pc)
-	(if_then_else
-	  (match_operator 3 "equality_comparison_operator"
-	    [(zero_extract:DI (match_operand:SI 1 "register_operand" "Rcqq,c")
-			      (const_int 1)
-			      (match_operand 2 "immediate_operand" "L,L"))
-	     (const_int 0)])
-	  (label_ref (match_operand 0 "" ""))
-	  (pc)))
-   (clobber (reg:CC_ZN CC_REG))]
-  "!CROSSING_JUMP_P (insn)"
-  "#"
-  ""
-  [(parallel
-     [(set (pc) (if_then_else (match_dup 3) (label_ref (match_dup 0)) (pc)))
-      (clobber (reg:CC_ZN CC_REG))])]
-{
-  rtx xtr;
-
-  xtr = gen_rtx_ZERO_EXTRACT (SImode, operands[1], const1_rtx, operands[2]);
-  operands[3] = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
-				xtr, const0_rtx);
-})
-
 ;; -------------------------------------------------------------------
 ;; Hardware loop
 ;; -------------------------------------------------------------------


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-06-03  2:16 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-03  2:16 [gcc r12-1170] arc: Remove define_insn_and_split *bbit_di Kewen Lin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).