1 /* { dg-do run } */ 2 /* { dg-require-effective-target arm_v8_neon_hw } */ 3 /* { dg-options "-O2 -ftree-vectorize -fno-inline -march=armv8-a -save-temps" } */ 4 /* { dg-add-options arm_v8_neon } */ 5 6 #include "fmaxmin.x" 7 8 /* { dg-final { scan-assembler-times "vmaxnm.f32\tq\[0-9\]+, q\[0-9\]+, q\[0-9\]+" 1 } } */ 9 /* { dg-final { scan-assembler-times "vminnm.f32\tq\[0-9\]+, q\[0-9\]+, q\[0-9\]+" 1 } } */ 10 11 /* NOTE: There are no double precision vector versions of vmaxnm/vminnm. */ 12 /* { dg-final { scan-assembler-times "vmaxnm.f64\td\[0-9\]+, d\[0-9\]+, d\[0-9\]+" 1 } } */ 13 /* { dg-final { scan-assembler-times "vminnm.f64\td\[0-9\]+, d\[0-9\]+, d\[0-9\]+" 1 } } */ 14 15