CIRCT  19.0.0git
Functions
RandomizeRegisterInit.cpp File Reference
#include "PassDetails.h"
#include "circt/Dialect/FIRRTL/AnnotationDetails.h"
#include "circt/Dialect/FIRRTL/FIRRTLAnnotations.h"
#include "circt/Dialect/FIRRTL/FIRRTLInstanceGraph.h"
#include "circt/Dialect/FIRRTL/FIRRTLOps.h"
#include "circt/Dialect/FIRRTL/FIRRTLTypes.h"
#include "circt/Dialect/FIRRTL/Passes.h"
#include "mlir/IR/Attributes.h"
#include "mlir/IR/Builders.h"
#include "llvm/Support/Parallel.h"
Include dependency graph for RandomizeRegisterInit.cpp:

Go to the source code of this file.

Functions

static void createRandomizationAttributes (FModuleOp mod)
 Create attributes indicating the required size of random initialization values for each register in the module, and mark which range of these values each register should consume. More...
 

Function Documentation

◆ createRandomizationAttributes()

static void createRandomizationAttributes ( FModuleOp  mod)
static

Create attributes indicating the required size of random initialization values for each register in the module, and mark which range of these values each register should consume.

The goal is for registers to always read the same random bits for the same seed, regardless of optimizations that might remove registers.

Definition at line 45 of file RandomizeRegisterInit.cpp.

References assert(), builder, and circt::firrtl::getBitWidth().