diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.target/aarch64/vect-fmaxv-fminv.x')
-rw-r--r-- | gcc-4.9/gcc/testsuite/gcc.target/aarch64/vect-fmaxv-fminv.x | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/aarch64/vect-fmaxv-fminv.x b/gcc-4.9/gcc/testsuite/gcc.target/aarch64/vect-fmaxv-fminv.x new file mode 100644 index 000000000..0bc6ba494 --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gcc.target/aarch64/vect-fmaxv-fminv.x @@ -0,0 +1,43 @@ + +typedef float *__restrict__ pRF32; +typedef double *__restrict__ pRF64; + +float maxv_f32 (pRF32 a) +{ + int i; + float s = a[0]; + for (i=1;i<8;i++) + s = (s > a[i] ? s : a[i]); + + return s; +} + +float minv_f32 (pRF32 a) +{ + int i; + float s = a[0]; + for (i=1;i<16;i++) + s = (s < a[i] ? s : a[i]); + + return s; +} + +double maxv_f64 (pRF64 a) +{ + int i; + double s = a[0]; + for (i=1;i<8;i++) + s = (s > a[i] ? s : a[i]); + + return s; +} + +double minv_f64 (pRF64 a) +{ + int i; + double s = a[0]; + for (i=1;i<16;i++) + s = (s < a[i] ? s : a[i]); + + return s; +} |