Implement new DoubleVermicelli16 acceleration functions using SVE2

Change-Id: Id4a8ffca840caab930a6e78cc0dfd0fe7d320b4e
This commit is contained in:
George Wort
2021-06-28 16:29:43 +01:00
committed by Konstantinos Margaritis
parent 91f5f10831
commit e1f0f6baf7
9 changed files with 874 additions and 159 deletions

View File

@@ -63,7 +63,9 @@ enum AccelType {
ACCEL_TRUFFLE,
ACCEL_RED_TAPE,
ACCEL_DVERM_MASKED,
ACCEL_VERM16
ACCEL_VERM16,
ACCEL_DVERM16,
ACCEL_DVERM16_MASKED,
};
/** \brief Structure for accel framework. */
@@ -104,6 +106,19 @@ union AccelAux {
u8 offset;
m128 mask;
} verm16;
struct {
u8 accel_type;
u8 offset;
u64a firsts;
m128 mask;
} dverm16;
struct {
u8 accel_type;
u8 offset;
u8 c1; // used for partial match
u8 m1; // used for partial match
m128 mask;
} mdverm16;
struct {
u8 accel_type;
u8 offset;