HomePhabricator

Allow runtimes to execute custom LLVM ModulePasses over the expression IR

Description

Allow runtimes to execute custom LLVM ModulePasses over the expression IR

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 architecture-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.

Details

Committed
ldrummJun 15 2016, 9:19 AM
Parents
rL272799: Revert "Preserve DebugInfo when replacing values in DAGCombiner"
Branches
Unknown
Tags
Unknown