diff options
Diffstat (limited to 'frontends/ilang/ilang_frontend.cc')
-rw-r--r-- | frontends/ilang/ilang_frontend.cc | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/frontends/ilang/ilang_frontend.cc b/frontends/ilang/ilang_frontend.cc deleted file mode 100644 index 30d9ff79d..000000000 --- a/frontends/ilang/ilang_frontend.cc +++ /dev/null @@ -1,100 +0,0 @@ -/* - * yosys -- Yosys Open SYnthesis Suite - * - * Copyright (C) 2012 Clifford Wolf <clifford@clifford.at> - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - * - * --- - * - * A very simple and straightforward frontend for the RTLIL text - * representation (as generated by the 'ilang' backend). - * - */ - -#include "ilang_frontend.h" -#include "kernel/register.h" -#include "kernel/log.h" - -void rtlil_frontend_ilang_yyerror(char const *s) -{ - YOSYS_NAMESPACE_PREFIX log_error("Parser error in line %d: %s\n", rtlil_frontend_ilang_yyget_lineno(), s); -} - -YOSYS_NAMESPACE_BEGIN - -struct IlangFrontend : public Frontend { - IlangFrontend() : Frontend("ilang", "read modules from ilang file") { } - void help() YS_OVERRIDE - { - // |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---| - log("\n"); - log(" read_ilang [filename]\n"); - log("\n"); - log("Load modules from an ilang file to the current design. (ilang is a text\n"); - log("representation of a design in yosys's internal format.)\n"); - log("\n"); - log(" -nooverwrite\n"); - log(" ignore re-definitions of modules. (the default behavior is to\n"); - log(" create an error message if the existing module is not a blackbox\n"); - log(" module, and overwrite the existing module if it is a blackbox module.)\n"); - log("\n"); - log(" -overwrite\n"); - log(" overwrite existing modules with the same name\n"); - log("\n"); - log(" -lib\n"); - log(" only create empty blackbox modules\n"); - log("\n"); - } - void execute(std::istream *&f, std::string filename, std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE - { - ILANG_FRONTEND::flag_nooverwrite = false; - ILANG_FRONTEND::flag_overwrite = false; - ILANG_FRONTEND::flag_lib = false; - - log_header(design, "Executing ILANG frontend.\n"); - - size_t argidx; - for (argidx = 1; argidx < args.size(); argidx++) { - std::string arg = args[argidx]; - if (arg == "-nooverwrite") { - ILANG_FRONTEND::flag_nooverwrite = true; - ILANG_FRONTEND::flag_overwrite = false; - continue; - } - if (arg == "-overwrite") { - ILANG_FRONTEND::flag_nooverwrite = false; - ILANG_FRONTEND::flag_overwrite = true; - continue; - } - if (arg == "-lib") { - ILANG_FRONTEND::flag_lib = true; - continue; - } - break; - } - extra_args(f, filename, args, argidx); - - log("Input filename: %s\n", filename.c_str()); - - ILANG_FRONTEND::lexin = f; - ILANG_FRONTEND::current_design = design; - rtlil_frontend_ilang_yydebug = false; - rtlil_frontend_ilang_yyrestart(NULL); - rtlil_frontend_ilang_yyparse(); - rtlil_frontend_ilang_yylex_destroy(); - } -} IlangFrontend; - -YOSYS_NAMESPACE_END - |