Print help message for verific pass

This commit is contained in:
Eddie Hung 2019-11-19 13:24:48 -08:00
parent 7ea0a5937b
commit 84711f0e8c
1 changed files with 12 additions and 9 deletions

View File

@ -2073,8 +2073,10 @@ struct VerificPass : public Pass {
{ {
static bool set_verific_global_flags = true; static bool set_verific_global_flags = true;
if (check_noverific_env()) if (check_noverific_env()) {
help();
log_cmd_error("This version of Yosys is built without Verific support.\n"); log_cmd_error("This version of Yosys is built without Verific support.\n");
}
log_header(design, "Executing VERIFIC (loading SystemVerilog and VHDL designs using Verific).\n"); log_header(design, "Executing VERIFIC (loading SystemVerilog and VHDL designs using Verific).\n");
@ -2395,7 +2397,7 @@ struct VerificPass : public Pass {
else else
{ {
if (argidx == GetSize(args)) if (argidx == GetSize(args))
log_cmd_error("No top module specified.\n"); cmd_error(arg, argidx, "No top module specified.\n");
Array veri_modules, vhdl_units; Array veri_modules, vhdl_units;
for (; argidx < GetSize(args); argidx++) for (; argidx < GetSize(args); argidx++)
@ -2481,7 +2483,7 @@ struct VerificPass : public Pass {
goto check_error; goto check_error;
} }
log_cmd_error("Missing or unsupported mode parameter.\n"); cmd_error(args, argidx, "Missing or unsupported mode parameter.\n");
check_error: check_error:
if (!verific_error_msg.empty()) if (!verific_error_msg.empty())
@ -2490,6 +2492,7 @@ struct VerificPass : public Pass {
} }
#else /* YOSYS_ENABLE_VERIFIC */ #else /* YOSYS_ENABLE_VERIFIC */
void execute(std::vector<std::string>, RTLIL::Design *) YS_OVERRIDE { void execute(std::vector<std::string>, RTLIL::Design *) YS_OVERRIDE {
help();
log_cmd_error("This version of Yosys is built without Verific support.\n"); log_cmd_error("This version of Yosys is built without Verific support.\n");
} }
#endif #endif
@ -2548,14 +2551,14 @@ struct ReadPass : public Pass {
static bool use_verific = verific_available; static bool use_verific = verific_available;
if (args.size() < 2 || args[1][0] != '-') if (args.size() < 2 || args[1][0] != '-')
log_cmd_error("Missing mode parameter.\n"); cmd_error(args, 1, "Missing mode parameter.\n");
if (args[1] == "-verific" || args[1] == "-noverific") { if (args[1] == "-verific" || args[1] == "-noverific") {
if (args.size() != 2) if (args.size() != 2)
log_cmd_error("Additional arguments to -verific/-noverific.\n"); cmd_error(args, 1, "Additional arguments to -verific/-noverific.\n");
if (args[1] == "-verific") { if (args[1] == "-verific") {
if (!verific_available) if (!verific_available)
log_cmd_error("This version of Yosys is built without Verific support.\n"); cmd_error(args, 1, "This version of Yosys is built without Verific support.\n");
use_verific = true; use_verific = true;
} else { } else {
use_verific = false; use_verific = false;
@ -2564,7 +2567,7 @@ struct ReadPass : public Pass {
} }
if (args.size() < 3) if (args.size() < 3)
log_cmd_error("Missing file name parameter.\n"); cmd_error(args, 3, "Missing file name parameter.\n");
if (args[1] == "-vlog95" || args[1] == "-vlog2k") { if (args[1] == "-vlog95" || args[1] == "-vlog2k") {
if (use_verific) { if (use_verific) {
@ -2596,7 +2599,7 @@ struct ReadPass : public Pass {
args[0] = "verific"; args[0] = "verific";
Pass::call(design, args); Pass::call(design, args);
} else { } else {
log_cmd_error("This version of Yosys is built without Verific support.\n"); cmd_error(args, 1, "This version of Yosys is built without Verific support.\n");
} }
return; return;
} }
@ -2643,7 +2646,7 @@ struct ReadPass : public Pass {
return; return;
} }
log_cmd_error("Missing or unsupported mode parameter.\n"); cmd_error(args, 1, "Missing or unsupported mode parameter.\n");
} }
} ReadPass; } ReadPass;