[ARC] Add peephole rules to combine store/loads into double store/loads
authorClaudiu Zissulescu <claziss@synopsys.com>
Tue, 13 Nov 2018 12:06:58 +0000 (13:06 +0100)
committerClaudiu Zissulescu <claziss@gcc.gnu.org>
Tue, 13 Nov 2018 12:06:58 +0000 (13:06 +0100)
commit8fa2c211f7852b1fe330423f4af096016bb3acbc
treee71b93ba94c6071da4257549369e6fe6141fd287
parent2cc2582cf823912f2cd87aaf9c0aed0ccc989e48
[ARC] Add peephole rules to combine store/loads into double store/loads

Simple peephole rules which combines multiple ld/st instructions into
64-bit load/store instructions. It only works for architectures which
are having double load/store option on.

gcc/
Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc-protos.h (gen_operands_ldd_std): Add.
* config/arc/arc.c (operands_ok_ldd_std): New function.
(mem_ok_for_ldd_std): Likewise.
(gen_operands_ldd_std): Likewise.
* config/arc/arc.md: Add peephole2 rules for std/ldd.

From-SVN: r266064
gcc/ChangeLog
gcc/config/arc/arc-protos.h
gcc/config/arc/arc.c
gcc/config/arc/arc.md