llvm/lib/CodeGen/AsmPrinter
Reid Kleckner 7f90dd2353 [MC] Create unique .pdata sections for every .text section
Summary:
This adds a unique ID to the COFF section uniquing map, similar to the
one we have for ELF.  The unique id is not currently exposed via the
assembler because we don't have a use case for it yet. Users generally
create .pdata with the .seh_* family of directives, and the assembler
internally needs to produce .pdata and .xdata sections corresponding to
the code section.

The association between .text sections and the assembler-created .xdata
and .pdata sections is maintained as an ID field of MCSectionCOFF. The
CFI-related sections are created with the given unique ID, so if more
code is added to the same text section, we can find and reuse the CFI
sections that were already created.

Reviewers: majnemer, rafael

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@268331 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-02 23:22:18 +00:00
..
AddressPool.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
AddressPool.h One more batch of self-containing headers. 2016-01-27 19:29:56 +00:00
ARMException.cpp [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
AsmPrinter.cpp CodeGen: Use PLT relocations for relative references to unnamed_addr functions. 2016-04-22 20:40:10 +00:00
AsmPrinterDwarf.cpp Generalize ownership/passing semantics to allow dsymutil to own abbreviations via unique_ptr 2015-11-18 00:34:10 +00:00
AsmPrinterHandler.h Extract the method to begin and end a fragment in AsmPrinterHandler in their own method. NFC 2016-02-26 20:30:37 +00:00
AsmPrinterInlineAsm.cpp Enable the %s modifier in inline asm template string 2016-02-04 16:18:08 +00:00
ByteStreamer.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
CMakeLists.txt [codeview] Describe int local variables using .cv_def_range 2016-02-10 20:55:49 +00:00
CodeViewDebug.cpp Suppress a -Wunused-variable warning in release builds. 2016-03-20 01:17:54 +00:00
CodeViewDebug.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
DbgValueHistoryCalculator.cpp Consider regmasks when computing register-based DBG_VALUE live ranges 2016-03-25 17:54:46 +00:00
DbgValueHistoryCalculator.h One more batch of self-containing headers. 2016-01-27 19:29:56 +00:00
DebugHandlerBase.cpp Sink DI metadata usage out of MachineInstr.h and MachineInstrBuilder.h 2016-04-14 18:29:59 +00:00
DebugHandlerBase.h Make header self-contained. NFC. 2016-02-18 18:02:48 +00:00
DebugLocEntry.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
DebugLocStream.cpp AsmPrinter: Don't emit empty .debug_loc entries 2015-06-21 16:54:56 +00:00
DebugLocStream.h AsmPrinter: Don't emit empty .debug_loc entries 2015-06-21 16:54:56 +00:00
DIE.cpp DwarfDebug: emit type units immediately. 2016-02-11 19:57:46 +00:00
DIEHash.cpp DwarfDebug: emit type units immediately. 2016-02-11 19:57:46 +00:00
DIEHash.h [AsmPrinter] Prune dead code. NFC. 2015-10-15 17:16:32 +00:00
DwarfAccelTable.cpp Fix some Clang-tidy modernize warnings, other minor fixes. 2015-11-04 22:32:32 +00:00
DwarfAccelTable.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DwarfCFIException.cpp [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
DwarfCompileUnit.cpp Reverting 268054 & 268063 as they caused PR27579. 2016-04-30 01:44:07 +00:00
DwarfCompileUnit.h Reverting 268054 & 268063 as they caused PR27579. 2016-04-30 01:44:07 +00:00
DwarfDebug.cpp Reverting 268054 & 268063 as they caused PR27579. 2016-04-30 01:44:07 +00:00
DwarfDebug.h Reverting 268054 & 268063 as they caused PR27579. 2016-04-30 01:44:07 +00:00
DwarfException.h Extract the method to begin and end a fragment in AsmPrinterHandler in their own method. NFC 2016-02-26 20:30:37 +00:00
DwarfExpression.cpp DwarfDebug: Support floating point constants in location lists. 2016-04-08 00:38:37 +00:00
DwarfExpression.h DwarfDebug: Support floating point constants in location lists. 2016-04-08 00:38:37 +00:00
DwarfFile.cpp DwarfDebug: emit type units immediately. 2016-02-11 19:57:46 +00:00
DwarfFile.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
DwarfStringPool.cpp AsmPrinter: Avoid creating symbols in DwarfStringPool 2015-05-24 16:58:59 +00:00
DwarfStringPool.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DwarfUnit.cpp Reverting 268054 & 268063 as they caused PR27579. 2016-04-30 01:44:07 +00:00
DwarfUnit.h Reverting 268054 & 268063 as they caused PR27579. 2016-04-30 01:44:07 +00:00
EHStreamer.cpp Use make_range(rbegin(), rend()) to allow foreach loops. NFC. 2015-07-24 21:13:43 +00:00
EHStreamer.h Extract the method to begin and end a fragment in AsmPrinterHandler in their own method. NFC 2016-02-26 20:30:37 +00:00
ErlangGCPrinter.cpp Move most user of TargetMachine::getDataLayout to the Module one 2015-07-16 06:11:10 +00:00
LLVMBuild.txt Reland "[CodeView] Use assembler directives for line tables" 2016-01-29 00:49:42 +00:00
OcamlGCPrinter.cpp Move most user of TargetMachine::getDataLayout to the Module one 2015-07-16 06:11:10 +00:00
WinException.cpp [MC] Create unique .pdata sections for every .text section 2016-05-02 23:22:18 +00:00
WinException.h [WinEH] Move WinEHFuncInfo from MachineModuleInfo to MachineFunction 2015-11-17 21:10:25 +00:00