Loading [MathJax]/jax/output/HTML-CSS/config.js
CIRCT 21.0.0git
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Functions
circt::llhd::deseq Namespace Reference

Classes

struct  ClockInfo
 A single clock extracted from a process during trigger analysis. More...
 
struct  DNF
 A boolean function expressed in canonical disjunctive normal form. More...
 
struct  DNFTerm
 A single AND operation within a DNF. More...
 
struct  DriveInfo
 A drive op and the clock and reset that resulted from trigger analysis. More...
 
struct  FixedValue
 A single i1 value that is fixed to a given value in the past and the present. More...
 
struct  ResetInfo
 A single reset extracted from a process during trigger analysis. More...
 
struct  TruthTable
 A boolean function expressed as a truth table. More...
 
struct  ValueEntry
 A single entry in a value table. More...
 
struct  ValueTable
 A table of SSA values and the conditions under which they appear. More...
 

Typedefs

using FixedValues = SmallVector< FixedValue, 2 >
 A list of i1 values that are fixed to a given value.
 

Functions

llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const DNFTerm &term)
 
llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const DNF &dnf)
 
llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const TruthTable &table)
 
llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const ValueEntry &entry)
 
llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const std::pair< TruthTable, ValueEntry > &pair)
 
llvm::raw_ostream & operator<< (llvm::raw_ostream &os, const ValueTable &table)
 
static llvm::hash_code hash_value (const FixedValue &arg)
 
static llvm::hash_code hash_value (const FixedValues &arg)
 

Typedef Documentation

◆ FixedValues

using circt::llhd::deseq::FixedValues = typedef SmallVector<FixedValue, 2>

A list of i1 values that are fixed to a given value.

These are used when specializing a process to compute the value and enable condition for a drive when a trigger occurs.

Definition at line 256 of file DeseqUtils.h.

Function Documentation

◆ hash_value() [1/2]

static llvm::hash_code circt::llhd::deseq::hash_value ( const FixedValue arg)
inlinestatic

◆ hash_value() [2/2]

static llvm::hash_code circt::llhd::deseq::hash_value ( const FixedValues arg)
inlinestatic

Definition at line 262 of file DeseqUtils.h.

◆ operator<<() [1/6]

llvm::raw_ostream & circt::llhd::deseq::operator<< ( llvm::raw_ostream &  os,
const DNF dnf 
)

◆ operator<<() [2/6]

llvm::raw_ostream & circt::llhd::deseq::operator<< ( llvm::raw_ostream &  os,
const DNFTerm term 
)

◆ operator<<() [3/6]

llvm::raw_ostream & circt::llhd::deseq::operator<< ( llvm::raw_ostream &  os,
const std::pair< TruthTable, ValueEntry > &  pair 
)

Definition at line 315 of file DeseqUtils.cpp.

◆ operator<<() [4/6]

llvm::raw_ostream & circt::llhd::deseq::operator<< ( llvm::raw_ostream &  os,
const TruthTable table 
)

Definition at line 216 of file DeseqUtils.cpp.

References circt::llhd::deseq::TruthTable::canonicalize().

◆ operator<<() [5/6]

llvm::raw_ostream & circt::llhd::deseq::operator<< ( llvm::raw_ostream &  os,
const ValueEntry entry 
)

◆ operator<<() [6/6]

llvm::raw_ostream & circt::llhd::deseq::operator<< ( llvm::raw_ostream &  os,
const ValueTable table 
)

Definition at line 321 of file DeseqUtils.cpp.

References circt::llhd::deseq::ValueTable::entries.