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]

[PATCH] Fix addqi_1_slp (PR rtl-optimization/19012)


Hi!

The generic computation of "memory" attribute expects operand 2
to be available, but addqi_1_slp has just 2 operands.
The STRICT_LOW_PART in there should guarantee the destination is
not memory, so it can be either load if operand[1] is memory,
or not memory related.
Alternatively we could introduce incdec1 type, but not sure whether
that's worth this single instruction.
Ok to commit if testing succeeds?

2005-01-04  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/19012
	* config/i386/i386.md (addqi_1_slp): Set memory attribute.

--- gcc/config/i386/i386.md.jj	2005-01-04 15:41:46.000000000 +0100
+++ gcc/config/i386/i386.md	2005-01-04 20:08:58.441796328 +0100
@@ -6297,6 +6297,10 @@
      (if_then_else (match_operand:QI 1 "incdec_operand" "")
 	(const_string "incdec")
 	(const_string "alu1")))
+   (set (attr "memory")
+     (if_then_else (match_operand 1 "memory_operand" "")
+        (const_string "load")
+        (const_string "none")))
    (set_attr "mode" "QI")])
 
 (define_insn "*addqi_2"

	Jakub


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