llvm-6502/include/llvm/MC
Reid Kleckner 5b8e73ef81 Generate native unwind info on Win64
This patch enables LLVM to emit Win64-native unwind info rather than
DWARF CFI.  It handles all corner cases (I hope), including stack
realignment.

Because the unwind info is not flexible enough to describe stack frames
with a gap of unknown size in the middle, such as the one caused by
stack realignment, I modified register spilling code to place all spills
into the fixed frame slots, so that they can be accessed relative to the
frame pointer.

Patch by Vadim Chugunov!

Reviewed By: rnk

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211399 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-20 20:35:47 +00:00
..
MCParser Remove redundant typedef from MCAsmParserSemaCallback 2014-06-08 05:14:54 +00:00
ConstantPools.h [ARM] [MC] Refactor the constant pool classes 2014-06-18 18:17:25 +00:00
MachineLocation.h Add inequality operator for MachineLocation. 2014-04-01 21:54:52 +00:00
MCAsmBackend.h Completely rewrite ELFObjectWriter::RecordRelocation. 2014-03-29 06:26:49 +00:00
MCAsmInfo.h Generate native unwind info on Win64 2014-06-20 20:35:47 +00:00
MCAsmInfoCOFF.h [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-08 07:02:02 +00:00
MCAsmInfoDarwin.h
MCAsmInfoELF.h
MCAsmLayout.h Move getBaseSymbol somewhere the COFF writer can use. 2014-05-01 13:24:25 +00:00
MCAssembler.h Centralize the handling of the thumb bit. 2014-04-29 12:46:50 +00:00
MCAtom.h
MCCodeEmitter.h
MCCodeGenInfo.h
MCContext.h Emit DWARF info for all code section in an assembly file 2014-06-19 15:52:37 +00:00
MCDirectives.h Darwin: Add assembler directives to create version-min load commands. 2014-03-18 22:09:05 +00:00
MCDisassembler.h [C++11] Replace OwningPtr with std::unique_ptr in places where it doesn't break the API. 2014-04-21 09:34:48 +00:00
MCDwarf.h Pass a MCObjectStreamer instead of a MCStreamer when possible. 2014-05-12 14:28:48 +00:00
MCELF.h
MCELFObjectWriter.h Completely rewrite ELFObjectWriter::RecordRelocation. 2014-03-29 06:26:49 +00:00
MCELFStreamer.h Make getOrCreateSymbolData non virtual. 2014-04-27 17:23:37 +00:00
MCELFSymbolFlags.h Centralize the handling of the thumb bit. 2014-04-29 12:46:50 +00:00
MCExpr.h [mips][mips64r6] Add Relocations R_MIPS_PCHI16, R_MIPS_PCLO16 2014-05-27 14:58:51 +00:00
MCExternalSymbolizer.h Remove redundant symbolization support from MCDisassembler interface. 2014-04-11 20:07:58 +00:00
MCFixedLenDisassembler.h
MCFixup.h Fix pr19645. 2014-05-03 19:57:04 +00:00
MCFixupKindInfo.h
MCFunction.h Use std::unique_ptr to manage MCBasicBlocks in MCFunction. 2014-04-15 04:56:29 +00:00
MCInst.h [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-13 04:57:38 +00:00
MCInstBuilder.h
MCInstPrinter.h [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-13 04:57:38 +00:00
MCInstrAnalysis.h
MCInstrDesc.h [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-13 04:57:38 +00:00
MCInstrInfo.h
MCInstrItineraries.h [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-13 04:57:38 +00:00
MCLabel.h
MCLinkerOptimizationHint.h Avoid in-class initializer from r210747 2014-06-12 04:27:37 +00:00
MCMachObjectWriter.h MachO: support N_INDR aliases in assembly files. 2014-05-30 13:22:59 +00:00
MCMachOSymbolFlags.h
MCModule.h Add some missing includes for various standard library implementations. 2014-04-18 16:46:29 +00:00
MCModuleYAML.h
MCObjectDisassembler.h
MCObjectFileInfo.h Revert "DebugInfo: Don't put fission type units in comdat sections." 2014-05-21 23:27:41 +00:00
MCObjectStreamer.h Emit DWARF info for all code section in an assembly file 2014-06-19 15:52:37 +00:00
MCObjectSymbolizer.h Update MCSymbolizer and its subclasses' constructors to reflect the fact that 2014-03-27 02:39:01 +00:00
MCObjectWriter.h Completely rewrite ELFObjectWriter::RecordRelocation. 2014-03-29 06:26:49 +00:00
MCRegisterInfo.h [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-13 04:57:38 +00:00
MCRelocationInfo.h
MCSchedule.h Move late partial-unrolling thresholds into the processor definitions 2014-05-08 09:14:44 +00:00
MCSection.h
MCSectionCOFF.h Fix a few issues with comdat handling on COFF. 2014-06-06 19:26:12 +00:00
MCSectionELF.h raw_ostream: Forward declare OpenFlags and include FileSystem.h only where necessary. 2014-04-29 23:26:49 +00:00
MCSectionMachO.h MC: Use MachO::SectionType for MCSectionMachO::getType's return type 2014-03-07 18:49:54 +00:00
MCStreamer.h Emit DWARF info for all code section in an assembly file 2014-06-19 15:52:37 +00:00
MCSubtargetInfo.h ArrayRef-ize the Feature and Processor tables for SubtargetFeatures. 2014-05-06 20:23:04 +00:00
MCSymbol.h [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-13 04:57:38 +00:00
MCSymbolizer.h Temporarily remove assert while I dig in to issues that it's causing for LLDB. 2014-03-27 22:45:42 +00:00
MCTargetAsmParser.h AsmMatchers: Use unique_ptr to manage ownership of MCParsedAsmOperand 2014-06-08 16:18:35 +00:00
MCTargetOptions.h Move -dwarf-version to an MC level command line option so it's 2014-06-19 06:22:08 +00:00
MCTargetOptionsCommandFlags.h Move -dwarf-version to an MC level command line option so it's 2014-06-19 06:22:08 +00:00
MCValue.h Fix pr19645. 2014-05-03 19:57:04 +00:00
MCWin64EH.h [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-13 04:57:38 +00:00
MCWinCOFFObjectWriter.h MC: introduce ability to restrict recorded relocations 2014-05-21 23:17:50 +00:00
MCWinCOFFStreamer.h MC: formalise some assertions into proper errors 2014-05-22 02:18:10 +00:00
SectionKind.h
SubtargetFeature.h ArrayRef-ize the Feature and Processor tables for SubtargetFeatures. 2014-05-06 20:23:04 +00:00