llvm-6502/include/llvm
Lang Hames 20425d92df Add an option to MCJIT to have it forward all sections to the
RTDyldMemoryManager, regardless of whether it thinks they're "required for
execution".

Currently, RuntimeDyld only passes sections that are "required for execution"
to the RTDyldMemoryManager, and takes "required for execution" to mean exactly
"contains symbols or relocations". There are two problems with this:
(1) It can drop sections with anonymous data that is referenced by code.
(2) It leaves the JIT client no way to inspect interesting sections that aren't
    actually required to run the program (e.g dwarf sections).

A test case is still in the works.

Future work: We may want to replace this with a generic section filtering
mechanism, but that will require more consideration. For now, this flag at least
allows clients to volunteer to do the filtering themselves.

Fixes <rdar://problem/15177691>.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204398 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-20 21:06:46 +00:00
..
ADT When destroying a StringMap, just iterate over the map and destroy the contained elements. Don't reset them back to 0 as their values aren't needed any more. This results in ~StringMap() being mostly empty for POD types in BumpPtrAllocators 2014-03-19 00:23:30 +00:00
Analysis Revert "[Constant Hoisting] Extend coverage of the constant hoisting pass." 2014-03-20 20:17:13 +00:00
AsmParser Move the LLVM IR asm writer header files into the IR directory, as they 2014-01-07 12:34:26 +00:00
Bitcode Replace OwningPtr<T> with std::unique_ptr<T>. 2014-03-06 05:51:42 +00:00
CodeGen Really REALLY finish adding const to the MachineRegisterInfo iterator range methods. 2014-03-17 19:34:51 +00:00
Config static link polly into tools 2014-03-14 04:04:14 +00:00
DebugInfo Revert "Clean up SmallString a bit" 2014-03-09 06:22:58 +00:00
ExecutionEngine Add an option to MCJIT to have it forward all sections to the 2014-03-20 21:06:46 +00:00
IR Expose "noduplicate" attribute as a property for intrinsics. 2014-03-18 23:51:07 +00:00
IRReader
LineEditor Replace OwningPtr<T> with std::unique_ptr<T>. 2014-03-06 05:51:42 +00:00
Linker [Layering] Sink Linker.h into a Linker subdirectory to make it 2014-03-06 03:42:23 +00:00
LTO Replace OwningPtr<T> with std::unique_ptr<T>. 2014-03-06 05:51:42 +00:00
MC Mark alias symbols as microMIPS if necessary. Differential Revision: http://llvm-reviews.chandlerc.com/D3080 2014-03-20 09:44:49 +00:00
Object Object: Abstract out the determination of function line symbols 2014-03-20 06:28:55 +00:00
Option [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-05 07:52:44 +00:00
Support Remove dead and incorrect code. 2014-03-20 17:39:04 +00:00
TableGen [C++11] Add 'override' keywords to tablegen code. 2014-03-05 05:17:42 +00:00
Target [TableGen] Optionally forbid overlap between named and positional operands 2014-03-13 07:57:54 +00:00
Transforms Remove LowerInvoke's obsolete "-enable-correct-eh-support" option 2014-03-20 19:54:47 +00:00
CMakeLists.txt The llvm_headers_do_not_build project needs to be excluded from the default build, otherwise it gets built (at least in Visual Studio 2013). 2014-01-28 16:07:10 +00:00
InitializePasses.h Pass to emit DWARF path discriminators. 2014-03-03 20:06:11 +00:00
LinkAllIR.h [cleanup] Move the Dominators.h and Verifier.h headers into the IR 2014-01-13 09:26:24 +00:00
LinkAllPasses.h Revert "Revert "Add Constant Hoisting Pass" (r200034)" 2014-01-25 02:02:55 +00:00
Pass.h [C++11] Add 'override' keyword to IR library. 2014-03-05 06:35:38 +00:00
PassAnalysisSupport.h
PassManager.h
PassRegistry.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
PassSupport.h Revert "[C++11] Replace LLVM atomics with std::atomic." 2014-03-03 18:02:34 +00:00