llvm-6502/include/llvm/MC
Chih-Hung Hsieh dc73dc09f1 Implement target independent TLS compatible with glibc's emutls.c.
The 'common' section TLS is not implemented.
Current C/C++ TLS variables are not placed in common section.
DWARF debug info to get the address of TLS variables is not generated yet.

clang and driver changes in http://reviews.llvm.org/D10524

  Added -femulated-tls flag to select the emulated TLS model,
  which will be used for old targets like Android that do not
  support ELF TLS models.

Added TargetLowering::LowerToTLSEmulatedModel as a target-independent
function to convert a SDNode of TLS variable address to a function call
to __emutls_get_address.

Added into lib/Target/*/*ISelLowering.cpp to call LowerToTLSEmulatedModel
for TLSModel::Emulated. Although all targets supporting ELF TLS models are
enhanced, emulated TLS model has been tested only for Android ELF targets.
Modified AsmPrinter.cpp to print the emutls_v.* and emutls_t.* variables for
emulated TLS variables.
Modified DwarfCompileUnit.cpp to skip some DIE for emulated TLS variabls.

TODO: Add proper DIE for emulated TLS variables.
      Added new unit tests with emulated TLS.

Differential Revision: http://reviews.llvm.org/D10522


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@243438 91177308-0d34-0410-b5e6-96231b3b80d8
2015-07-28 16:24:05 +00:00
..
MCParser Make header parse standalone. NFC. 2015-06-26 19:04:11 +00:00
ConstantPools.h Move alignment from MCSectionData to MCSection. 2015-05-21 19:20:38 +00:00
MachineLocation.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCAsmBackend.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCAsmInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCAsmInfoCOFF.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCAsmInfoDarwin.h
MCAsmInfoELF.h Move alignment from MCSectionData to MCSection. 2015-05-21 19:20:38 +00:00
MCAsmLayout.h Merge MCSymbol and MCSymbolData. 2015-05-29 20:31:23 +00:00
MCAssembler.h Devirtualize and pack MCFragment to reduce memory usage. 2015-06-17 22:01:28 +00:00
MCCodeEmitter.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCCodeGenInfo.h MC: MCCodeGenInfo naming update. NFC. 2015-05-15 19:13:31 +00:00
MCContext.h Rename llvm.frameescape and llvm.framerecover to localescape and localrecover 2015-07-07 22:25:32 +00:00
MCDirectives.h
MCDisassembler.h Remove unused MCRelocationInfo.h include from MCDisassembler.h. NFC 2015-05-19 18:18:49 +00:00
MCDwarf.h MC: Shrink MCDwarfLoc/MCLineEntry 2015-07-10 23:55:34 +00:00
MCELFObjectWriter.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCELFStreamer.h Devirtualize and pack MCFragment to reduce memory usage. 2015-06-17 22:01:28 +00:00
MCExpr.h MC: Add target hook to control symbol quoting 2015-06-09 00:31:39 +00:00
MCExternalSymbolizer.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCFixedLenDisassembler.h [TableGen] Improve decoding options for non-orthogonal instructions 2015-07-15 08:04:27 +00:00
MCFixup.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCFixupKindInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCInst.h [MC] Allowing operands to be erased from MCInst. 2015-06-04 19:49:52 +00:00
MCInstBuilder.h MC: Modernize MCOperand API naming. NFC. 2015-05-13 18:37:00 +00:00
MCInstPrinter.h [MC] Function naming NFC. 2015-06-07 20:29:37 +00:00
MCInstrAnalysis.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCInstrDesc.h MC: Constify MCSubtargetInfo in getDeprecationInfo(), NFC 2015-07-08 17:30:55 +00:00
MCInstrInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCInstrItineraries.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCLabel.h MC: Tidy up formatting a bit. NFC. 2015-06-01 23:55:02 +00:00
MCLinkerOptimizationHint.h Fix -Wextra-semi warnings. 2015-07-22 20:46:11 +00:00
MCMachObjectWriter.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCObjectFileInfo.h Implement target independent TLS compatible with glibc's emutls.c. 2015-07-28 16:24:05 +00:00
MCObjectStreamer.h MC: Prune \return corresponding to r239552. [-Wdocumentation] 2015-06-11 23:04:56 +00:00
MCObjectWriter.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCRegisterInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCRelocationInfo.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCSchedule.h ARM: Enable MachineScheduler and disable PostRAScheduler for swift. 2015-07-17 23:18:30 +00:00
MCSection.h Devirtualize and pack MCFragment to reduce memory usage. 2015-06-17 22:01:28 +00:00
MCSectionCOFF.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
MCSectionELF.h Store whether a symbol is a comdat signature in MCSymbolELF. 2015-06-03 21:41:59 +00:00
MCSectionMachO.h Create symbols marking the start of a section earlier. 2015-03-10 22:00:25 +00:00
MCStreamer.h [X86] Add .intel_syntax noprefix directive to intel-syntax x86 asm output 2015-07-22 10:49:44 +00:00
MCSubtargetInfo.h MC: Only allow changing feature bits in MCSubtargetInfo 2015-07-10 22:52:15 +00:00
MCSymbol.h [MC] Switch static const to an enum to silence MSVC linker warnings 2015-07-10 21:50:04 +00:00
MCSymbolCOFF.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCSymbolELF.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCSymbolizer.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCSymbolMachO.h Fix include guard typo introduced in r239315. 2015-07-11 09:40:28 +00:00
MCTargetAsmParser.h [llvm-mc] Pushing plumbing through for --fatal-warnings flag. 2015-07-27 21:56:53 +00:00
MCTargetOptions.h [llvm-mc] Add --no-warn flag with -W alias to disable outputting warnings while assembling. 2015-07-27 22:39:14 +00:00
MCTargetOptionsCommandFlags.h [llvm-mc] Add --no-warn flag with -W alias to disable outputting warnings while assembling. 2015-07-27 22:39:14 +00:00
MCValue.h MC: Tidy up comments and clean up formatting a bit. NFC. 2015-05-02 00:44:14 +00:00
MCWin64EH.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCWinCOFFObjectWriter.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCWinCOFFStreamer.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
MCWinEH.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
SectionKind.h
StringTableBuilder.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
SubtargetFeature.h Bump the size of FeatureBitset up to 96-bits. 2015-07-21 01:39:22 +00:00
YAML.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00