summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h
diff options
context:
space:
mode:
authorrdivacky <rdivacky@FreeBSD.org>2014-08-18 18:05:55 +0000
committerrdivacky <rdivacky@FreeBSD.org>2014-08-18 18:05:55 +0000
commitfd559b198f27a09957cab0cf289c17948e7d279b (patch)
tree315593209924eba40b39eeee997f3cc61ed591cf /contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h
parent0d6be09b564963f82f1296e5fee8c13ffe8685ed (diff)
downloadFreeBSD-src-fd559b198f27a09957cab0cf289c17948e7d279b.zip
FreeBSD-src-fd559b198f27a09957cab0cf289c17948e7d279b.tar.gz
Backport r197824, r213427 and r213960 from LLVM trunk:
r197824 | rdivacky | 2013-12-20 19:08:54 +0100 (Fri, 20 Dec 2013) | 2 lines Implement initial-exec TLS for PPC32. r213427 | hfinkel | 2014-07-19 01:29:49 +0200 (Sat, 19 Jul 2014) | 7 lines [PowerPC] 32-bit ELF PIC support This adds initial support for PPC32 ELF PIC (Position Independent Code; the -fPIC variety), thus rectifying a long-standing deficiency in the PowerPC backend. Patch by Justin Hibbits! r213960 | hfinkel | 2014-07-25 19:47:22 +0200 (Fri, 25 Jul 2014) | 3 lines [PowerPC] Support TLS on PPC32/ELF Patch by Justin Hibbits! Reviewed by: jhibbits Approved by: dim
Diffstat (limited to 'contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h')
-rw-r--r--contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h b/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h
index 7aab37e..bd7350e 100644
--- a/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h
+++ b/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h
@@ -96,12 +96,14 @@ public:
/// getBasePointerSaveOffset - Return the previous frame offset to save the
/// base pointer.
- static unsigned getBasePointerSaveOffset(bool isPPC64, bool isDarwinABI) {
+ static unsigned getBasePointerSaveOffset(bool isPPC64,
+ bool isDarwinABI,
+ bool isPIC) {
if (isDarwinABI)
return isPPC64 ? -16U : -8U;
// SVR4 ABI: First slot in the general register save area.
- return isPPC64 ? -16U : -8U;
+ return isPPC64 ? -16U : isPIC ? -12U : -8U;
}
/// getLinkageSize - Return the size of the PowerPC ABI linkage area.
OpenPOWER on IntegriCloud