added constraints to CopyB
authorChristian Würdig <chriswue@ipd.info.uni-karlsruhe.de>
Fri, 21 Jul 2006 14:54:40 +0000 (14:54 +0000)
committerChristian Würdig <chriswue@ipd.info.uni-karlsruhe.de>
Fri, 21 Jul 2006 14:54:40 +0000 (14:54 +0000)
ir/be/ia32/ia32_spec.pl

index 0cd2fe0..a728fa5 100644 (file)
@@ -900,7 +900,8 @@ else {
   "op_flags" => "F|H",
   "state"    => "pinned",
   "comment"  => "implements a memcopy: CopyB(dst, src, size, mem) == memcpy(dst, src, size)",
-  "reg_req"  => { "in" => [ "edi", "esi", "ecx", "none" ], "out" => [ "none" ] },
+  "reg_req"  => { "in" => [ "gp", "gp", "gp", "none" ], "out" => [ "edi in_r1", "esi in_r2", "ecx in_r3", "none" ] },
+  "outs"     => [ "DST", "SRC", "CNT", "M" ],
 },
 
 "CopyB_i" => {
@@ -908,7 +909,8 @@ else {
   "state"    => "pinned",
   "comment"  => "implements a memcopy: CopyB(dst, src, mem) == memcpy(dst, src, attr(size))",
   "cmp_attr"  => "  return ia32_compare_immop_attr(attr_a, attr_b);\n",
-  "reg_req"  => { "in" => [ "edi", "esi", "none" ], "out" => [ "none" ] },
+  "reg_req"  => { "in" => [ "gp", "gp", "none" ], "out" => [  "edi in_r1", "esi in_r2", "none" ] },
+  "outs"     => [ "DST", "SRC", "M" ],
 },
 
 # Conversions