1/* Test the vmla_f64 AArch64 SIMD intrinsic. */ 2 3/* { dg-do run } */ 4/* { dg-options "-O3" } */ 5 6#include "arm_neon.h" 7 8#define EPS 1.0e-15 9 10extern void abort (void); 11 12int 13main (void) 14{ 15 float64x1_t arg1; 16 float64x1_t arg2; 17 float64x1_t arg3; 18 19 float64_t expected; 20 float64_t actual; 21 22 arg1 = vcreate_f64 (0x3fc4de626b6bbe9cULL); 23 arg2 = vcreate_f64 (0x3fb7e454dbe84408ULL); 24 arg3 = vcreate_f64 (0x3fdd359b94201a3aULL); 25 26 expected = 0.20563116414665633; 27 actual = vget_lane_f64 (vmla_f64 (arg1, arg2, arg3), 0); 28 29 if (__builtin_fabs (expected - actual) > EPS) 30 abort (); 31 32 return 0; 33} 34