diff options
author | Tai Ly <tai.ly@arm.com> | 2023-08-21 17:00:29 +0000 |
---|---|---|
committer | Tai Ly <tai.ly@arm.com> | 2023-08-23 15:12:30 +0000 |
commit | c6939a4d269968a34b0ae0aa579f0f0736aaeccc (patch) | |
tree | 8925f10184fe6f4c8c179ad34d04a24d9e304bd7 /include/tosa_generated.h | |
parent | 442261bf67fa2ec4d86ed3e431a6373787b3e35a (diff) | |
download | serialization_lib-c6939a4d269968a34b0ae0aa579f0f0736aaeccc.tar.gz |
Add is_unranked flag to Tensors
This adds a bool field, is_unranked to TosaTensor in tosa.fbs
to indicate whether a tensor with shape = {} is an unranked tensor
or an 0-D tensor.
For older tosa files without this field, the default value is false.
Signed-off-by: Tai Ly <tai.ly@arm.com>
Change-Id: I86950050b522565509863c483cd3a3c1c50f8f69
Diffstat (limited to 'include/tosa_generated.h')
-rw-r--r-- | include/tosa_generated.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/include/tosa_generated.h b/include/tosa_generated.h index b2805a8..2995c3a 100644 --- a/include/tosa_generated.h +++ b/include/tosa_generated.h @@ -2205,7 +2205,8 @@ struct TosaTensor FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { VT_SHAPE = 6, VT_TYPE = 8, VT_DATA = 10, - VT_VARIABLE = 12 + VT_VARIABLE = 12, + VT_IS_UNRANKED = 14 }; const ::flatbuffers::String *name() const { return GetPointer<const ::flatbuffers::String *>(VT_NAME); @@ -2222,6 +2223,9 @@ struct TosaTensor FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { bool variable() const { return GetField<uint8_t>(VT_VARIABLE, 0) != 0; } + bool is_unranked() const { + return GetField<uint8_t>(VT_IS_UNRANKED, 0) != 0; + } bool Verify(::flatbuffers::Verifier &verifier) const { return VerifyTableStart(verifier) && VerifyOffset(verifier, VT_NAME) && @@ -2232,6 +2236,7 @@ struct TosaTensor FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { VerifyOffset(verifier, VT_DATA) && verifier.VerifyVector(data()) && VerifyField<uint8_t>(verifier, VT_VARIABLE, 1) && + VerifyField<uint8_t>(verifier, VT_IS_UNRANKED, 1) && verifier.EndTable(); } }; @@ -2255,6 +2260,9 @@ struct TosaTensorBuilder { void add_variable(bool variable) { fbb_.AddElement<uint8_t>(TosaTensor::VT_VARIABLE, static_cast<uint8_t>(variable), 0); } + void add_is_unranked(bool is_unranked) { + fbb_.AddElement<uint8_t>(TosaTensor::VT_IS_UNRANKED, static_cast<uint8_t>(is_unranked), 0); + } explicit TosaTensorBuilder(::flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); @@ -2272,12 +2280,14 @@ inline ::flatbuffers::Offset<TosaTensor> CreateTosaTensor( ::flatbuffers::Offset<::flatbuffers::Vector<int32_t>> shape = 0, tosa::DType type = tosa::DType_UNKNOWN, ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data = 0, - bool variable = false) { + bool variable = false, + bool is_unranked = false) { TosaTensorBuilder builder_(_fbb); builder_.add_data(data); builder_.add_type(type); builder_.add_shape(shape); builder_.add_name(name); + builder_.add_is_unranked(is_unranked); builder_.add_variable(variable); return builder_.Finish(); } @@ -2288,7 +2298,8 @@ inline ::flatbuffers::Offset<TosaTensor> CreateTosaTensorDirect( const std::vector<int32_t> *shape = nullptr, tosa::DType type = tosa::DType_UNKNOWN, const std::vector<uint8_t> *data = nullptr, - bool variable = false) { + bool variable = false, + bool is_unranked = false) { auto name__ = name ? _fbb.CreateString(name) : 0; auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0; if (data) { _fbb.ForceVectorAlignment(data->size(), sizeof(uint8_t), 8); } @@ -2299,7 +2310,8 @@ inline ::flatbuffers::Offset<TosaTensor> CreateTosaTensorDirect( shape__, type, data__, - variable); + variable, + is_unranked); } struct TosaOperator FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { |