config/rl78/constraints.md (U): New constraint.
authorKaushik Phatak <kaushikp@gcc.gnu.org>
Fri, 12 Jul 2013 08:38:24 +0000 (08:38 +0000)
committerKaushik Phatak <kaushikp@gcc.gnu.org>
Fri, 12 Jul 2013 08:38:24 +0000 (08:38 +0000)
From-SVN: r200919

gcc/config/rl78/constraints.md

index 01aff39..8b03cf3 100644 (file)
        (match_test "!rl78_far_p (op) && rl78_as_legitimate_address (VOIDmode, XEXP (op, 0), true, ADDR_SPACE_GENERIC)"))
 )
 
+(define_memory_constraint "U"
+  "memory references valid with mov to/from a/ax"
+  (and (match_code "mem")
+       (match_test "rl78_virt_insns_ok ()
+|| satisfies_constraint_Wab (op)
+|| satisfies_constraint_Wbc (op)
+|| satisfies_constraint_Wde (op)
+|| satisfies_constraint_Wd2 (op)
+|| satisfies_constraint_Whl (op)
+|| satisfies_constraint_Wh1 (op)
+|| satisfies_constraint_Whb (op)
+|| satisfies_constraint_Ws1 (op)
+|| satisfies_constraint_Wfr (op) ")))
 
 (define_memory_constraint "Qbi"
   "built-in compare types"