llvm/include/llvm-c
Juergen Ributzka 4e0cc51d79 [PM] Add pass run listeners to the pass manager.
This commit provides the necessary C/C++ APIs and infastructure to enable fine-
grain progress report and safe suspension points after each pass in the pass
manager.

Clients can provide a callback function to the pass manager to call after each
pass. This can be used in a variety of ways (progress report, dumping of IR
between passes, safe suspension of threads, etc).

The run listener list is maintained in the LLVMContext, which allows a multi-
threaded client to be only informed for it's own thread. This of course assumes
that the client created a LLVMContext for each thread.

This fixes <rdar://problem/16728690>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207430 91177308-0d34-0410-b5e6-96231b3b80d8
2014-04-28 18:19:25 +00:00
..
Transforms The LLVM C API shouldn't be including a file from the C++ API. Especially not a 2014-04-08 10:47:04 +00:00
Analysis.h
BitReader.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
BitWriter.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
Core.h [PM] Add pass run listeners to the pass manager. 2014-04-28 18:19:25 +00:00
Disassembler.h ARM64: initial backend import 2014-03-29 10:18:08 +00:00
ExecutionEngine.h Add target analysis passes to the codegen pipeline for MCJIT. 2014-01-23 19:23:28 +00:00
Initialization.h Extracted ObjCARC.cpp into its own library libLLVMObjCARCOpts in preparation for refactoring the ARC Optimizer. 2013-01-28 01:35:51 +00:00
IRReader.h Fix known typos 2014-01-24 17:20:08 +00:00
Linker.h Supply a C interface to the "LinkModules" method. 2012-05-09 08:55:40 +00:00
LinkTimeOptimizer.h include/llvm-c: Whitespace. 2013-10-23 17:56:29 +00:00
lto.h Add an -mattr option to the gold plugin to support subtarget features in LTO 2014-04-25 21:46:51 +00:00
Object.h Convert getFileOffset to getOffset and move it to its only user. 2014-04-21 13:45:32 +00:00
Support.h [Modules] Fix a layering issue that is actually impacting the modules 2014-03-06 04:13:12 +00:00
Target.h [llvm-c] Remove dead typedef 2013-11-11 14:47:01 +00:00
TargetMachine.h Add target analysis passes to the codegen pipeline for MCJIT. 2014-01-23 19:23:28 +00:00