From: claziss <claz...@synopsys.com> Hi,
The first patch adds support for 'naked' functions to ARC compiler, a number of tests are also added. The second patch defines additional register names aliases to be handled by inline asm code or -ffixed register commnds. The following two patches are in the context of improving LRA support for ARC backend. Thus, one patch is cleaning out ARC tests, and the second one remove the use of subregs during expand, which was a bad idea anyway. The next patch is enabling indexed loads and automodify ld/st instructions to elf target. These options were already in, but I made them default for elf target for the time being. The PIC patch is refactoring the PIC implementation as a consequence of increasingly seeing errors due to old implementation. New tests are added as well. The last patch deprecates the mexpand-addi option, this can be seen also in the context of LRA where emitting the subregs during expand is not a very good thing to do. Please let me know if you have any question. Thank you, Claudiu Claudiu Zissulescu (6): [ARC] Add support for naked functions. [ARC] Define ADDITIONAL_REGISTER_NAMES. [ARC] [LRA] Fix tests asm constraints. [ARC] [LRA] Avoid emitting COND_EXEC during expand. [ARC] Enable indexed loads for elf targers. [ARC] Consolidate PIC implementation. claziss (1): [ARC] Deprecate mexpand-adddi option. gcc/config/arc/arc-protos.h | 8 +- gcc/config/arc/arc.c | 315 ++++++++++++----------- gcc/config/arc/arc.h | 58 +++-- gcc/config/arc/arc.md | 90 +++---- gcc/config/arc/arc.opt | 6 +- gcc/config/arc/constraints.md | 6 +- gcc/config/arc/elf.h | 8 + gcc/config/arc/linux.h | 8 + gcc/doc/invoke.texi | 2 +- gcc/testsuite/gcc.target/arc/mulsi3_highpart-1.c | 2 +- gcc/testsuite/gcc.target/arc/mulsi3_highpart-2.c | 2 +- gcc/testsuite/gcc.target/arc/naked-1.c | 18 ++ gcc/testsuite/gcc.target/arc/naked-2.c | 26 ++ gcc/testsuite/gcc.target/arc/pic-1.c | 11 + gcc/testsuite/gcc.target/arc/pr9000674901.c | 58 +++++ gcc/testsuite/gcc.target/arc/pr9001191897.c | 10 + 16 files changed, 397 insertions(+), 231 deletions(-) create mode 100644 gcc/testsuite/gcc.target/arc/naked-1.c create mode 100644 gcc/testsuite/gcc.target/arc/naked-2.c create mode 100644 gcc/testsuite/gcc.target/arc/pic-1.c create mode 100644 gcc/testsuite/gcc.target/arc/pr9000674901.c create mode 100644 gcc/testsuite/gcc.target/arc/pr9001191897.c -- 1.9.1