diff options
author | Tim Northover <tnorthover@apple.com> | 2014-04-16 09:03:25 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2014-04-16 09:03:25 +0000 |
commit | be50dc8b1fdf8d15f9bc4b96bc7c1184f005c1cf (patch) | |
tree | bb31127149e28bee640cd5ffe960dd2f69327114 /lib | |
parent | 7474c171e1185812655352e32d2a44339aab0250 (diff) | |
download | llvm-be50dc8b1fdf8d15f9bc4b96bc7c1184f005c1cf.tar.gz llvm-be50dc8b1fdf8d15f9bc4b96bc7c1184f005c1cf.tar.bz2 llvm-be50dc8b1fdf8d15f9bc4b96bc7c1184f005c1cf.tar.xz |
ARM64: mark x7 as used when an i128 gets shunted onto the stack.
The second half of a split i128 was ending up in x7, which is not a good thing.
This is another part of PR19432.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206366 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Target/ARM64/ARM64CallingConvention.td | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Target/ARM64/ARM64CallingConvention.td b/lib/Target/ARM64/ARM64CallingConvention.td index 9ac888ff24..f86c9c714a 100644 --- a/lib/Target/ARM64/ARM64CallingConvention.td +++ b/lib/Target/ARM64/ARM64CallingConvention.td @@ -36,7 +36,7 @@ def CC_ARM64_AAPCS : CallingConv<[ [X0, X1, X3, X5]>>>, // i128 is split to two i64s, and its stack alignment is 16 bytes. - CCIfType<[i64], CCIfSplit<CCAssignToStack<8, 16>>>, + CCIfType<[i64], CCIfSplit<CCAssignToStackWithShadow<8, 16, [X7]>>>, CCIfType<[i64], CCAssignToRegWithShadow<[X0, X1, X2, X3, X4, X5, X6, X7], [W0, W1, W2, W3, W4, W5, W6, W7]>>, |