diff options
Diffstat (limited to 'src/core/NEON/kernels/arm_gemm/utils.hpp')
-rw-r--r-- | src/core/NEON/kernels/arm_gemm/utils.hpp | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/core/NEON/kernels/arm_gemm/utils.hpp b/src/core/NEON/kernels/arm_gemm/utils.hpp index e648ce2fb5..4ba03da6e7 100644 --- a/src/core/NEON/kernels/arm_gemm/utils.hpp +++ b/src/core/NEON/kernels/arm_gemm/utils.hpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Arm Limited. + * Copyright (c) 2017-2021 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -37,6 +37,29 @@ namespace arm_gemm { template<typename T> +std::string get_type_name() { +#ifdef __GNUC__ + std::string s = __PRETTY_FUNCTION__; + + auto start = s.find("cls_"); + + if (start==std::string::npos) { + return "(unknown)"; + } + + for(size_t x = start+4; x<s.size(); x++) { + if (s[x] == ';' || s[x] == ']') { + return s.substr(start+4, x-(start+4)); + } + } + + return "(unknown)"; +#else + return "(unsupported)"; +#endif +} + +template<typename T> inline T iceildiv(const T a, const T b) { return (a + b - 1) / b; } |