#include "kernel/register.h"
#include "kernel/sigtools.h"
#include "kernel/log.h"
#include <stdlib.h>
#include <stdio.h>
Go to the source code of this file.
Definition at line 29 of file proc_init.cc.
36 tmp.
replace(it.first, it.second);
std::vector< RTLIL::SigSpec > compare
#define log_assert(_assert_expr_)
void replace(const RTLIL::SigSpec &pattern, const RTLIL::SigSpec &with)
std::vector< RTLIL::SigSig > actions
Definition at line 43 of file proc_init.cc.
45 bool found_init =
false;
47 for (
auto &sync : proc->
syncs)
53 for (
auto &action : sync->actions)
64 for (
auto &lhs_c : lhs.
chunks()) {
65 if (lhs_c.wire !=
NULL) {
67 if (value.
size() != lhs_c.wire->width)
70 lhs_c.wire->attributes[
"\\init"] = value.
as_const();
72 offset += lhs_c.width;
78 std::vector<RTLIL::SyncRule*> new_syncs;
79 for (
auto &sync : proc->
syncs)
83 new_syncs.push_back(sync);
84 proc->
syncs.swap(new_syncs);
const char * c_str() const
RTLIL::Const as_const() const
const char * log_signal(const RTLIL::SigSpec &sig, bool autoint)
USING_YOSYS_NAMESPACE PRIVATE_NAMESPACE_BEGIN void proc_get_const(RTLIL::SigSpec &sig, RTLIL::CaseRule &rule)
bool is_fully_const() const
void log_cmd_error(const char *format,...)
void log(const char *format,...)
std::vector< RTLIL::SyncRule * > syncs
RTLIL::SigSpec extract(const RTLIL::SigSpec &pattern, const RTLIL::SigSpec *other=NULL) const
const std::vector< RTLIL::SigChunk > & chunks() const
RTLIL_ATTRIBUTE_MEMBERS RTLIL::CaseRule root_case