Patchwork Commit: RX: Fix comparesi3_extend pattern

login
register
mail settings
Submitter Nick Clifton
Date June 27, 2012, 12:58 p.m.
Message ID <87pq8ksygz.fsf@redhat.com>
Download mbox | patch
Permalink /patch/167648/
State New
Headers show

Comments

Nick Clifton - June 27, 2012, 12:58 p.m.
Hi Guys,

  I am checking in the patch below to the mainline and 4.7 branch
  sources to fix a typo in the comparesi3_extend patterns in the rx.md
  file.  Operand 0 is an input operand but it had an = modifier applied
  to it.  This confused gcc's internals and resulted in several ICEs in
  the gcc testsuite.

Cheers
  Nick

gcc/ChangeLog
2012-06-27  Nick Clifton  <nickc@redhat.com>

	* config/rx/rx.md (comparesi3_extend): Remove = modifier from
	input operand.

Patch

Index: gcc/config/rx/rx.md
===================================================================
--- gcc/config/rx/rx.md	(revision 189013)
+++ gcc/config/rx/rx.md	(working copy)
@@ -1868,7 +1868,7 @@ 
 
 (define_insn "comparesi3_<extend_types:code><small_int_modes:mode>"
   [(set (reg:CC CC_REG)
-	(compare:CC (match_operand:SI                               0 "register_operand" "=r")
+	(compare:CC (match_operand:SI                               0 "register_operand" "r")
 		    (extend_types:SI (match_operand:small_int_modes 1 "rx_restricted_mem_operand" "Q"))))]
   "(optimize < 3 || optimize_size)"
   "cmp\t%<extend_types:letter>1, %0"