ONE - On-device Neural Engine
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Verifier.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#ifndef __ONERT_GRAPH_VERIFIER_VERIFIER_H__
18#define __ONERT_GRAPH_VERIFIER_VERIFIER_H__
19
21
22namespace onert::ir
23{
24class Graph;
25} // namespace onert::ir
26
27namespace onert::ir::verifier
28{
29
31{
32 virtual ~IVerifier() = default;
33 virtual bool verify(const Graph &graph) const noexcept = 0;
34};
35
36} // namespace onert::ir::verifier
37
38namespace onert::ir::verifier
39{
40
41class DAGChecker : public IVerifier
42{
43public:
44 bool verify(const Graph &graph) const noexcept override;
45 bool verify(const train::UseDefChains &training_defuses) const noexcept;
46};
47
48class EdgeChecker : public IVerifier
49{
50public:
51 bool verify(const Graph &graph) const noexcept override;
52 bool verify(const train::UseDefChains &training_defuses) const noexcept;
53};
54
59{
60public:
61 bool verify(const Graph &graph) const noexcept override;
62};
63
64} // namespace onert::ir::verifier
65
66#endif // __ONERT_GRAPH_VERIFIER_VERIFIER_H__
bool verify(const Graph &graph) const noexcept override
Definition Verifier.cc:88
bool verify(const Graph &graph) const noexcept override
Definition Verifier.cc:168
Check model input and output operands are really exist in the graph.
Definition Verifier.h:59
bool verify(const Graph &graph) const noexcept override
Definition Verifier.cc:221
std::unordered_map< TrainingOperandIndex, UseDefChain > UseDefChains
virtual bool verify(const Graph &graph) const noexcept=0
virtual ~IVerifier()=default