3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2026-05-07 02:45:23 +00:00

Add check before flatten in synth_*.

This commit is contained in:
nella 2026-05-05 14:04:46 +02:00
parent 16b893bd88
commit fff034d2f8
20 changed files with 47 additions and 14 deletions

View file

@ -129,6 +129,7 @@ struct SynthAchronixPass : public ScriptPass {
if (flatten && check_label("flatten", "(unless -noflatten)"))
{
run("proc");
run("check");
run("flatten");
run("tribuf -logic");
run("deminout");

View file

@ -277,8 +277,10 @@ struct SynthAnalogDevicesPass : public ScriptPass
if (check_label("prepare")) {
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", "(with '-flatten')");
}
if (active_design)
active_design->scratchpad_unset("tribuf.added_something");
run("tribuf -logic");
@ -447,8 +449,10 @@ struct SynthAnalogDevicesPass : public ScriptPass
if (check_label("map_luts")) {
run("opt_expr -mux_undef -noclkinv");
if (flatten_before_abc)
if (flatten_before_abc) {
run("check");
run("flatten");
}
if (help_mode)
run("abc -luts 2:2,3,6:5[,10,20] [-dff] [-D 1]", "(option for '-nowidelut', '-dff', '-retime')");
else if (abc9) {

View file

@ -156,6 +156,7 @@ struct SynthAnlogicPass : public ScriptPass
if (flatten && check_label("flatten", "(unless -noflatten)"))
{
run("proc");
run("check");
run("flatten");
run("tribuf -logic");
run("deminout");

View file

@ -277,9 +277,10 @@ struct SynthPass : public ScriptPass {
if (check_label("coarse")) {
run("proc");
run("check");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", " (if -flatten)");
}
run("opt_expr");
run("opt_clean");
run("check");

View file

@ -132,6 +132,7 @@ struct SynthCoolrunner2Pass : public ScriptPass
if (flatten && check_label("flatten", "(unless -noflatten)"))
{
run("proc");
run("check");
run("flatten");
run("tribuf -logic");
}

View file

@ -142,6 +142,7 @@ struct SynthEasicPass : public ScriptPass
if (flatten && check_label("flatten", "(unless -noflatten)"))
{
run("proc");
run("check");
run("flatten");
}

View file

@ -148,6 +148,7 @@ struct SynthEfinixPass : public ScriptPass
if (flatten && check_label("flatten", "(unless -noflatten)"))
{
run("proc");
run("check");
run("flatten");
run("tribuf -logic");
run("deminout");

View file

@ -286,6 +286,7 @@ struct SynthPass : public ScriptPass
if (check_label("flatten", "(unless -noflatten)"))
{
if (flatten) {
run("check");
run("flatten");
run("tribuf -logic");
run("deminout");

View file

@ -210,6 +210,7 @@ struct SynthGateMatePass : public ScriptPass
{
run("proc");
if (!noflatten) {
run("check");
run("flatten");
}
run("tribuf -logic");

View file

@ -265,8 +265,10 @@ struct SynthGowinPass : public ScriptPass
if (check_label("coarse"))
{
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", "(unless -noflatten)");
}
run("tribuf -logic");
run("deminout");
run("opt_expr");

View file

@ -144,6 +144,7 @@ struct SynthGreenPAK4Pass : public ScriptPass
if (flatten && check_label("flatten", "(unless -noflatten)"))
{
run("proc");
run("check");
run("flatten");
run("tribuf -logic");
}

View file

@ -309,6 +309,7 @@ struct SynthIce40Pass : public ScriptPass
if (check_label("flatten", "(unless -noflatten)"))
{
if (flatten) {
run("check");
run("flatten");
run("tribuf -logic");
run("deminout");

View file

@ -198,9 +198,11 @@ struct SynthIntelPass : public ScriptPass {
if (check_label("coarse")) {
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", "(skip if -noflatten)");
run("tribuf -logic");
}
run("tribuf -logic");
run("deminout");
run("opt_expr");
run("opt_clean");

View file

@ -184,8 +184,10 @@ struct SynthIntelALMPass : public ScriptPass {
if (check_label("coarse")) {
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", "(skip if -noflatten)");
}
run("tribuf -logic");
run("deminout");
run("opt_expr");

View file

@ -402,8 +402,10 @@ struct SynthLatticePass : public ScriptPass
if (check_label("coarse"))
{
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten");
}
run("tribuf -logic");
run("deminout");
run("opt_expr");

View file

@ -267,8 +267,10 @@ struct SynthMicrochipPass : public ScriptPass {
if (check_label("prepare")) {
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", "(with '-flatten')");
}
if (active_design)
active_design->scratchpad_unset("tribuf.added_something");
run("tribuf -logic");

View file

@ -250,8 +250,10 @@ struct SynthNanoXplorePass : public ScriptPass
if (check_label("coarse"))
{
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", "(skip if -noflatten)");
}
run("tribuf -logic");
run("deminout");
run("opt_expr");

View file

@ -212,8 +212,10 @@ struct SynthQuickLogicPass : public ScriptPass {
if (check_label("prepare")) {
run("proc");
if (flatten)
if (flatten) {
run("check");
run("flatten", "(unless -noflatten)");
}
if (help_mode || family == "pp3") {
run("tribuf -logic", " (for pp3)");
}

View file

@ -172,6 +172,7 @@ struct SynthSf2Pass : public ScriptPass
if (flatten && check_label("flatten", "(unless -noflatten)"))
{
run("proc");
run("check");
run("flatten");
run("tribuf -logic");
run("deminout");

View file

@ -355,8 +355,10 @@ struct SynthXilinxPass : public ScriptPass
if (check_label("prepare")) {
run("proc");
if (flatten || help_mode)
if (flatten || help_mode) {
run("check");
run("flatten", "(with '-flatten')");
}
if (active_design)
active_design->scratchpad_unset("tribuf.added_something");
run("tribuf -logic");
@ -637,8 +639,10 @@ struct SynthXilinxPass : public ScriptPass
if (check_label("map_luts")) {
run("opt_expr -mux_undef -noclkinv");
if (flatten_before_abc)
if (flatten_before_abc) {
run("check");
run("flatten");
}
if (help_mode)
run("abc -luts 2:2,3,6:5[,10,20] [-dff] [-D 1]", "(option for '-nowidelut', '-dff', '-retime')");
else if (abc9) {