[ARC] Update various patterns
authorClaudiu Zissulescu <claziss@synopsys.com>
Fri, 1 Sep 2017 11:43:29 +0000 (13:43 +0200)
committerClaudiu Zissulescu <claziss@gcc.gnu.org>
Fri, 1 Sep 2017 11:43:29 +0000 (13:43 +0200)
commit1370fccf2b694231c57fd6517781d53ea241e60d
tree07c7e244940627e66241b12b673bb0ceae2733e3
parent7cfbf676bdb8783e2818995ddd436a442b4dae75
[ARC] Update various patterns

gcc/
2017-04-25  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.md (movqi_insn): Add stores to save constant long
immediates.
(movhi_insn): Update store instruction constraint which are saving
6-bit short immediates.
(movsi_insn): Consider also short scaled load operations.
(zero_extendhisi2_i): Use Usd constraint instead of T.
(extendhisi2_i): Add q constraint.
(arc_clzsi2): Add type and length attributes.
(arc_ctzsi2): Likewise.
* config/arc/constraints.md (Usc): Update constraint, the
assembler can parse two relocations for a single instruction.

gcc/testsuite/
2017-04-25  Claudiu Zissulescu  <claziss@synopsys.com>

* gcc.target/arc/arc.exp: Test also cpp files.
* gcc.target/arc/tdelay_slots.cpp: New test.

From-SVN: r251587
gcc/ChangeLog
gcc/config/arc/arc.md
gcc/config/arc/constraints.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arc/arc.exp
gcc/testsuite/gcc.target/arc/tdelay_slots.cpp [new file with mode: 0644]