aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEric Kunze <eric.kunze@arm.com>2023-05-18 01:13:41 +0000
committerEric Kunze <eric.kunze@arm.com>2023-05-18 01:14:53 +0000
commitf08956b10af531e382e1adf726f2196157f4caab (patch)
treecdb9716676cc6185b37a655221d20556deb02b96 /src
parentab8d234bdc64896297ceceb7b97ce74a783ac7ae (diff)
downloadserialization_lib-f08956b10af531e382e1adf726f2196157f4caab.tar.gz
Modify TOSA schema to force version to be written
Previously if the values were the default, they would not be written to the file Signed-off-by: Eric Kunze <eric.kunze@arm.com> Change-Id: Ibdf13d3ce672d3e8f062a7853d65a966ab5b0877
Diffstat (limited to 'src')
-rw-r--r--src/tosa_serialization_handler.cpp67
1 files changed, 0 insertions, 67 deletions
diff --git a/src/tosa_serialization_handler.cpp b/src/tosa_serialization_handler.cpp
index 25ac5df..bed79b2 100644
--- a/src/tosa_serialization_handler.cpp
+++ b/src/tosa_serialization_handler.cpp
@@ -194,56 +194,6 @@ TosaSerializationHandler::~TosaSerializationHandler()
Clear(); // deallocate all basic blocks
}
-TosaVersion TosaSerializationHandler::ParseTosaSchemaVersion(std::string schema)
-{
- // Parse all 4 version fields in schema file
- static const char* keywords[4] = { "major: int32 = ", "minor: int32 = ", "patch: int32 = ", "draft: bool = " };
- string keyword_str[4];
- size_t search_pos = 0;
- size_t keyword_pos;
- size_t semicolon_pos;
- // parse integer field first
- for (int32_t i = 0; i < 4; i++)
- {
- keyword_pos = schema.find(keywords[i], search_pos);
- if (keyword_pos == std::string::npos)
- {
- printf("ERROR: can't find keyword \"%s\" in schema\n", keywords[i]);
- assert(0);
- }
- semicolon_pos = schema.find(';', keyword_pos);
- if (keyword_pos == std::string::npos)
- {
- printf("ERROR: can't find ';' in schema\n");
- assert(0);
- }
- keyword_str[i] =
- schema.substr(keyword_pos + strlen(keywords[i]), semicolon_pos - keyword_pos - strlen(keywords[i]));
- search_pos = semicolon_pos;
- }
-
- int32_t schema_major = 0;
- int32_t schema_minor = 0;
- int32_t schema_patch = 0;
- bool schema_draft = false;
- try
- {
- schema_major = stoi(keyword_str[0]);
- schema_minor = stoi(keyword_str[1]);
- schema_patch = stoi(keyword_str[2]);
- schema_draft = (keyword_str[3] == "true") ? true : false;
- }
- catch (std::invalid_argument& e)
- {
- printf("ERROR: fail at stoi(): %s\n", e.what());
- assert(0);
- }
-
- TosaVersion schema_version(schema_major, schema_minor, schema_patch, schema_draft);
-
- return schema_version;
-}
-
tosa_err_t TosaSerializationHandler::LoadFileSchema(const char* schema_filename)
{
std::string schema;
@@ -258,23 +208,6 @@ tosa_err_t TosaSerializationHandler::LoadFileSchema(const char* schema_filename)
ok = _parser.Parse(schema.c_str());
- TosaVersion schema_version = ParseTosaSchemaVersion(schema);
-
- TosaVersion::compat_t is_compat = schema_version.is_compatible(GetVersion());
- switch (is_compat)
- {
- case TosaVersion::compat_t::COMPLETELY_COMPATIBLE:
- break;
- case TosaVersion::compat_t::PARTIALLY_COMPATIBLE:
- printf("WARNING: Schema flatbuffer version %s is partially compatible with serializer version %s\n",
- schema_version.to_string().c_str(), GetVersion().to_string().c_str());
- break;
- case TosaVersion::compat_t::NOT_COMPATIBLE:
- printf("ERROR: Schema flatbuffer version %s is not compatible with serializer version %s\n",
- schema_version.to_string().c_str(), GetVersion().to_string().c_str());
- return TOSA_VERSION_MISMATCH;
- }
-
if (!ok)
{
printf("Error parsing ISA schema file: %s\n", schema_filename);