diff options
Diffstat (limited to 'src/analysis/scan/patterns/backends/bitap-int.h')
-rw-r--r-- | src/analysis/scan/patterns/backends/bitap-int.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/analysis/scan/patterns/backends/bitap-int.h b/src/analysis/scan/patterns/backends/bitap-int.h index 83ecc17..ea739b4 100644 --- a/src/analysis/scan/patterns/backends/bitap-int.h +++ b/src/analysis/scan/patterns/backends/bitap-int.h @@ -33,12 +33,15 @@ #include "../backend-int.h" #include "../../../../common/cpu.h" +#include "../../../../../config.h" #define BITAP_ATOM_SIZE 7 +#ifdef HAVE_AVX2 + /* Suivi d'un groupe de chaînes */ typedef struct _grouped_strings_avx2_t { @@ -64,6 +67,9 @@ typedef struct _group_manager_avx2_t } group_manager_avx2_t; +#endif + +#ifdef HAVE_AVX512_F /* Suivi d'un groupe de chaînes */ typedef struct _grouped_strings_avx512_t @@ -90,6 +96,8 @@ typedef struct _group_manager_avx512_t } group_manager_avx512_t; +#endif + /* Méthode de recherche basée sur l'algorithme Bitap (instance) */ struct _GBitapBackend @@ -98,11 +106,17 @@ struct _GBitapBackend CPUSMIDFeature optimization; /* Mode de calculs */ +#if defined HAVE_AVX2 || defined HAVE_AVX512_F union { +# ifdef HAVE_AVX2 group_manager_avx2_t manager_avx2; /* Gestionnaire pour AVX2 */ +# endif +# ifdef HAVE_AVX512_F group_manager_avx512_t manager_avx512;/* Gestionnaire pour AVX-512 */ +# endif }; +#endif }; |