This is an archive of the discontinued LLVM Phabricator instance.

[ExecutionEngine] Use std::function with InstallLazyFunctionCreator
ClosedPublic

Authored by pasaulais on Jul 13 2015, 5:42 AM.

Details

Reviewers
lhames
Summary

ExecutionEngine::InstallLazyFunctionCreator takes a function pointer, which prevents passing lambdas that capture state or member functions. With this commit, InstallLazyFunctionCreator takes a std::function parameter which allows lambdas and member functions to be used.

The original patch failed on ARM due to an unexpected additional unresolved function ('__aeabi_unwind_cpp_pr0'):

This patch has been updated to resolve this issue. It also includes Lang's follow-up commits (r241962, r241974).

Diff Detail

Repository
rL LLVM

Event Timeline

pasaulais updated this revision to Diff 29551.Jul 13 2015, 5:42 AM
pasaulais retitled this revision from to [ExecutionEngine] Use std::function with InstallLazyFunctionCreator.
pasaulais updated this object.
pasaulais added a reviewer: lhames.
pasaulais set the repository for this revision to rL LLVM.
pasaulais added a subscriber: llvm-commits.
lhames accepted this revision.Jul 14 2015, 3:11 PM
lhames edited edge metadata.

LGTM. Committed in r242213. Thanks Pierre-Andre.

This revision is now accepted and ready to land.Jul 14 2015, 3:11 PM
lhames closed this revision.Jul 14 2015, 3:11 PM