/ lib / numpy / distutils / checks / cpu_asimdhp.c
cpu_asimdhp.c
 1  #ifdef _MSC_VER
 2      #include <Intrin.h>
 3  #endif
 4  #include <arm_neon.h>
 5  
 6  int main(int argc, char **argv)
 7  {
 8      float16_t *src = (float16_t*)argv[argc-1];
 9      float16x8_t vhp  = vdupq_n_f16(src[0]);
10      float16x4_t vlhp = vdup_n_f16(src[1]);
11  
12      int ret  =  (int)vgetq_lane_f16(vabdq_f16(vhp, vhp), 0);
13          ret  += (int)vget_lane_f16(vabd_f16(vlhp, vlhp), 0);
14      return ret;
15  }