[ARC] Add 'aux' variable attribute.
authorClaudiu Zissulescu <claziss@synopsys.com>
Wed, 31 Jan 2018 10:01:48 +0000 (11:01 +0100)
committerClaudiu Zissulescu <claziss@gcc.gnu.org>
Wed, 31 Jan 2018 10:01:48 +0000 (11:01 +0100)
commitb6fb257bd6fe6a4d03937a8c3cee6ff4dfa1002a
treebca835ffb2dedd0cea39cc7f9e3cad176120387b
parent8180c03ff035fd70c4b8b1b4276dfce460d1e2bd
[ARC] Add 'aux' variable attribute.

The 'aux' variable attribute is used to directly access the auxiliary
register space from C.

gcc/
2018-01-31  Claudiu Zissulescu  <claziss@synopsys.com>

        * config/arc/arc.c (arc_handle_aux_attribute): New function.
        (arc_attribute_table): Add 'aux' attribute.
        (arc_in_small_data_p): Consider aux like variables.
        (arc_is_aux_reg_p): New function.
        (arc_asm_output_aligned_decl_local): Ignore 'aux' like variables.
        (arc_get_aux_arg): New function.
        (prepare_move_operands): Handle aux-register access.
        (arc_handle_aux_attribute): New function.
        * doc/extend.texi (ARC Variable attributes): Add subsection.

testsuite/
2018-01-31  Claudiu Zissulescu  <claziss@synopsys.com>

        * gcc.target/arc/taux-1.c: New test.
        * gcc.target/arc/taux-2.c: Likewise.

From-SVN: r257223
gcc/ChangeLog
gcc/config/arc/arc.c
gcc/doc/extend.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arc/taux-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arc/taux-2.c [new file with mode: 0644]