llvm-project/lldb/source/Expression
Sean Callanan 8dfb68e039 Refactored the expression parser so that the IR
and the JITted code are managed by a standalone
class that handles memory management itself.

I have removed RecordingMemoryManager and
ProcessDataAllocator, which filled similar roles
and had confusing ownership, with a common class
called IRExecutionUnit.  The IRExecutionUnit
manages all allocations ever made for an expression
and frees them when it goes away.  It also contains
the code generator and can vend the Module for an
expression to other clases.

The end goal here is to make the output of the
expression parser re-usable; that is, to avoid
re-parsing when re-parsing isn't necessary.

I've also cleaned up some code and used weak pointers
in more places.  Please let me know if you see any
leaks; I checked myself as well but I might have
missed a case.

llvm-svn: 177364
2013-03-19 00:10:07 +00:00
..
ASTDumper.cpp Pulled in a new version of LLVM/Clang to solve a variety 2011-11-15 02:11:17 +00:00
ASTResultSynthesizer.cpp Removed a possible use of unchecked NULL from 2012-12-18 00:50:17 +00:00
ASTStructExtractor.cpp Brought LLDB top-of-tree into sync with LLVM/Clang 2012-09-24 22:25:51 +00:00
CMakeLists.txt Adding CMake build system to LLDB. Some known issues remain: 2013-02-21 20:58:22 +00:00
ClangASTSource.cpp Fixed a problem where we didn't return TypedefNameDecls 2013-03-14 17:21:53 +00:00
ClangExpressionDeclMap.cpp Switch from CreateTypeSourceInfo, which allocates 2013-03-12 21:22:00 +00:00
ClangExpressionParser.cpp Refactored the expression parser so that the IR 2013-03-19 00:10:07 +00:00
ClangExpressionVariable.cpp http://llvm.org/bugs/show_bug.cgi?id=11618 2012-01-06 00:35:38 +00:00
ClangFunction.cpp Refactored the expression parser so that the IR 2013-03-19 00:10:07 +00:00
ClangPersistentVariables.cpp I have brought LLDB up-to-date with top of tree 2012-02-04 08:49:35 +00:00
ClangUserExpression.cpp Refactored the expression parser so that the IR 2013-03-19 00:10:07 +00:00
ClangUtilityFunction.cpp Refactored the expression parser so that the IR 2013-03-19 00:10:07 +00:00
DWARFExpression.cpp <rdar://problem/13421412> 2013-03-14 18:31:44 +00:00
ExpressionSourceCode.cpp Centralized the expression prefixes that are used for both expressions and utility functions. 2013-02-13 23:57:48 +00:00
IRDynamicChecks.cpp Rewrite #includes for llvm/Foo.h to llvm/IR/Foo.h as appropriate to reflect the 2013-01-02 12:20:07 +00:00
IRExecutionUnit.cpp Refactored the expression parser so that the IR 2013-03-19 00:10:07 +00:00
IRForTarget.cpp Refactored the expression parser so that the IR 2013-03-19 00:10:07 +00:00
IRInterpreter.cpp Fixes in the IRInterpreter: 2013-02-15 23:07:52 +00:00
Makefile Merged Eli Friedman's linux build changes where he added Makefile files that 2010-07-09 20:39:50 +00:00