mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-28 03:15:50 +00:00
cxxrtl: Add internal cell "bwmux"
Mirrors the implementation for the smt2 backend Co-authored-by: Martin Povišer <povik@cutebit.org>
This commit is contained in:
parent
c894685f26
commit
04098933c7
2 changed files with 14 additions and 1 deletions
|
@ -498,6 +498,11 @@ struct value : public expr_base<value<Bits>> {
|
|||
return result;
|
||||
}
|
||||
|
||||
CXXRTL_ALWAYS_INLINE
|
||||
value<Bits> bwmux(const value<Bits> &b, const value<Bits> &s) const {
|
||||
return (bit_and(s.bit_not())).bit_or(b.bit_and(s));
|
||||
}
|
||||
|
||||
template<size_t ResultBits, size_t SelBits>
|
||||
value<ResultBits> demux(const value<SelBits> &sel) const {
|
||||
static_assert(Bits << SelBits == ResultBits, "invalid sizes used in demux()");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue