AArch64: disallow x30 & x29 as the destination for indirect tail calls
authorTim Northover <tnorthover@apple.com>
Tue, 10 Jun 2014 10:50:24 +0000 (10:50 +0000)
committerTim Northover <tnorthover@apple.com>
Tue, 10 Jun 2014 10:50:24 +0000 (10:50 +0000)
commit9ffd0b020f5e128edcc403aee0bc1d7b0ea3b754
tree57180484cd56e942ed0279880017194834c241a6
parent7b9f86da5d9db958434a3d0666097d17c042c9ca
AArch64: disallow x30 & x29 as the destination for indirect tail calls

As Ana Pazos pointed out, these have to be restored to their incoming values
before a function returns; i.e. before the tail call. So they can't be used
correctly as the destination register.

llvm-svn: 210525
llvm/lib/Target/AArch64/AArch64RegisterInfo.td
llvm/test/CodeGen/AArch64/regress-tail-livereg.ll