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,