CIRCT  20.0.0git
Namespaces | Macros | Functions
MergeIfs.cpp File Reference
#include "circt/Dialect/Arc/ArcOps.h"
#include "circt/Dialect/Arc/ArcPasses.h"
#include "mlir/Dialect/SCF/IR/SCF.h"
#include "llvm/Support/Debug.h"
#include "circt/Dialect/Arc/ArcPasses.h.inc"
Include dependency graph for MergeIfs.cpp:

Go to the source code of this file.

Namespaces

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

Macros

#define DEBUG_TYPE   "arc-merge-ifs"
 
#define GEN_PASS_DEF_MERGEIFSPASS
 

Functions

static Value getPointerWrittenByOp (Operation *op)
 Return the state/memory value being written by an op. More...
 
static Value getPointerReadByOp (Operation *op)
 Return the state/memory value being read by an op. More...
 
static bool hasSideEffects (Operation *op)
 Check if an operation has side effects, ignoring any nested ops. More...
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "arc-merge-ifs"

Definition at line 14 of file MergeIfs.cpp.

◆ GEN_PASS_DEF_MERGEIFSPASS

#define GEN_PASS_DEF_MERGEIFSPASS

Definition at line 18 of file MergeIfs.cpp.

Function Documentation

◆ getPointerReadByOp()

static Value getPointerReadByOp ( Operation *  op)
static

Return the state/memory value being read by an op.

Definition at line 71 of file MergeIfs.cpp.

◆ getPointerWrittenByOp()

static Value getPointerWrittenByOp ( Operation *  op)
static

Return the state/memory value being written by an op.

Definition at line 62 of file MergeIfs.cpp.

◆ hasSideEffects()

static bool hasSideEffects ( Operation *  op)
static

Check if an operation has side effects, ignoring any nested ops.

This is useful if we're traversing all nested ops anyway, and we are only interested in the current op's side effects.

Definition at line 82 of file MergeIfs.cpp.