MLBEDSW-8035: Update to TensorFlow 2.13
- Adds 3 ops: Bitcast, BitcastXor, RightShift
Change-Id: Ia9721c69d4f3da0deba7526addb95a9a54e63adf
Signed-off-by: William Isaksson <william.isaksson@arm.com>
diff --git a/README.md b/README.md
index ce76e3b..52392c9 100644
--- a/README.md
+++ b/README.md
@@ -49,7 +49,8 @@
against that of the corresponding TensorFlow Lite reference kernels. The
following list indicates which version is used for comparison:
-* Vela 3.9.0 to current supports TensorFlow 2.12
+* Vela 3.10.0 to current supports TensorFlow 2.13
+* Vela 3.9.0 supports TensorFlow 2.12
* Vela 3.8.0 supports TensorFlow 2.11
* Vela 3.6.0 to 3.7.0 supports TensorFlow 2.10
* Vela 3.5.0 supports TensorFlow 2.9
diff --git a/ethosu/vela/operation.py b/ethosu/vela/operation.py
index 31839c7..94d256c 100644
--- a/ethosu/vela/operation.py
+++ b/ethosu/vela/operation.py
@@ -334,6 +334,9 @@
UnsortedSegmentMax = OperatorInfo()
UnsortedSegmentMin = OperatorInfo()
UnsortedSegmentSum = OperatorInfo()
+ Bitcast = OperatorInfo()
+ BitwiseXor = OperatorInfo()
+ RightShift = OperatorInfo()
@property
def info(self):
diff --git a/ethosu/vela/tflite/BitcastOptions.py b/ethosu/vela/tflite/BitcastOptions.py
new file mode 100644
index 0000000..093dad7
--- /dev/null
+++ b/ethosu/vela/tflite/BitcastOptions.py
@@ -0,0 +1,36 @@
+# automatically generated by the FlatBuffers compiler, do not modify
+
+# namespace: tflite
+
+import flatbuffers
+from flatbuffers.compat import import_numpy
+np = import_numpy()
+
+class BitcastOptions(object):
+ __slots__ = ['_tab']
+
+ @classmethod
+ def GetRootAs(cls, buf, offset=0):
+ n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset)
+ x = BitcastOptions()
+ x.Init(buf, n + offset)
+ return x
+
+ @classmethod
+ def GetRootAsBitcastOptions(cls, buf, offset=0):
+ """This method is deprecated. Please switch to GetRootAs."""
+ return cls.GetRootAs(buf, offset)
+ @classmethod
+ def BitcastOptionsBufferHasIdentifier(cls, buf, offset, size_prefixed=False):
+ return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x54\x46\x4C\x33", size_prefixed=size_prefixed)
+
+ # BitcastOptions
+ def Init(self, buf, pos):
+ self._tab = flatbuffers.table.Table(buf, pos)
+
+def BitcastOptionsStart(builder): builder.StartObject(0)
+def Start(builder):
+ return BitcastOptionsStart(builder)
+def BitcastOptionsEnd(builder): return builder.EndObject()
+def End(builder):
+ return BitcastOptionsEnd(builder)
\ No newline at end of file
diff --git a/ethosu/vela/tflite/BitwiseXorOptions.py b/ethosu/vela/tflite/BitwiseXorOptions.py
new file mode 100644
index 0000000..4b53d10
--- /dev/null
+++ b/ethosu/vela/tflite/BitwiseXorOptions.py
@@ -0,0 +1,36 @@
+# automatically generated by the FlatBuffers compiler, do not modify
+
+# namespace: tflite
+
+import flatbuffers
+from flatbuffers.compat import import_numpy
+np = import_numpy()
+
+class BitwiseXorOptions(object):
+ __slots__ = ['_tab']
+
+ @classmethod
+ def GetRootAs(cls, buf, offset=0):
+ n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset)
+ x = BitwiseXorOptions()
+ x.Init(buf, n + offset)
+ return x
+
+ @classmethod
+ def GetRootAsBitwiseXorOptions(cls, buf, offset=0):
+ """This method is deprecated. Please switch to GetRootAs."""
+ return cls.GetRootAs(buf, offset)
+ @classmethod
+ def BitwiseXorOptionsBufferHasIdentifier(cls, buf, offset, size_prefixed=False):
+ return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x54\x46\x4C\x33", size_prefixed=size_prefixed)
+
+ # BitwiseXorOptions
+ def Init(self, buf, pos):
+ self._tab = flatbuffers.table.Table(buf, pos)
+
+def BitwiseXorOptionsStart(builder): builder.StartObject(0)
+def Start(builder):
+ return BitwiseXorOptionsStart(builder)
+def BitwiseXorOptionsEnd(builder): return builder.EndObject()
+def End(builder):
+ return BitwiseXorOptionsEnd(builder)
\ No newline at end of file
diff --git a/ethosu/vela/tflite/BuiltinOperator.py b/ethosu/vela/tflite/BuiltinOperator.py
index 0cce079..ec2c147 100644
--- a/ethosu/vela/tflite/BuiltinOperator.py
+++ b/ethosu/vela/tflite/BuiltinOperator.py
@@ -162,3 +162,6 @@
ATAN2 = 156
UNSORTED_SEGMENT_MIN = 157
SIGN = 158
+ BITCAST = 159
+ BITWISE_XOR = 160
+ RIGHT_SHIFT = 161
diff --git a/ethosu/vela/tflite/BuiltinOptions.py b/ethosu/vela/tflite/BuiltinOptions.py
index 06396b0..7c3b3da 100644
--- a/ethosu/vela/tflite/BuiltinOptions.py
+++ b/ethosu/vela/tflite/BuiltinOptions.py
@@ -127,3 +127,6 @@
UnsortedSegmentSumOptions = 121
ATan2Options = 122
SignOptions = 123
+ BitcastOptions = 124
+ BitwiseXorOptions = 125
+ RightShiftOptions = 126
diff --git a/ethosu/vela/tflite/RightShiftOptions.py b/ethosu/vela/tflite/RightShiftOptions.py
new file mode 100644
index 0000000..f347a60
--- /dev/null
+++ b/ethosu/vela/tflite/RightShiftOptions.py
@@ -0,0 +1,36 @@
+# automatically generated by the FlatBuffers compiler, do not modify
+
+# namespace: tflite
+
+import flatbuffers
+from flatbuffers.compat import import_numpy
+np = import_numpy()
+
+class RightShiftOptions(object):
+ __slots__ = ['_tab']
+
+ @classmethod
+ def GetRootAs(cls, buf, offset=0):
+ n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset)
+ x = RightShiftOptions()
+ x.Init(buf, n + offset)
+ return x
+
+ @classmethod
+ def GetRootAsRightShiftOptions(cls, buf, offset=0):
+ """This method is deprecated. Please switch to GetRootAs."""
+ return cls.GetRootAs(buf, offset)
+ @classmethod
+ def RightShiftOptionsBufferHasIdentifier(cls, buf, offset, size_prefixed=False):
+ return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x54\x46\x4C\x33", size_prefixed=size_prefixed)
+
+ # RightShiftOptions
+ def Init(self, buf, pos):
+ self._tab = flatbuffers.table.Table(buf, pos)
+
+def RightShiftOptionsStart(builder): builder.StartObject(0)
+def Start(builder):
+ return RightShiftOptionsStart(builder)
+def RightShiftOptionsEnd(builder): return builder.EndObject()
+def End(builder):
+ return RightShiftOptionsEnd(builder)
\ No newline at end of file
diff --git a/ethosu/vela/tflite_mapping.py b/ethosu/vela/tflite_mapping.py
index dba30c4..647430e 100644
--- a/ethosu/vela/tflite_mapping.py
+++ b/ethosu/vela/tflite_mapping.py
@@ -38,6 +38,8 @@
from .tflite import BatchToSpaceNDOptions
from .tflite import BidirectionalSequenceLSTMOptions
from .tflite import BidirectionalSequenceRNNOptions
+from .tflite import BitcastOptions
+from .tflite import BitwiseXorOptions
from .tflite import BroadcastToOptions
from .tflite import BucketizeOptions
from .tflite import CallOnceOptions
@@ -113,6 +115,7 @@
from .tflite import ReverseSequenceOptions
from .tflite import ReverseV2Options
from .tflite import Rfft2dOptions
+from .tflite import RightShiftOptions
from .tflite import RNNOptions
from .tflite import ScatterNdOptions
from .tflite import SegmentSumOptions
@@ -336,6 +339,9 @@
BuiltinOptions.UnsortedSegmentSumOptions: UnsortedSegmentSumOptions.UnsortedSegmentSumOptions,
BuiltinOptions.ATan2Options: ATan2Options.ATan2Options,
BuiltinOptions.SignOptions: SignOptions.SignOptions,
+ BuiltinOptions.BitcastOptions: BitcastOptions.BitcastOptions,
+ BuiltinOptions.BitwiseXorOptions: BitwiseXorOptions.BitwiseXorOptions,
+ BuiltinOptions.RightShiftOptions: RightShiftOptions.RightShiftOptions,
}
@@ -1022,6 +1028,21 @@
OptionsSerializer("UnsortedSegmentSumOptions"),
TFLITE_NO_INDICES,
),
+ BuiltinOperator.BITCAST: (
+ Op.Bitcast,
+ OptionsSerializer("BitcastOptions"),
+ TFLITE_NO_INDICES,
+ ),
+ BuiltinOperator.BITWISE_XOR: (
+ Op.BitwiseXor,
+ OptionsSerializer("BitwiseXorOptions"),
+ TFLITE_NO_INDICES,
+ ),
+ BuiltinOperator.RIGHT_SHIFT: (
+ Op.RightShift,
+ OptionsSerializer("RightShiftOptions"),
+ TFLITE_NO_INDICES,
+ ),
BuiltinOperator.CUSTOM: (Op.Custom, CustomOptionsSerializer(), TFLITE_NO_INDICES),
}