CIRCT 22.0.0git
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Functions
FIRRTLReductions.cpp File Reference
#include "circt/Dialect/FIRRTL/FIRRTLReductions.h"
#include "circt/Dialect/FIRRTL/AnnotationDetails.h"
#include "circt/Dialect/FIRRTL/CHIRRTLDialect.h"
#include "circt/Dialect/FIRRTL/FIRRTLAnnotationHelper.h"
#include "circt/Dialect/FIRRTL/FIRRTLAnnotations.h"
#include "circt/Dialect/FIRRTL/FIRRTLInstanceGraph.h"
#include "circt/Dialect/FIRRTL/FIRRTLOps.h"
#include "circt/Dialect/FIRRTL/FIRRTLUtils.h"
#include "circt/Dialect/FIRRTL/LayerSet.h"
#include "circt/Dialect/FIRRTL/NLATable.h"
#include "circt/Dialect/FIRRTL/Passes.h"
#include "circt/Dialect/HW/InnerSymbolNamespace.h"
#include "circt/Dialect/HW/InnerSymbolTable.h"
#include "circt/Reduce/ReductionUtils.h"
#include "circt/Support/Namespace.h"
#include "mlir/Analysis/TopologicalSortUtils.h"
#include "mlir/IR/ImplicitLocOpBuilder.h"
#include "mlir/IR/Matchers.h"
#include "llvm/ADT/APSInt.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/Support/Debug.h"
Include dependency graph for FIRRTLReductions.cpp:

Go to the source code of this file.

Classes

struct  detail::SymbolCache
 A utility doing lazy construction of SymbolTables and SymbolUserMaps, which is handy for reductions that need to look up a lot of symbols. More...
 
struct  ModuleSizeCache
 Utility to track the transitive size of modules. More...
 
struct  NLARemover
 A tracker for track NLAs affected by a reduction. More...
 

Namespaces

namespace  detail
 

Macros

#define DEBUG_TYPE   "firrtl-reductions"
 

Functions

static std::optional< firrtl::FModuleOp > findInstantiatedModule (firrtl::InstanceOp instOp, ::detail::SymbolCache &symbols)
 Utility to easily get the instantiated firrtl::FModuleOp or an empty optional in case another type of module is instantiated.
 
static bool onlyInvalidated (Value arg)
 Check that all connections to a value are invalids.
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "firrtl-reductions"

Definition at line 32 of file FIRRTLReductions.cpp.

Function Documentation

◆ findInstantiatedModule()

static std::optional< firrtl::FModuleOp > findInstantiatedModule ( firrtl::InstanceOp  instOp,
::detail::SymbolCache symbols 
)
static

Utility to easily get the instantiated firrtl::FModuleOp or an empty optional in case another type of module is instantiated.

Definition at line 81 of file FIRRTLReductions.cpp.

References detail::SymbolCache::getSymbolTable().

Referenced by ModuleSizeCache::getModuleSize().

◆ onlyInvalidated()

static bool onlyInvalidated ( Value  arg)
static

Check that all connections to a value are invalids.

Definition at line 112 of file FIRRTLReductions.cpp.