[Lldb-commits] [PATCH] D17027: [expression evaluator] Allow runtimes to execute custom LLVM ModulePasses over the generated IR at various stages after expression compilation.

Luke Drummond via lldb-commits lldb-commits at lists.llvm.org
Tue Feb 9 07:04:20 PST 2016


ldrumm created this revision.
ldrumm added reviewers: jingham, spyffe.
ldrumm added a subscriber: lldb-commits.

During expression evaluation, the `ClangExpressionParser` preforms a number of hard-coded fixups on the expression's IR before the module is assembled and dispatched to be run in a `ThreadPlan`.

This patch allows the runtimes to register LLVM passes to be run over the generated IR, that they may perform language or architechture-specfic fixups or analyses over the generated expression.

This makes expression evaluation for plugins more flexible and allows language-specific fixes to reside in their own module, rather than littering the expression evaluator itself with language-specific fixes.



http://reviews.llvm.org/D17027

Files:
  include/lldb/Expression/LLVMUserExpression.h
  include/lldb/Target/LanguageRuntime.h
  source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17027.47315.patch
Type: text/x-patch
Size: 4834 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20160209/cc2ef81f/attachment.bin>


More information about the lldb-commits mailing list