Hi!
There is something confusing about the element types used by TOSA ops.
According to the spec these are the supported types:
So int is either signed int or unsigned int.
In TOSA implementation, we have:
def Tosa_Int8 : I<8>;
def Tosa_Int16 : I<16>;
def Tosa_Int32 : I<32>;
def Tosa_Int48 : I<48>;
def Tosa_Int64 : I<64>;
def Tosa_SignedInt : AnyTypeOf<[Tosa_Int8,
Tosa_Int16,
Tosa_Int32,
Tosa_Int48,
Tosa_Int64]>;
Here we actually have signless integer because we use:
// Signless integer type of a specific width.
class I<int width>
I would expect it to use:
// Signed integer type of a specific width.
class SI<int width>
Can someone elaborate on the decision to use signless types? It will make things clearer for me.
Thanks in advance,
Maya