Do not list constants as inputs
Mark inputs resolved before running visitor
Register constant automatically, no need to keep track in importers
Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
known_ops.insert(e.second); //Consider all input _ops resolved by default
}
+ for (const auto& e : _constants) {
+ q.push_back(e);
+ known_ops.insert(e); //Consider all input _ops resolved by default
+ }
+
//BFS
while (!q.empty()) {
auto n = q.front();
for (auto& e : _inputs) {
res.emplace_back(e.second);
}
- for (auto c : _constants) {
- res.emplace_back(c);
- }
return res;
}
#include "core/modelIR/Operation.h"
#include "core/modelIR/operations/VariableOp.h"
+#include "core/modelIR/operations/ConstantOp.h"
namespace nnc {
namespace mir {
_inputs.insert(it, {op->getName(), op});
_ops.push_back(op);
}
-
+
+
+ void registerOp(ops::ConstantOp* op) {
+ _constants.insert(op);
+ _ops.push_back(op);
+ }
+
std::vector<Operation*> _ops;
size_t _lastNodeId = 0;
std::unordered_map<std::string, Operation*> _inputs;