| 
    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().