diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2017-10-04 16:53:58 +0100 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:35:24 +0000 |
commit | ff421f2100e0e9e532f5fe78585300546af61690 (patch) | |
tree | 9ba5a1bfe64b5b10f70c64a965f9c5ca14de9ce3 /src/graph/INode.cpp | |
parent | 925ca0f7402115da3bffb21c04fca0bc822c9b38 (diff) | |
download | ComputeLibrary-ff421f2100e0e9e532f5fe78585300546af61690.tar.gz |
COMPMID-601: Add GraphContext
GraphContext hold all the information about the hints that need to be
passed in the nodes. As these might expand, it serves as a centralized
class for such information.
Change-Id: I0b5527630fb97cc5fa500db0bac8307ff2ea36e6
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/90300
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'src/graph/INode.cpp')
-rw-r--r-- | src/graph/INode.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/graph/INode.cpp b/src/graph/INode.cpp index 6b25022d15..4b383f562b 100644 --- a/src/graph/INode.cpp +++ b/src/graph/INode.cpp @@ -21,7 +21,6 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. */ - #include "arm_compute/graph/INode.h" #include "arm_compute/core/CL/OpenCL.h" @@ -31,17 +30,20 @@ using namespace arm_compute::graph; -Hint INode::override_hint(Hint hint) const +TargetHint INode::override_target_hint(TargetHint target_hint) const { - if(hint == Hint::OPENCL && !opencl_is_available()) + if(target_hint == TargetHint::OPENCL && !opencl_is_available()) { - hint = Hint::DONT_CARE; + target_hint = TargetHint::DONT_CARE; } - hint = node_override_hint(hint); - ARM_COMPUTE_ERROR_ON(hint == Hint::OPENCL && !opencl_is_available()); - return hint; + GraphHints hints{ target_hint }; + target_hint = node_override_hints(hints).target_hint(); + ARM_COMPUTE_ERROR_ON(target_hint == TargetHint::OPENCL && !opencl_is_available()); + return target_hint; } -Hint INode::node_override_hint(Hint hint) const +GraphHints INode::node_override_hints(GraphHints hints) const { - return hint == Hint::DONT_CARE ? Hint::NEON : hint; + TargetHint target_hint = hints.target_hint(); + hints.set_target_hint((target_hint == TargetHint::DONT_CARE) ? TargetHint::NEON : target_hint); + return hints; } |