CIRCT 22.0.0git
Loading...
Searching...
No Matches
Classes | Enumerations | Functions
circt::moore Namespace Reference

Classes

class  PackedType
 A packed SystemVerilog type. More...
 
struct  StructLikeMember
 A member of a struct. More...
 
class  UnpackedType
 An unpacked SystemVerilog type. More...
 

Enumerations

enum class  Domain { TwoValued , FourValued }
 The number of values each bit of a type can assume. More...
 
enum class  RealWidth { f32 = 32 , f64 = 64 }
 The type of floating point / real number behind a RealType. More...
 

Functions

std::unique_ptr< mlir::Pass > createSimplifyProceduresPass ()
 
std::unique_ptr< mlir::Pass > createLowerConcatRefPass ()
 
bool isIntType (Type type, unsigned width)
 Check if a type is an IntType type of the given width.
 
bool isIntType (Type type, Domain domain)
 Check if a type is an IntType type of the given domain.
 
bool isIntType (Type type, unsigned width, Domain domain)
 Check if a type is an IntType type of the given width and domain.
 
bool isRealType (Type type, unsigned width)
 Check if a type is a RealType type of the given width.
 
llvm::hash_code hash_value (const StructLikeMember &x)
 

Enumeration Type Documentation

◆ Domain

enum class circt::moore::Domain
strong

The number of values each bit of a type can assume.

Enumerator
TwoValued 

Two-valued types such as bit or int.

FourValued 

Four-valued types such as logic or integer.

Definition at line 48 of file MooreTypes.h.

◆ RealWidth

enum class circt::moore::RealWidth
strong

The type of floating point / real number behind a RealType.

Enumerator
f32 

A standard 32-Bit floating point number ("float")

f64 

A 64-bit double-precision floation point number ("double")

Definition at line 56 of file MooreTypes.h.

Function Documentation

◆ createLowerConcatRefPass()

std::unique_ptr< mlir::Pass > circt::moore::createLowerConcatRefPass ( )

Definition at line 88 of file LowerConcatRef.cpp.

◆ createSimplifyProceduresPass()

std::unique_ptr< mlir::Pass > circt::moore::createSimplifyProceduresPass ( )

Definition at line 36 of file SimplifyProcedures.cpp.

◆ hash_value()

llvm::hash_code circt::moore::hash_value ( const StructLikeMember x)
inline

◆ isIntType() [1/3]

bool circt::moore::isIntType ( Type  type,
Domain  domain 
)

Check if a type is an IntType type of the given domain.

Definition at line 30 of file MooreTypes.cpp.

◆ isIntType() [2/3]

bool circt::moore::isIntType ( Type  type,
unsigned  width 
)

Check if a type is an IntType type of the given width.

Definition at line 24 of file MooreTypes.cpp.

Referenced by materializePackedToSBVConversion(), and materializeSBVToPackedConversion().

◆ isIntType() [3/3]

bool circt::moore::isIntType ( Type  type,
unsigned  width,
Domain  domain 
)

Check if a type is an IntType type of the given width and domain.

Definition at line 36 of file MooreTypes.cpp.

◆ isRealType()

bool circt::moore::isRealType ( Type  type,
unsigned  width 
)

Check if a type is a RealType type of the given width.

Definition at line 42 of file MooreTypes.cpp.