diff options
author | Eric Christopher <echristo@apple.com> | 2010-06-03 04:07:48 +0000 |
---|---|---|
committer | Eric Christopher <echristo@apple.com> | 2010-06-03 04:07:48 +0000 |
commit | 30ef0e5658b0b8b04437f73f74162d5d72923f29 (patch) | |
tree | 9b6236c0d516aebb15cf71027e4e2e03ddf1164a /lib/Target/X86/X86InstrInfo.h | |
parent | 162d3ba464c263256b6876674ceee2cc99969adf (diff) | |
download | external_llvm-30ef0e5658b0b8b04437f73f74162d5d72923f29.zip external_llvm-30ef0e5658b0b8b04437f73f74162d5d72923f29.tar.gz external_llvm-30ef0e5658b0b8b04437f73f74162d5d72923f29.tar.bz2 |
Add first pass at darwin tls compiler support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105381 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrInfo.h')
-rw-r--r-- | lib/Target/X86/X86InstrInfo.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/Target/X86/X86InstrInfo.h b/lib/Target/X86/X86InstrInfo.h index 2c20232..f5c8022 100644 --- a/lib/Target/X86/X86InstrInfo.h +++ b/lib/Target/X86/X86InstrInfo.h @@ -173,7 +173,19 @@ namespace X86II { /// indicates that the reference is actually to "FOO$non_lazy_ptr -PICBASE", /// which is a PIC-base-relative reference to a hidden dyld lazy pointer /// stub. - MO_DARWIN_HIDDEN_NONLAZY_PIC_BASE + MO_DARWIN_HIDDEN_NONLAZY_PIC_BASE, + + /// MO_TLVP - On a symbol operand this indicates that the immediate is + /// some TLS offset. + /// + /// This is the TLS offset for the Darwin TLS mechanism. + MO_TLVP, + + /// MO_TLVP_PIC_BASE - On a symbol operand this indicates that the immediate + /// is some TLS offset from the picbase. + /// + /// This is the 32-bit TLS offset for Darwin TLS in PIC mode. + MO_TLVP_PIC_BASE }; } @@ -203,6 +215,7 @@ inline static bool isGlobalRelativeToPICBase(unsigned char TargetFlag) { case X86II::MO_PIC_BASE_OFFSET: // Darwin local global. case X86II::MO_DARWIN_NONLAZY_PIC_BASE: // Darwin/32 external global. case X86II::MO_DARWIN_HIDDEN_NONLAZY_PIC_BASE: // Darwin/32 hidden global. + case X86II::MO_TLVP: // ??? Pretty sure.. return true; default: return false; |