|
CIRCT 24.0.0git
|
#include "circt/Dialect/LLHD/LLHDTypes.h"#include "circt/Support/LLVM.h"#include "mlir/IR/Value.h"#include <utility>#include <variant>

Go to the source code of this file.
Classes | |
| struct | circt::llhd::ConstProjectionRange |
| Portion of a signal selected by a projection, with a statically known offset and width in bits. More... | |
| struct | circt::llhd::DynProjectionRange |
| Portion of a signal selected by a projection with a dynamic index. More... | |
Namespaces | |
| namespace | circt |
| The InstanceGraph op interface, see InstanceGraphInterface.td for more details. | |
| namespace | circt::llhd |
Typedefs | |
| using | circt::llhd::ProjectionRange = std::variant<ConstProjectionRange, DynProjectionRange> |
| Portion of the signal operand that is selected by a projection. | |
Functions | |
| bool | circt::llhd::isDynamic (const ProjectionRange &range) |
| Helper to check if a projection range is dynamic or not. | |
| Type | circt::llhd::getStoredType (Value slot) |
| Return the type stored in a signal or projection. | |
| bool | circt::llhd::isProjection (const Operation *op) |
| Check if an op is one of the supported projection types. | |
| std::optional< ProjectionRange > | circt::llhd::getProjectionRange (Operation *op) |
| Calculate a projection's range. | |
| bool | circt::llhd::isProvablyDisjoint (const ProjectionRange &a, const ProjectionRange &b) |
| Check whether two projections provably describe disjoint storage. | |
| Operation * | circt::llhd::getRootSignal (Value sig) |
| Given a signal or a projection, walk back the projection chain until you find the root signal declaration. | |
| std::pair< Operation *, std::optional< ProjectionRange > > | circt::llhd::getRootSignalAndRange (Value sig) |
| Given a signal or a projection, find the root signal declaration by traversing the projection chain. | |