opencv

Форк
0
/
cpu_neon.cpp 
32 строки · 708.0 Байт
1
#include <stdio.h>
2

3
#if defined _WIN32 && (defined(_M_ARM) || defined(_M_ARM64))
4
# define _ARM64_DISTINCT_NEON_TYPES
5
# include <Intrin.h>
6
# include <arm_neon.h>
7
# define CV_NEON 1
8
#elif defined(__ARM_NEON)
9
#  include <arm_neon.h>
10
#  define CV_NEON 1
11
#endif
12

13
// MSVC 2019 bug. Details: https://github.com/opencv/opencv/pull/16027
14
void test_aliased_type(const uint8x16_t& a) { }
15
void test_aliased_type(const int8x16_t& a) { }
16

17
#if defined CV_NEON
18
int test()
19
{
20
    const float src[] = { 0.0f, 0.0f, 0.0f, 0.0f };
21
    float32x4_t val = vld1q_f32((const float32_t*)(src));
22
    return (int)vgetq_lane_f32(val, 0);
23
}
24
#else
25
#error "NEON is not supported"
26
#endif
27

28
int main()
29
{
30
  printf("%d\n", test());
31
  return 0;
32
}
33

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.