[NDS32] Implment setmem pattern.
commitc2709f11efe59b83f2276ec6b71da6db9d59bdc6
authorjasonwucj <jasonwucj@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 5 Mar 2018 02:27:30 +0000 (5 02:27 +0000)
committerjasonwucj <jasonwucj@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 5 Mar 2018 02:27:30 +0000 (5 02:27 +0000)
tree4201140bee89011f0b161b268edefa49f171704c
parent61f99baf6852981425aad55f54cac4532f1538d1
[NDS32] Implment setmem pattern.

gcc/
* config/nds32/nds32-protos.h (nds32_expand_setmem): Declare.
* config/nds32/nds32-multiple.md (setmemsi): Define.
* config/nds32/nds32-memory-manipulation.c
(nds32_gen_dup_4_byte_to_word_value): New.
(emit_setmem_word_loop): New.
(emit_setmem_byte_loop): New.
(nds32_expand_setmem_loop): New.
(nds32_expand_setmem_loop_v3m): New.
(nds32_expand_setmem_unroll): New.
(nds32_expand_setmem): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@258239 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/nds32/nds32-memory-manipulation.c
gcc/config/nds32/nds32-multiple.md
gcc/config/nds32/nds32-protos.h