CIRCT 24.0.0git
Loading...
Searching...
No Matches
DCMaterialization.cpp File Reference
#include "circt/Dialect/DC/DCOps.h"
#include "circt/Dialect/DC/DCPasses.h"
#include "mlir/Pass/Pass.h"
#include "circt/Dialect/DC/DCPasses.h.inc"
Include dependency graph for DCMaterialization.cpp:

Go to the source code of this file.

Namespaces

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

Macros

#define GEN_PASS_DEF_DCMATERIALIZEFORKSSINKS
#define GEN_PASS_DEF_DCDEMATERIALIZEFORKSSINKS

Functions

static bool isDCTyped (Value v)
static void replaceFirstUse (Operation *op, Value oldVal, Value newVal)
static void insertSink (Value v, OpBuilder &rewriter)
static void insertFork (Value result, OpBuilder &rewriter)
static LogicalResult addForkOps (Block &block, OpBuilder &rewriter)
static LogicalResult addSinkOps (Block &block, OpBuilder &rewriter)

Macro Definition Documentation

◆ GEN_PASS_DEF_DCDEMATERIALIZEFORKSSINKS

#define GEN_PASS_DEF_DCDEMATERIALIZEFORKSSINKS

Definition at line 20 of file DCMaterialization.cpp.

◆ GEN_PASS_DEF_DCMATERIALIZEFORKSSINKS

#define GEN_PASS_DEF_DCMATERIALIZEFORKSSINKS

Definition at line 19 of file DCMaterialization.cpp.

Function Documentation

◆ addForkOps()

LogicalResult addForkOps ( Block & block,
OpBuilder & rewriter )
static

Definition at line 87 of file DCMaterialization.cpp.

References insertFork(), isDCTyped(), and success().

◆ addSinkOps()

LogicalResult addSinkOps ( Block & block,
OpBuilder & rewriter )
static

Definition at line 117 of file DCMaterialization.cpp.

References insertSink(), isDCTyped(), and success().

◆ insertFork()

void insertFork ( Value result,
OpBuilder & rewriter )
static

Definition at line 53 of file DCMaterialization.cpp.

References replaceFirstUse().

Referenced by addForkOps(), and addForkOps().

◆ insertSink()

void insertSink ( Value v,
OpBuilder & rewriter )
static

Definition at line 42 of file DCMaterialization.cpp.

Referenced by addSinkOps().

◆ isDCTyped()

bool isDCTyped ( Value v)
static

Definition at line 29 of file DCMaterialization.cpp.

Referenced by addForkOps(), and addSinkOps().

◆ replaceFirstUse()

void replaceFirstUse ( Operation * op,
Value oldVal,
Value newVal )
static

Definition at line 33 of file DCMaterialization.cpp.

Referenced by insertFork().