[AArch64] Let LR register alloctable
authorJiong Wang <jiong.wang@arm.com>
Wed, 12 Nov 2014 17:15:57 +0000 (17:15 +0000)
committerJiong Wang <jiwang@gcc.gnu.org>
Wed, 12 Nov 2014 17:15:57 +0000 (17:15 +0000)
commit1c923b60a0da74ae3b7f58857fac4d0c66d0e58b
tree993fc99dd00660cea8f105082b81c3a80c2f6f27
parent70654ae6e92d1c830281204570d4239a37f194d9
[AArch64] Let LR register alloctable

  gcc/
    * config/aarch64/aarch64.h (CALL_USED_REGISTERS): Mark LR as caller-save.
    (EPILOGUE_USES): Guard the check by epilogue_completed.
    * config/aarch64/aarch64.c (aarch64_layout_frame): Explictly check for LR.
    (aarch64_can_eliminate): Check LR_REGNUM liveness.

  gcc/testsuite/
    * gcc.target/aarch64/lr_free_1.c: New testcase for -fomit-frame-pointer.
    * gcc.target/aarch64/lr_free_2.c: New testcase for leaf
    -fno-omit-frame-pointer.

From-SVN: r217431
gcc/ChangeLog
gcc/config/aarch64/aarch64.c
gcc/config/aarch64/aarch64.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/lr_free_1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/lr_free_2.c [new file with mode: 0644]