CIRCT  20.0.0git
Classes | Namespaces | Macros | Typedefs | Functions
ExpandWhens.cpp File Reference
#include "circt/Dialect/FIRRTL/FIRRTLOps.h"
#include "circt/Dialect/FIRRTL/FIRRTLTypes.h"
#include "circt/Dialect/FIRRTL/FIRRTLUtils.h"
#include "circt/Dialect/FIRRTL/FIRRTLVisitors.h"
#include "circt/Dialect/FIRRTL/Passes.h"
#include "circt/Support/FieldRef.h"
#include "mlir/Pass/Pass.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/STLExtras.h"
#include "circt/Dialect/FIRRTL/Passes.h.inc"
Include dependency graph for ExpandWhens.cpp:

Go to the source code of this file.

Classes

struct  HashTableStack< KeyT, ValueT >
 This is a stack of hashtables, if lookup fails in the top-most hashtable, it will attempt to lookup in lower hashtables. More...
 
struct  HashTableStack< KeyT, ValueT >::Iterator
 

Namespaces

 circt
 The InstanceGraph op interface, see InstanceGraphInterface.td for more details.
 
 circt::firrtl
 

Macros

#define GEN_PASS_DEF_EXPANDWHENS
 

Typedefs

using ScopedDriverMap = HashTableStack< FieldRef, Operation * >
 This is a determistic mapping of a FieldRef to the last operation which set a value to it. More...
 
using DriverMap = ScopedDriverMap::ScopeT
 

Functions

static void mergeBlock (Block &destination, Block::iterator insertPoint, Block &source)
 Move all operations from a source block in to a destination block. More...
 

Macro Definition Documentation

◆ GEN_PASS_DEF_EXPANDWHENS

#define GEN_PASS_DEF_EXPANDWHENS

Definition at line 25 of file ExpandWhens.cpp.

Typedef Documentation

◆ DriverMap

Definition at line 118 of file ExpandWhens.cpp.

◆ ScopedDriverMap

using ScopedDriverMap = HashTableStack<FieldRef, Operation *>

This is a determistic mapping of a FieldRef to the last operation which set a value to it.

Definition at line 117 of file ExpandWhens.cpp.

Function Documentation

◆ mergeBlock()

static void mergeBlock ( Block &  destination,
Block::iterator  insertPoint,
Block &  source 
)
static

Move all operations from a source block in to a destination block.

Leaves the source block empty.

Definition at line 35 of file ExpandWhens.cpp.

Referenced by buildMergeBlocks().