aboutsummaryrefslogtreecommitdiffstats
path: root/passes/cmds
diff options
context:
space:
mode:
authorAlberto Gonzalez <boqwxp@airmail.cc>2020-04-20 21:13:59 +0000
committerAlberto Gonzalez <boqwxp@airmail.cc>2020-07-01 19:51:45 +0000
commit5f45fe51ea884e58f689bb876f7e6bafa0b86520 (patch)
treeab23ac762ed8d327bb825194d620abe765c13c0f /passes/cmds
parent7450ee7f8a547aa72d3afa0638af2190cc52c6a9 (diff)
downloadyosys-5f45fe51ea884e58f689bb876f7e6bafa0b86520.tar.gz
yosys-5f45fe51ea884e58f689bb876f7e6bafa0b86520.tar.bz2
yosys-5f45fe51ea884e58f689bb876f7e6bafa0b86520.zip
glift: Add skeleton for `glift` command.
Diffstat (limited to 'passes/cmds')
-rw-r--r--passes/cmds/Makefile.inc1
-rw-r--r--passes/cmds/glift.cc50
2 files changed, 51 insertions, 0 deletions
diff --git a/passes/cmds/Makefile.inc b/passes/cmds/Makefile.inc
index 53bfd40c6..5ec2fb6ad 100644
--- a/passes/cmds/Makefile.inc
+++ b/passes/cmds/Makefile.inc
@@ -18,6 +18,7 @@ OBJS += passes/cmds/setattr.o
OBJS += passes/cmds/copy.o
OBJS += passes/cmds/splice.o
OBJS += passes/cmds/scc.o
+OBJS += passes/cmds/glift.o
OBJS += passes/cmds/torder.o
OBJS += passes/cmds/logcmd.o
OBJS += passes/cmds/tee.o
diff --git a/passes/cmds/glift.cc b/passes/cmds/glift.cc
new file mode 100644
index 000000000..8ef92ddf7
--- /dev/null
+++ b/passes/cmds/glift.cc
@@ -0,0 +1,50 @@
+/*
+ * yosys -- Yosys Open SYnthesis Suite
+ *
+ * Copyright (C) 2020 Alberto Gonzalez <boqwxp@airmail.cc>
+ *
+ * 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.
+ *
+ */
+
+#include "kernel/register.h"
+#include "kernel/rtlil.h"
+#include "kernel/log.h"
+
+USING_YOSYS_NAMESPACE
+PRIVATE_NAMESPACE_BEGIN
+
+struct GliftPass : public Pass {
+ GliftPass() : Pass("glift", "create and transform GLIFT models") { }
+ void help() YS_OVERRIDE
+ {
+ // |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|
+ log("\n");
+ log(" glift [options] [selection]\n");
+ log("\n");
+ log("Adds, removes, or manipulates gate-level information flow tracking (GLIFT) logic\n");
+ log("to the current or specified module.\n");
+ log("\n");
+ log("Options:");
+ log("\n");
+ log(" -create");
+ log(" Replaces the current or specified module with one that has additional \"taint\"\n");
+ log(" inputs, outputs, and internal nets along with precise taint-tracking logic.\n");
+ log("\n");
+ }
+ void execute(std::vector<std::string> args, RTLIL::Design *design) YS_OVERRIDE
+ {
+ }
+} GliftPass;
+
+PRIVATE_NAMESPACE_END