aboutsummaryrefslogtreecommitdiff
path: root/reference_model/include/func_config.h
diff options
context:
space:
mode:
Diffstat (limited to 'reference_model/include/func_config.h')
-rw-r--r--reference_model/include/func_config.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/reference_model/include/func_config.h b/reference_model/include/func_config.h
index d9b51d5..c1f8ef6 100644
--- a/reference_model/include/func_config.h
+++ b/reference_model/include/func_config.h
@@ -1,5 +1,5 @@
-// Copyright (c) 2020-2022, ARM Limited.
+// Copyright (c) 2020-2023, ARM Limited.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -19,6 +19,18 @@
#include <iostream>
#include <stdio.h>
+struct tosa_level_t {
+ int32_t MAX_RANK = 0;
+ int32_t MAX_KERNEL = 0;
+ int32_t MAX_STRIDE = 0;
+ int32_t MAX_SCALE = 0;
+
+ bool operator!=(const tosa_level_t &rhs) {
+ return !(MAX_RANK == rhs.MAX_RANK && MAX_KERNEL == rhs.MAX_KERNEL &&
+ MAX_STRIDE == rhs.MAX_STRIDE && MAX_SCALE == rhs.MAX_SCALE);
+ }
+};
+
struct func_config_t
{
std::string operator_fbs = "tosa.fbs";
@@ -37,6 +49,10 @@ struct func_config_t
uint32_t dump_intermediates = 0;
std::string fp_format = "0.5";
bool float_is_big_endian = false; // Set in arith_util.h by float_is_big_endian()
+
+ tosa_level_t tosa_level;
+ static constexpr tosa_level_t EIGHTK = { 6, 8192, 8192, 64 };
+ static constexpr tosa_level_t NONE = { 0, 0, 0, 0 };
};
#endif