|
MLIR 22.0.0git
|
Classes | |
| struct | ThreadDiagnostic |
Public Member Functions | |
| ParallelDiagnosticHandlerImpl (MLIRContext *ctx) | |
| ~ParallelDiagnosticHandlerImpl () override | |
| void | emitDiagnostics (llvm::function_ref< void(Diagnostic &)> emitFn) const |
| Utility method to emit any held diagnostics. | |
| void | setOrderIDForThread (size_t orderID) |
| Set the order id for the current thread. | |
| void | eraseOrderIDForThread () |
| Remove the order id for the current thread. | |
| void | print (raw_ostream &os) const override |
| Dump the current diagnostics that were inflight. | |
Public Attributes | |
| llvm::sys::SmartMutex< true > | mutex |
| A smart mutex to lock access to the internal state. | |
| DenseMap< uint64_t, size_t > | threadToOrderID |
| A mapping between the thread id and the current order id. | |
| std::vector< ThreadDiagnostic > | diagnostics |
| An unordered list of diagnostics that were emitted. | |
| DiagnosticEngine::HandlerID | handlerID = 0 |
| The unique id for the parallel handler. | |
| MLIRContext * | context |
| The context to emit the diagnostics to. | |
Definition at line 939 of file Diagnostics.cpp.
|
inline |
Definition at line 954 of file Diagnostics.cpp.
References context, diag(), diagnostics, mlir::MLIRContext::getDiagEngine(), handlerID, mutex, success(), and threadToOrderID.
|
inlineoverride |
Definition at line 970 of file Diagnostics.cpp.
References context, diag(), diagnostics, emitDiagnostics(), and handlerID.
|
inline |
Utility method to emit any held diagnostics.
Definition at line 985 of file Diagnostics.cpp.
References diag(), and diagnostics.
Referenced by print(), and ~ParallelDiagnosticHandlerImpl().
|
inline |
Remove the order id for the current thread.
Definition at line 1004 of file Diagnostics.cpp.
References mutex, and threadToOrderID.
|
inlineoverride |
Dump the current diagnostics that were inflight.
Definition at line 1011 of file Diagnostics.cpp.
References diag(), diagnostics, emitDiagnostics(), mlir::Error, mlir::Note, mlir::Remark, and mlir::Warning.
|
inline |
Set the order id for the current thread.
Definition at line 997 of file Diagnostics.cpp.
References mutex, and threadToOrderID.
| MLIRContext* mlir::detail::ParallelDiagnosticHandlerImpl::context |
The context to emit the diagnostics to.
Definition at line 1055 of file Diagnostics.cpp.
Referenced by ParallelDiagnosticHandlerImpl(), and ~ParallelDiagnosticHandlerImpl().
|
mutable |
An unordered list of diagnostics that were emitted.
Definition at line 1049 of file Diagnostics.cpp.
Referenced by emitDiagnostics(), ParallelDiagnosticHandlerImpl(), print(), and ~ParallelDiagnosticHandlerImpl().
| DiagnosticEngine::HandlerID mlir::detail::ParallelDiagnosticHandlerImpl::handlerID = 0 |
The unique id for the parallel handler.
Definition at line 1052 of file Diagnostics.cpp.
Referenced by ParallelDiagnosticHandlerImpl(), and ~ParallelDiagnosticHandlerImpl().
| llvm::sys::SmartMutex<true> mlir::detail::ParallelDiagnosticHandlerImpl::mutex |
A smart mutex to lock access to the internal state.
Definition at line 1043 of file Diagnostics.cpp.
Referenced by eraseOrderIDForThread(), ParallelDiagnosticHandlerImpl(), and setOrderIDForThread().
| DenseMap<uint64_t, size_t> mlir::detail::ParallelDiagnosticHandlerImpl::threadToOrderID |
A mapping between the thread id and the current order id.
Definition at line 1046 of file Diagnostics.cpp.
Referenced by eraseOrderIDForThread(), ParallelDiagnosticHandlerImpl(), and setOrderIDForThread().