CIRCT
18.0.0git
|
#include "circt/Support/LLVM.h"
#include "mlir/IR/Attributes.h"
#include "mlir/IR/BuiltinAttributes.h"
#include "mlir/IR/Location.h"
#include "mlir/IR/Types.h"
#include <variant>
#include "circt/Dialect/Moore/MooreTypes.h.inc"
Go to the source code of this file.
Classes | |
struct | circt::moore::Range |
The [a:b] part in a vector/array type such as logic [a:b] . More... | |
struct | circt::moore::SimpleBitVectorType |
A simple bit vector type. More... | |
class | circt::moore::SVType |
Base class for all SystemVerilog types in the Moore dialect. More... | |
class | circt::moore::UnpackedType |
An unpacked SystemVerilog type. More... | |
class | circt::moore::PackedType |
A packed SystemVerilog type. More... | |
class | circt::moore::VoidType |
The void type. More... | |
class | circt::moore::StringType |
The string type. More... | |
class | circt::moore::ChandleType |
The chandle type. More... | |
class | circt::moore::EventType |
The event type. More... | |
class | circt::moore::IntType |
An integer vector or atom type. More... | |
class | circt::moore::RealType |
A real type. More... | |
class | circt::moore::IndirectTypeBase< BaseTy > |
Common base class for name and type reference indirections. More... | |
class | circt::moore::NamedTypeBase< ConcreteTy, BaseTy > |
A named type. More... | |
class | circt::moore::RefTypeBase< ConcreteTy, BaseTy > |
A type reference. More... | |
class | circt::moore::PackedIndirectType |
A packed type indirection. See IndirectTypeBase for details. More... | |
class | circt::moore::UnpackedIndirectType |
An unpacked type indirection. See IndirectTypeBase for details. More... | |
class | circt::moore::PackedNamedType |
A packed named type. See NamedTypeBase for details. More... | |
class | circt::moore::UnpackedNamedType |
An unpacked named type. See NamedTypeBase for details. More... | |
class | circt::moore::PackedRefType |
A packed named type. See NamedTypeBase for details. More... | |
class | circt::moore::UnpackedRefType |
An unpacked named type. See NamedTypeBase for details. More... | |
class | circt::moore::PackedDim |
A packed dimension. More... | |
class | circt::moore::PackedUnsizedDim |
A packed unsized dimension, like [] . More... | |
class | circt::moore::PackedRangeDim |
A packed range dimension, like [a:b] . More... | |
class | circt::moore::UnpackedDim |
An unpacked dimension. More... | |
class | circt::moore::UnpackedUnsizedDim |
An unpacked unsized dimension, like [] . More... | |
class | circt::moore::UnpackedArrayDim |
An unpacked array dimension, like [a] . More... | |
class | circt::moore::UnpackedRangeDim |
An unpacked range dimension, like [a:b] . More... | |
class | circt::moore::UnpackedAssocDim |
An unpacked associative dimension, like [T] or [*] . More... | |
class | circt::moore::UnpackedQueueDim |
An unpacked queue dimension with optional bound, like [$] or [$:a] . More... | |
class | circt::moore::EnumType |
An enum type. More... | |
struct | circt::moore::StructMember |
A member of a struct. More... | |
struct | circt::moore::Struct |
A struct. More... | |
class | circt::moore::PackedStructType |
A packed struct. More... | |
class | circt::moore::UnpackedStructType |
An unpacked struct. More... | |
struct | llvm::DenseMapInfo< circt::moore::Range > |
Namespaces | |
circt | |
This file defines an intermediate representation for circuits acting as an abstraction for constraints defined over an SMT's solver context. | |
circt::moore | |
circt::moore::detail | |
llvm | |
Macros | |
#define | GET_TYPEDEF_CLASSES |
Enumerations | |
enum class | circt::moore::Domain { circt::moore::TwoValued , circt::moore::FourValued } |
The number of values each bit of a type can assume. More... | |
enum class | circt::moore::Sign { circt::moore::Unsigned , circt::moore::Signed } |
Whether a type is signed or unsigned. More... | |
enum class | circt::moore::RangeDir { circt::moore::Up , circt::moore::Down } |
Which side is greater in a range [a:b] . More... | |
enum class | circt::moore::StructKind { circt::moore::Struct , circt::moore::Union , circt::moore::TaggedUnion } |
Whether a struct is a struct , union , or union tagged . More... | |
Functions | |
StringRef | circt::moore::getKeywordFromSign (const Sign &sign) |
Map a Sign to the corresponding keyword. More... | |
std::optional< Sign > | circt::moore::getSignFromKeyword (StringRef keyword) |
Map the keywords unsigned and signed to the corresponding Sign . More... | |
template<typename Os > | |
Os & | circt::moore::operator<< (Os &os, const Sign &sign) |
llvm::hash_code | circt::moore::hash_value (const Range &x) |
template<typename Os > | |
Os & | circt::moore::operator<< (Os &os, const Range &range) |
llvm::hash_code | circt::moore::hash_value (const SimpleBitVectorType &x) |
template<typename Os > | |
Os & | circt::moore::operator<< (Os &os, const SimpleBitVectorType &type) |
template<typename Ty , std::enable_if_t< std::is_base_of< UnpackedType, Ty >::value, bool > = true> | |
llvm::raw_ostream & | circt::moore::operator<< (llvm::raw_ostream &os, Ty type) |
UnpackedType | circt::moore::detail::getIndirectTypeInner (const TypeStorage *impl) |
Location | circt::moore::detail::getIndirectTypeLoc (const TypeStorage *impl) |
StringAttr | circt::moore::detail::getIndirectTypeName (const TypeStorage *impl) |
StringRef | circt::moore::getMnemonicFromStructKind (StructKind kind) |
Map a StructKind to the corresponding mnemonic. More... | |
std::optional< StructKind > | circt::moore::getStructKindFromMnemonic (StringRef mnemonic) |
Map a mnemonic to the corresponding StructKind . More... | |
template<typename Os > | |
Os & | circt::moore::operator<< (Os &os, const StructKind &kind) |
llvm::hash_code | circt::moore::hash_value (const StructMember &x) |
llvm::raw_ostream & | circt::moore::operator<< (llvm::raw_ostream &os, const Struct &strukt) |
#define GET_TYPEDEF_CLASSES |
Definition at line 1201 of file MooreTypes.h.