CIRCT
18.0.0git
|
This holds a decoded list of input/inout and output ports for a module or instance. More...
#include <HWOpInterfaces.h>
Public Types | |
using | iterator = SmallVector< PortInfo >::iterator |
using | const_iterator = SmallVector< PortInfo >::const_iterator |
using | PortDirectionRange = llvm::iterator_range< llvm::filter_iterator< iterator, std::function< bool(const PortInfo &)> >> |
using | ConstPortDirectionRange = llvm::iterator_range< llvm::filter_iterator< const_iterator, std::function< bool(const PortInfo &)> >> |
Public Member Functions | |
ModulePortInfo (ArrayRef< PortInfo > inputs, ArrayRef< PortInfo > outputs) | |
ModulePortInfo (ArrayRef< PortInfo > mergedPorts) | |
iterator | begin () |
iterator | end () |
const_iterator | begin () const |
const_iterator | end () const |
PortDirectionRange | getPortsOfDirection (bool input) |
ConstPortDirectionRange | getPortsOfDirection (bool input) const |
PortDirectionRange | getInputs () |
PortDirectionRange | getOutputs () |
ConstPortDirectionRange | getInputs () const |
ConstPortDirectionRange | getOutputs () const |
size_t | size () const |
size_t | sizeInputs () const |
size_t | sizeOutputs () const |
size_t | portNumForInput (size_t idx) const |
size_t | portNumForOutput (size_t idx) const |
PortInfo & | at (size_t idx) |
PortInfo & | atInput (size_t idx) |
PortInfo & | atOutput (size_t idx) |
const PortInfo & | at (size_t idx) const |
const PortInfo & | atInput (size_t idx) const |
const PortInfo & | atOutput (size_t idx) const |
void | eraseInput (size_t idx) |
Private Member Functions | |
void | sanitizeInOut () |
Private Attributes | |
SmallVector< PortInfo > | ports |
This contains a list of all ports. Input first. More... | |
This holds a decoded list of input/inout and output ports for a module or instance.
Definition at line 59 of file HWOpInterfaces.h.
using circt::hw::ModulePortInfo::const_iterator = SmallVector<PortInfo>::const_iterator |
Definition at line 73 of file HWOpInterfaces.h.
using circt::hw::ModulePortInfo::ConstPortDirectionRange = llvm::iterator_range<llvm::filter_iterator< const_iterator, std::function<bool(const PortInfo &)> >> |
Definition at line 83 of file HWOpInterfaces.h.
using circt::hw::ModulePortInfo::iterator = SmallVector<PortInfo>::iterator |
Definition at line 72 of file HWOpInterfaces.h.
using circt::hw::ModulePortInfo::PortDirectionRange = llvm::iterator_range< llvm::filter_iterator<iterator, std::function<bool(const PortInfo &)> >> |
Definition at line 80 of file HWOpInterfaces.h.
|
inlineexplicit |
Definition at line 60 of file HWOpInterfaces.h.
References inputs, outputs, ports, and sanitizeInOut().
|
inlineexplicit |
Definition at line 67 of file HWOpInterfaces.h.
References sanitizeInOut().
|
inline |
Definition at line 158 of file HWOpInterfaces.h.
References ports.
Referenced by circt::hw::HWModulePortAccessor::HWModulePortAccessor().
|
inline |
Definition at line 162 of file HWOpInterfaces.h.
References ports.
|
inline |
Definition at line 159 of file HWOpInterfaces.h.
References portNumForInput(), and ports.
Referenced by circt::msft::getValueName().
|
inline |
Definition at line 163 of file HWOpInterfaces.h.
References portNumForInput(), and ports.
|
inline |
Definition at line 160 of file HWOpInterfaces.h.
References portNumForOutput(), and ports.
|
inline |
Definition at line 166 of file HWOpInterfaces.h.
References portNumForOutput(), and ports.
|
inline |
Definition at line 75 of file HWOpInterfaces.h.
References ports.
|
inline |
Definition at line 77 of file HWOpInterfaces.h.
References ports.
|
inline |
Definition at line 76 of file HWOpInterfaces.h.
References ports.
|
inline |
Definition at line 78 of file HWOpInterfaces.h.
References ports.
|
inline |
Definition at line 170 of file HWOpInterfaces.h.
References assert(), portNumForInput(), ports, and sizeInputs().
Referenced by convertExtMemoryOps().
|
inline |
Definition at line 116 of file HWOpInterfaces.h.
References getPortsOfDirection().
Referenced by llvm::DOTGraphTraits< circt::hw::HWModuleOp >::addCustomGraphFeatures(), convertExtMemoryOps(), circt::hw::ModulePortLookupInfo::ModulePortLookupInfo(), and sizeInputs().
|
inline |
Definition at line 120 of file HWOpInterfaces.h.
References getPortsOfDirection().
|
inline |
Definition at line 118 of file HWOpInterfaces.h.
References getPortsOfDirection().
Referenced by convertExtMemoryOps(), circt::hw::HWModulePortAccessor::HWModulePortAccessor(), circt::hw::ModulePortLookupInfo::ModulePortLookupInfo(), sizeOutputs(), and circt::hw::PortConverterImpl::updateInstance().
|
inline |
Definition at line 124 of file HWOpInterfaces.h.
References getPortsOfDirection().
|
inline |
Definition at line 86 of file HWOpInterfaces.h.
References InOut, Input, Output, and ports.
Referenced by getInputs(), and getOutputs().
|
inline |
|
inline |
Definition at line 138 of file HWOpInterfaces.h.
References ports.
Referenced by atInput(), and eraseInput().
|
inline |
|
inlineprivate |
Definition at line 177 of file HWOpInterfaces.h.
Referenced by ModulePortInfo().
|
inline |
Definition at line 128 of file HWOpInterfaces.h.
References ports.
|
inline |
Definition at line 129 of file HWOpInterfaces.h.
References getInputs().
Referenced by eraseInput(), circt::hw::HWModulePortAccessor::HWModulePortAccessor(), circt::hw::PortConverterImpl::run(), and circt::hw::PortConverterImpl::updateInstance().
|
inline |
Definition at line 133 of file HWOpInterfaces.h.
References getOutputs().
Referenced by circt::hw::HWModulePortAccessor::HWModulePortAccessor(), and circt::hw::PortConverterImpl::run().
|
private |
This contains a list of all ports. Input first.
Definition at line 186 of file HWOpInterfaces.h.
Referenced by at(), atInput(), atOutput(), begin(), end(), eraseInput(), getPortsOfDirection(), ModulePortInfo(), portNumForInput(), portNumForOutput(), sanitizeInOut(), and size().