[PATCH] D30870: [Fuchsia] Use %gs for ABI slots under -mcmodel=kernel
Roland McGrath via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Mar 11 16:28:42 PST 2017
mcgrathr created this revision.
Make x86_64-fuchsia targets under -mcmodel=kernel use %gs rather
than %fs to access ABI slots for stack-protector and safe-stack.
Repository:
rL LLVM
https://reviews.llvm.org/D30870
Files:
lib/Target/X86/X86ISelLowering.cpp
Index: lib/Target/X86/X86ISelLowering.cpp
===================================================================
--- lib/Target/X86/X86ISelLowering.cpp
+++ lib/Target/X86/X86ISelLowering.cpp
@@ -2040,7 +2040,7 @@
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.
@@ -2105,7 +2105,7 @@
// 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);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30870.91483.patch
Type: text/x-patch
Size: 948 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170312/97ff8f05/attachment.bin>
More information about the llvm-commits
mailing list