1184588Sdfr/* { dg-do run } */ 2184588Sdfr/* { dg-require-effective-target avx } */ 3184588Sdfr/* { dg-options "-O2 -mavx" } */ 4184588Sdfr 5184588Sdfr#include "avx-check.h" 6184588Sdfr 7184588Sdfrvoid static 8184588Sdfravx_test (void) 9184588Sdfr{ 10184588Sdfr int i; 11184588Sdfr union256 u, s1, s2; 12184588Sdfr float e [8]; 13184588Sdfr 14184588Sdfr s1.x = _mm256_set_ps (24.43, 68.346, 43.35, 546.46, 46.79, 82.78, 82.7, 9.4); 15184588Sdfr s2.x = _mm256_set_ps (1.17, 2.16, 3.15, 4.14, 5.13, 6.12, 7.11, 8.9); 16184588Sdfr u.x = _mm256_sub_ps (s1.x, s2.x); 17184588Sdfr 18184588Sdfr for (i = 0; i < 8; i++) 19184588Sdfr e[i] = s1.a[i] - s2.a[i]; 20184588Sdfr 21184588Sdfr if (check_union256 (u, e)) 22184588Sdfr abort (); 23184588Sdfr} 24184588Sdfr