1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 20:12:56 +02:00
llvm-mirror/lib/MC
Kevin Enderby 767a9365f0 This is the last major patch to implement support for the .loc directive
and output the dwarf line number tables.  This contains the code to emit and
encode the dwarf line tables from the previously gathered information in the
MCLineSection objects.  This contains all the details to encode the line and
address deltas into the dwarf line table.

To do this an MCDwarfLineAddrFragment has been added.

Also this moves the interface code out of Mach-O streamer into
MCDwarf so it should be useable by other object file formats.

There is now one call to be made from an MCObjectStreamer
EmitInstruction() method:
   MCLineEntry::Make(this, getCurrentSection());
to create a line entry after each instruction is assembled.

And one call call to be made from an MCObjectStreamer Finish() method:
   MCDwarfFileTable::Emit(this, DwarfLineSection);
when getContext().hasDwarfFiles() is true and is passed a object file specific
MCSection where to emit the dwarf file and the line tables.

This appears to now be correct for 32-bit targets, at least x86.  But the
relocation entries for 64-bit Darwin needs some further work which is next
up to work on.  So for now the 64-bit Mach-O target does not output the
dwarf file and line tables.

llvm-svn: 115157
2010-09-30 16:52:03 +00:00
..
MCDisassembler Fixed a crash in the enhanced disassembler where 2010-09-23 02:14:12 +00:00
MCParser This is the last major patch to implement support for the .loc directive 2010-09-30 16:52:03 +00:00
CMakeLists.txt Add ELF ObjectWriter and Streamer support. 2010-08-16 18:35:43 +00:00
ELFObjectWriter.cpp Correctly produce R_X86_64_32 or R_X86_64_32S. 2010-09-30 03:11:42 +00:00
MachObjectWriter.cpp Correctly produce R_X86_64_32 or R_X86_64_32S. 2010-09-30 03:11:42 +00:00
Makefile start straightening out libedis's dependencies and make it fit 2010-07-20 18:25:19 +00:00
MCAsmInfo.cpp allow target-specific label suffixes, patch by Yuri Gribov! 2010-09-22 22:19:53 +00:00
MCAsmInfoCOFF.cpp Revert part of my last commit. the mingw32 build bot doesn't seem to like it. 2010-08-23 05:25:23 +00:00
MCAsmInfoDarwin.cpp Fix .debug_range for linux. Patch by Krister Wombell. 2010-09-02 16:43:44 +00:00
MCAsmStreamer.cpp Tiny patch for proof-of-concept cleanup of ARMAsmPrinter::EmitStartOfAsmFile() 2010-09-30 02:45:56 +00:00
MCAssembler.cpp This is the last major patch to implement support for the .loc directive 2010-09-30 16:52:03 +00:00
MCCodeEmitter.cpp MCCodeEmitter: Add target independent fixup flag for is-pc-relative. 2010-03-19 10:43:23 +00:00
MCContext.cpp Move logic of determining ELF entsize from the .s printer to initialization 2010-09-30 05:59:22 +00:00
MCDisassembler.cpp No newline at end of files. 2009-10-05 18:43:19 +00:00
MCDwarf.cpp This is the last major patch to implement support for the .loc directive 2010-09-30 16:52:03 +00:00
MCELFStreamer.cpp Tiny patch for proof-of-concept cleanup of ARMAsmPrinter::EmitStartOfAsmFile() 2010-09-30 02:45:56 +00:00
MCExpr.cpp Changes EvaluateAsAbsolute() to return the "current value" of the expression 2010-09-30 16:42:21 +00:00
MCInst.cpp MC: Change MCInst::dump_pretty to not include a trailing newline. 2010-05-26 15:18:13 +00:00
MCInstPrinter.cpp add a new MCInstPrinter::getOpcodeName interface, when it is 2010-02-11 22:39:10 +00:00
MCLabel.cpp Added support in MC for Directional Local Labels. 2010-05-17 23:08:19 +00:00
MCLoggingStreamer.cpp Add a InitSections method to the streamer interface. 2010-09-15 21:48:40 +00:00
MCMachOStreamer.cpp This is the last major patch to implement support for the .loc directive 2010-09-30 16:52:03 +00:00
MCNullStreamer.cpp Add a InitSections method to the streamer interface. 2010-09-15 21:48:40 +00:00
MCObjectStreamer.cpp Avoid some Mach-O specific alignment being done on ELF. 2010-09-22 22:27:05 +00:00
MCObjectWriter.cpp This is the last major patch to implement support for the .loc directive 2010-09-30 16:52:03 +00:00
MCSection.cpp switch MCSectionCOFF from a syntactic to semantic representation, 2010-05-07 17:17:41 +00:00
MCSectionCOFF.cpp MC: Move COFF enumeration constants to llvm/Support/COFF.h, patch by Michael 2010-07-01 20:07:24 +00:00
MCSectionELF.cpp Move logic of determining ELF entsize from the .s printer to initialization 2010-09-30 05:59:22 +00:00
MCSectionMachO.cpp Fix section attribute name. 2010-05-21 21:08:52 +00:00
MCStreamer.cpp This is the last major patch to implement support for the .loc directive 2010-09-30 16:52:03 +00:00
MCSymbol.cpp MC/Mach-O: Mark absolute variable's appropriately, and add Mach-O support for 2010-05-05 19:01:05 +00:00
MCValue.cpp MCValue: Change to holding MCSymbolRefExprs instead of MCSymbols, we will need this for accessing to symbol modifiers. 2010-03-18 00:59:10 +00:00
TargetAsmBackend.cpp MC/Darwin: Add a new target hook for whether the target uses "reliable" symbol differences, basically whether the assembler should attempt to understand atoms when using scattered symbols. 2010-03-18 00:58:53 +00:00
WinCOFFObjectWriter.cpp Correctly produce R_X86_64_32 or R_X86_64_32S. 2010-09-30 03:11:42 +00:00
WinCOFFStreamer.cpp Avoid some Mach-O specific alignment being done on ELF. 2010-09-22 22:27:05 +00:00