1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 11:33:24 +02:00
llvm-mirror/lib/CodeGen/AsmPrinter
Rafael Espindola cb9ca86245 Replace PROLOG_LABEL with a new CFI_INSTRUCTION.
The old system was fairly convoluted:
* A temporary label was created.
* A single PROLOG_LABEL was created with it.
* A few MCCFIInstructions were created with the same label.

The semantics were that the cfi instructions were mapped to the PROLOG_LABEL
via the temporary label. The output position was that of the PROLOG_LABEL.
The temporary label itself was used only for doing the mapping.

The new CFI_INSTRUCTION has a 1:1 mapping to MCCFIInstructions and points to
one by holding an index into the CFI instructions of this function.

I did consider removing MMI.getFrameInstructions completelly and having
CFI_INSTRUCTION own a MCCFIInstruction, but MCCFIInstructions have non
trivial constructors and destructors and are somewhat big, so the this setup
is probably better.

The net result is that we don't create temporary labels that are never used.

llvm-svn: 203204
2014-03-07 06:08:31 +00:00
..
ARMException.cpp Generate the DWARF stack frame decode operations in the function prologue for ARM/Thumb functions. 2014-02-14 17:19:07 +00:00
AsmPrinter.cpp Replace PROLOG_LABEL with a new CFI_INSTRUCTION. 2014-03-07 06:08:31 +00:00
AsmPrinterDwarf.cpp Move some dwarf emission routines to AsmPrinterDwarf.cpp. 2014-03-07 01:44:14 +00:00
AsmPrinterHandler.h Remove weak vtables. No functional change. 2013-12-14 12:23:14 +00:00
AsmPrinterInlineAsm.cpp Replace OwningPtr<T> with std::unique_ptr<T>. 2014-03-06 05:51:42 +00:00
CMakeLists.txt Reland r200340 - 'Add line table debug info to COFF files when using a win32 triple' 2014-01-30 01:39:17 +00:00
DIE.cpp Remove the last of the special case code for emitting attributes. 2014-03-06 00:00:56 +00:00
DIE.h Add a DIELocList class to handle pointers into the location list. 2014-03-05 22:41:20 +00:00
DIEHash.cpp Move DIEEntry handling inside the main switch statement. 2014-03-06 18:59:42 +00:00
DIEHash.h Add support for hashing attributes with DW_FORM_block. This required 2014-02-20 02:50:45 +00:00
DwarfAccelTable.cpp Rename DwarfUnits to DwarfFile to help avoid some naming confusion. 2013-12-05 18:06:10 +00:00
DwarfAccelTable.h Rename DwarfUnits to DwarfFile to help avoid some naming confusion. 2013-12-05 18:06:10 +00:00
DwarfCFIException.cpp Add back r201608, r201622, r201624 and r201625 2014-02-19 17:23:20 +00:00
DwarfDebug.cpp Replace PROLOG_LABEL with a new CFI_INSTRUCTION. 2014-03-07 06:08:31 +00:00
DwarfDebug.h Constify a few things with DotDebugLocEntry. 2014-03-06 19:51:16 +00:00
DwarfException.cpp Micro optimization: this code only needs to look at eh labels. 2014-03-06 16:31:40 +00:00
DwarfException.h Generate the DWARF stack frame decode operations in the function prologue for ARM/Thumb functions. 2014-02-14 17:19:07 +00:00
DwarfUnit.cpp DebugInfo: Emit DW_TAG_subprogram's DW_AT_high_pc as an offset from the low_pc 2014-03-07 01:30:55 +00:00
DwarfUnit.h DebugInfo: Emit DW_TAG_subprogram's DW_AT_high_pc as an offset from the low_pc 2014-03-07 01:30:55 +00:00
ErlangGCPrinter.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
Makefile
OcamlGCPrinter.cpp Move the llvm mangler to lib/IR. 2014-01-07 21:19:40 +00:00
Win64Exception.cpp Add back r201608, r201622, r201624 and r201625 2014-02-19 17:23:20 +00:00
WinCodeViewLineTables.cpp Reland r200340 - 'Add line table debug info to COFF files when using a win32 triple' 2014-01-30 01:39:17 +00:00
WinCodeViewLineTables.h [Layering] Move DebugInfo.h into the IR library where its implementation 2014-03-06 00:46:21 +00:00