Collect IRExecutionUnits as part of persistent expression state.
authorSean Callanan <scallanan@apple.com>
Mon, 21 Mar 2016 22:23:38 +0000 (22:23 +0000)
committerSean Callanan <scallanan@apple.com>
Mon, 21 Mar 2016 22:23:38 +0000 (22:23 +0000)
commitbd4dc69308f426cfee3001c0dec612c96e6133d7
treef225f7c081b2a32caafcdb92b5a18d8a7f8a6f8d
parentb57b002253d5fbd2eba464b7588842847c0ad565
Collect IRExecutionUnits as part of persistent expression state.

IRExecutionUnits contain code and data that persistent declarations can
depend on.  In order to keep them alive and provide for lookup of these
symbols, we now allow any PersistentExpressionState to keep a list of
execution units.  Then, when doing symbol lookup on behalf of an
expression, any IRExecutionUnit can consult the persistent expression
states on a particular Target to find the appropriate symbol.

<rdar://problem/22864976>

llvm-svn: 263995
lldb/include/lldb/Expression/ExpressionVariable.h
lldb/include/lldb/Expression/IRExecutionUnit.h
lldb/source/Expression/ExpressionVariable.cpp
lldb/source/Expression/IRExecutionUnit.cpp
lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.h