[cris-decc0,9/14] cris: Enable extend operations to SImode to set condition codes.
diff mbox series

Message ID 202002120700.01C70VKV026862@ignucius.se.axis.com
State New
Headers show
Series
  • Untitled series #158021
Related show

Commit Message

Hans-Peter Nilsson Feb. 12, 2020, 7 a.m. UTC
* config/cris/cris.md
("<acc><anz><anzvc>extend<mode>si2<setcc><setnz><setnzvc>"):
Rename from "extend<mode>si2".
("<acc><anz><anzvc>zero_extend<mode>si2<setcc><setnz><setnzvc>"):
Similar, from "zero_extend<mode>si2".

Enable dropping of compares with zero of the result, through the
three CCmode substitutions and the cmpelim pass.
---
 gcc/config/cris/cris.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Patch
diff mbox series

diff --git a/gcc/config/cris/cris.md b/gcc/config/cris/cris.md
index 5f77bc9e0..2f3f328f5 100644
--- a/gcc/config/cris/cris.md
+++ b/gcc/config/cris/cris.md
@@ -856,7 +856,7 @@  (define_insn "extend<mode>di2"
   ""
   "movs<m> %1,%M0\;smi %H0\;neg.d %H0,%H0")
 
-(define_insn "extend<mode>si2"
+(define_insn "<acc><anz><anzvc>extend<mode>si2<setcc><setnz><setnzvc>"
   [(set (match_operand:SI 0 "register_operand" "=r,r,r")
 	(sign_extend:SI (match_operand:BW 1 "general_operand" "r,Q>,g")))
    (clobber (reg:CC CRIS_CC0_REGNUM))]
@@ -879,7 +879,7 @@  (define_insn "extendqihi2"
 ;; Zero-extend.  The DImode ones are synthesized by gcc, so we don't
 ;; specify them here.
 
-(define_insn "zero_extend<mode>si2"
+(define_insn "<acc><anz><anzvc>zero_extend<mode>si2<setcc><setnz><setnzvc>"
   [(set (match_operand:SI 0 "register_operand" "=r,r,r")
 	(zero_extend:SI
 	 (match_operand:BW 1 "nonimmediate_operand" "r,Q>,m")))