summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/X86/X86ISelLowering.cpp
diff options
context:
space:
mode:
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>2017-03-20 20:35:37 +0000
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>2017-03-20 20:35:37 +0000
commite829eecc05fa26d9755eadff5896ad2a71c3e8a4 (patch)
tree55905049da92e3af33b84eef30f1f6733ce52818 /llvm/lib/Target/X86/X86ISelLowering.cpp
parentb1578d36129c731b9348781aead3227a3c299223 (diff)
downloadbcm5719-llvm-e829eecc05fa26d9755eadff5896ad2a71c3e8a4.tar.gz
bcm5719-llvm-e829eecc05fa26d9755eadff5896ad2a71c3e8a4.zip
[Fuchsia] Use %gs for ABI slots under -mcmodel=kernel
Make x86_64-fuchsia targets under -mcmodel=kernel use %gs rather than %fs to access ABI slots for stack-protector and safe-stack Patch by Roland McGrath. Differential Revision: https://reviews.llvm.org/D30870 llvm-svn: 298302
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
-rw-r--r--llvm/lib/Target/X86/X86ISelLowering.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index e07c63b4e24..2165e08fa25 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -2077,7 +2077,7 @@ Value *X86TargetLowering::getIRStackGuard(IRBuilder<> &IRB) const {
if (hasStackGuardSlotTLS(Subtarget.getTargetTriple())) {
if (Subtarget.isTargetFuchsia()) {
// <magenta/tls.h> defines MX_TLS_STACK_GUARD_OFFSET with this value.
- return SegmentOffset(IRB, 0x10, 257);
+ return SegmentOffset(IRB, 0x10, getAddressSpace());
} else {
// %fs:0x28, unless we're using a Kernel code model, in which case
// it's %gs:0x28. gs:0x14 on i386.
@@ -2142,7 +2142,7 @@ Value *X86TargetLowering::getSafeStackPointerLocation(IRBuilder<> &IRB) const {
// Fuchsia is similar.
if (Subtarget.isTargetFuchsia()) {
// <magenta/tls.h> defines MX_TLS_UNSAFE_SP_OFFSET with this value.
- return SegmentOffset(IRB, 0x18, 257);
+ return SegmentOffset(IRB, 0x18, getAddressSpace());
}
return TargetLowering::getSafeStackPointerLocation(IRB);
OpenPOWER on IntegriCloud