Index: lib/Target/X86/X86ISelLowering.h |
diff --git a/lib/Target/X86/X86ISelLowering.h b/lib/Target/X86/X86ISelLowering.h |
index 7c6ffa2afa2248fa7f3cd3f8ff35e1e6064ca4fa..9e6d31a128b08399e55dc58855c6ad364a6b95ee 100644 |
--- a/lib/Target/X86/X86ISelLowering.h |
+++ b/lib/Target/X86/X86ISelLowering.h |
@@ -237,6 +237,16 @@ namespace llvm { |
// TLSBASEADDR - Thread Local Storage. A call to get the start address |
// of the TLS block for the current module. |
TLSBASEADDR, |
+ // @LOCALMOD-BEGIN |
+ // TLSADDR_LE - Thread Local Storage. (Local Exec Model) |
+ TLSADDR_LE, |
+ |
+ // TLSADDR_IE - Thread Local Storage. (Initial Exec Model) |
+ TLSADDR_IE, |
+ |
+ // THREAD_POINTER_FROM_GS - Read thread pointer from %gs:0 on x86-32. |
+ THREAD_POINTER_FROM_GS, |
+ // @LOCALMOD-END |
// TLSCALL - Thread Local Storage. When calling to an OS provided |
// thunk at the address from an earlier relocation. |
@@ -826,6 +836,9 @@ namespace llvm { |
/// make the right decision when generating code for different targets. |
const X86Subtarget *Subtarget; |
const DataLayout *TD; |
+ // @LOCALMOD - This is essentially a revert of r167104 |
+ /// X86StackPtr - X86 physical register used as stack ptr. |
+ unsigned X86StackPtr; |
/// Used to store the TargetOptions so that we don't waste time resetting |
/// the operation actions unless we have to. |
@@ -1002,6 +1015,12 @@ namespace llvm { |
MachineBasicBlock *EmitLoweredSegAlloca(MachineInstr *MI, |
MachineBasicBlock *BB) const; |
+ // @LOCALMOD-BEGIN |
+ MachineBasicBlock *EmitLoweredThreadPointerFromGs( |
+ MachineInstr *MI, |
+ MachineBasicBlock *BB) const; |
+ // @LOCALMOD-END |
+ |
MachineBasicBlock *EmitLoweredTLSCall(MachineInstr *MI, |
MachineBasicBlock *BB) const; |