OSDN Git Service

* config/ia64/sync.md (sync_add<I48MODE>): Fix arguments for
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 May 2005 16:20:35 +0000 (16:20 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 May 2005 16:20:35 +0000 (16:20 +0000)
        no return value pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99524 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/ia64/sync.md

index 5152682..bf396f7 100644 (file)
@@ -1,5 +1,10 @@
-2005-05-11  Grigory Zagorodnev  <grigory.zagorodnev@intel.com>
-            H.J. Lu  <hongjiu.lu@intel.com   
+2005-05-10  Richard Henderson  <rth@redhat.com>
+
+       * config/ia64/sync.md (sync_add<I48MODE>): Fix arguments for
+       no return value pattern.
+
+2005-05-10  Grigory Zagorodnev  <grigory.zagorodnev@intel.com>
+            H.J. Lu  <hongjiu.lu@intel.com>
 
        * libgcov.c (create_file_directory): New function. Create
        directory for the given file name.
index 0ea8e96..7e9c98a 100644 (file)
   [(set_attr "itanium_class" "syst_m")])
 
 (define_expand "sync_add<mode>"
-  [(match_operand:I48MODE 0 "gr_register_operand" "")
-   (match_operand:I48MODE 1 "memory_operand" "")
-   (match_operand:I48MODE 2 "general_operand" "")]
+  [(match_operand:I48MODE 0 "memory_operand" "")
+   (match_operand:I48MODE 1 "general_operand" "")]
   ""
 {
-  if (!fetchadd_operand (operands[2], <MODE>mode))
+  rtx tmp;
+  if (!fetchadd_operand (operands[1], <MODE>mode))
     FAIL;
+
+  tmp = gen_reg_rtx (<MODE>mode);
   emit_insn (gen_memory_barrier ());
-  emit_insn (gen_fetchadd_acq_<mode> (operands[0], operands[1], operands[2]));
+  emit_insn (gen_fetchadd_acq_<mode> (tmp, operands[0], operands[1]));
   DONE;
 })