This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Commit: RX: Fix comparesi3_extend pattern


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.

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"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]