mirror of https://github.com/YosysHQ/yosys.git
Compare commits
12 Commits
8311df890c
...
44b0e57a5a
Author | SHA1 | Date |
---|---|---|
N. Engelhardt | 44b0e57a5a | |
KrystalDelusion | 6f3376cbe6 | |
github-actions[bot] | 87742fa688 | |
Martin Povišer | 646c5a19a8 | |
Martin Povišer | 1717a0b9c0 | |
KrystalDelusion | f428163252 | |
Krystine Sherwin | e649c1a8e1 | |
Krystine Sherwin | 44b68fb498 | |
Krystine Sherwin | 1476eaba00 | |
N. Engelhardt | df72f30141 | |
Larry Doolittle | 3ae9ca7c2b | |
Larry Doolittle | d36a387aca |
2
Makefile
2
Makefile
|
@ -155,7 +155,7 @@ ifeq ($(OS), Haiku)
|
|||
CXXFLAGS += -D_DEFAULT_SOURCE
|
||||
endif
|
||||
|
||||
YOSYS_VER := 0.47+121
|
||||
YOSYS_VER := 0.47+135
|
||||
|
||||
# Note: We arrange for .gitcommit to contain the (short) commit hash in
|
||||
# tarballs generated with git-archive(1) using .gitattributes. The git repo
|
||||
|
|
|
@ -56,6 +56,9 @@ if os.getenv("READTHEDOCS"):
|
|||
else:
|
||||
release = yosys_ver
|
||||
todo_include_todos = False
|
||||
elif os.getenv("YOSYS_DOCS_RELEASE") is not None:
|
||||
release = yosys_ver
|
||||
todo_include_todos = False
|
||||
else:
|
||||
release = yosys_ver
|
||||
todo_include_todos = True
|
||||
|
@ -87,5 +90,9 @@ def setup(app: Sphinx) -> None:
|
|||
from util.RtlilLexer import RtlilLexer
|
||||
app.add_lexer("RTLIL", RtlilLexer)
|
||||
|
||||
from furo_ys.lexers.YoscryptLexer import YoscryptLexer
|
||||
app.add_lexer("yoscrypt", YoscryptLexer)
|
||||
try:
|
||||
from furo_ys.lexers.YoscryptLexer import YoscryptLexer
|
||||
app.add_lexer("yoscrypt", YoscryptLexer)
|
||||
except ModuleNotFoundError:
|
||||
from pygments.lexers.special import TextLexer
|
||||
app.add_lexer("yoscrypt", TextLexer)
|
||||
|
|
|
@ -364,7 +364,7 @@ public:
|
|||
|
||||
unsigned int hash() const
|
||||
{
|
||||
unsigned int inner;
|
||||
unsigned int inner = 0;
|
||||
switch (type_)
|
||||
{
|
||||
case DriveType::NONE:
|
||||
|
@ -385,6 +385,9 @@ public:
|
|||
case DriveType::MULTIPLE:
|
||||
inner = multiple_.hash();
|
||||
break;
|
||||
default:
|
||||
log_abort();
|
||||
break;
|
||||
}
|
||||
return mkhash((unsigned int)type_, inner);
|
||||
}
|
||||
|
@ -912,7 +915,7 @@ public:
|
|||
|
||||
unsigned int hash() const
|
||||
{
|
||||
unsigned int inner;
|
||||
unsigned int inner = 0;
|
||||
switch (type_)
|
||||
{
|
||||
case DriveType::NONE:
|
||||
|
@ -933,6 +936,9 @@ public:
|
|||
case DriveType::MULTIPLE:
|
||||
inner = multiple_.hash();
|
||||
break;
|
||||
default:
|
||||
log_abort();
|
||||
break;
|
||||
}
|
||||
return mkhash((unsigned int)type_, inner);
|
||||
}
|
||||
|
|
|
@ -814,6 +814,7 @@ struct RTLIL::AttrObject
|
|||
void set_bool_attribute(const RTLIL::IdString &id, bool value=true);
|
||||
bool get_bool_attribute(const RTLIL::IdString &id) const;
|
||||
|
||||
[[deprecated("Use Module::get_blackbox_attribute() instead.")]]
|
||||
bool get_blackbox_attribute(bool ignore_wb=false) const {
|
||||
return get_bool_attribute(ID::blackbox) || (!ignore_wb && get_bool_attribute(ID::whitebox));
|
||||
}
|
||||
|
@ -1291,6 +1292,10 @@ public:
|
|||
virtual void optimize();
|
||||
virtual void makeblackbox();
|
||||
|
||||
bool get_blackbox_attribute(bool ignore_wb=false) const {
|
||||
return get_bool_attribute(ID::blackbox) || (!ignore_wb && get_bool_attribute(ID::whitebox));
|
||||
}
|
||||
|
||||
void connect(const RTLIL::SigSig &conn);
|
||||
void connect(const RTLIL::SigSpec &lhs, const RTLIL::SigSpec &rhs);
|
||||
void new_connections(const std::vector<RTLIL::SigSig> &new_conn);
|
||||
|
|
|
@ -78,7 +78,7 @@ struct SynthQuickLogicPass : public ScriptPass {
|
|||
}
|
||||
|
||||
string top_opt, blif_file, edif_file, family, currmodule, verilog_file, lib_path;
|
||||
bool abc9, inferAdder, nobram, bramTypes, dsp;
|
||||
bool abc9, inferAdder, nobram, bramTypes, dsp, flatten;
|
||||
|
||||
void clear_flags() override
|
||||
{
|
||||
|
@ -94,6 +94,7 @@ struct SynthQuickLogicPass : public ScriptPass {
|
|||
bramTypes = false;
|
||||
lib_path = "+/quicklogic/";
|
||||
dsp = true;
|
||||
flatten = true;
|
||||
}
|
||||
|
||||
void set_scratchpad_defaults(RTLIL::Design *design) {
|
||||
|
@ -158,6 +159,10 @@ struct SynthQuickLogicPass : public ScriptPass {
|
|||
dsp = false;
|
||||
continue;
|
||||
}
|
||||
if (args[argidx] == "-noflatten") {
|
||||
flatten = false;
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
}
|
||||
extra_args(args, argidx, design);
|
||||
|
@ -202,7 +207,8 @@ struct SynthQuickLogicPass : public ScriptPass {
|
|||
|
||||
if (check_label("prepare")) {
|
||||
run("proc");
|
||||
run("flatten");
|
||||
if (flatten)
|
||||
run("flatten", "(unless -noflatten)");
|
||||
if (help_mode || family == "pp3") {
|
||||
run("tribuf -logic", " (for pp3)");
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue