diff --git a/include/volk/volk_complex.h b/include/volk/volk_complex.h index e8dea17..46e25c6 100644 --- a/include/volk/volk_complex.h +++ b/include/volk/volk_complex.h @@ -58,10 +58,18 @@ inline T lv_conj(const T& x) #include #include +#ifdef __EDG__ +#include +typedef int16_t lv_8sc_t; +typedef int32_t lv_16sc_t; +typedef int64_t lv_32sc_t; +typedef __int128 lv_64sc_t; +#else typedef char complex lv_8sc_t; typedef short complex lv_16sc_t; typedef long complex lv_32sc_t; typedef long long complex lv_64sc_t; +#endif typedef float complex lv_32fc_t; typedef double complex lv_64fc_t; diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index fb9a8f9..e26c562 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -305,6 +305,16 @@ foreach(arch mmx orc 64 32) endforeach(machine_name) endforeach(arch) +if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL "e2k") + if(ORC_FOUND) + list(REMOVE_ITEM available_machines "neon_orc") + list(APPEND available_machines "sse4_1_mmx_orc") + else() + list(REMOVE_ITEM available_machines "neon") + list(APPEND available_machines "sse4_1_mmx") + endif() +endif() + ######################################################################## # done overrules! print the result ########################################################################