diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2015-08-24 17:59:07 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2015-08-24 17:59:07 +0000 |
commit | a666df609a95f9a569b6d09472933ff898bd805d (patch) | |
tree | 01e0ebf619815811c0cf1ff97499b72c05541632 /gcc/config/m32c | |
parent | 762613be3e563106eec05795785bd08d33466d7e (diff) | |
download | gcc-a666df609a95f9a569b6d09472933ff898bd805d.zip gcc-a666df609a95f9a569b6d09472933ff898bd805d.tar.gz gcc-a666df609a95f9a569b6d09472933ff898bd805d.tar.bz2 |
builtins.c (expand_cmpstr, [...]): New functions.
gcc/
* builtins.c (expand_cmpstr, expand_cmpstrn): New functions.
(expand_builtin_strcmp, expand_builtin_strncmp): Use them. Remove
references to HAVE_cmpstr{,n}si and CODE_FOR_cmpstr{,n}si.
* config/m32c/blkmov.md (cmpstrsi): Fix predicates of operands 1 and 2.
Add predicates for operands 0 and 3.
* config/rx/rx.md (cmpstrnsi): Remove force_operand for the length
operand.
* config/sh/sh.md (cmpstrnsi): Change the length predicate from
immediate_operand to nonmemory_operand.
From-SVN: r227140
Diffstat (limited to 'gcc/config/m32c')
-rw-r--r-- | gcc/config/m32c/blkmov.md | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/m32c/blkmov.md b/gcc/config/m32c/blkmov.md index 88d0406..02ad345 100644 --- a/gcc/config/m32c/blkmov.md +++ b/gcc/config/m32c/blkmov.md @@ -178,10 +178,10 @@ ;; 3 = alignment (define_expand "cmpstrsi" - [(match_operand:HI 0 "" "") - (match_operand 1 "ap_operand" "") - (match_operand 2 "ap_operand" "") - (match_operand 3 "" "") + [(match_operand:HI 0 "register_operand" "") + (match_operand 1 "memory_operand" "") + (match_operand 2 "memory_operand" "") + (match_operand 3 "const_int_operand" "") ] "TARGET_A24" "if (m32c_expand_cmpstr(operands)) DONE; FAIL;" |