for-2.c 899 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /* { dg-additional-options "-std=gnu99" { target c } } */
  2. extern
  3. #ifdef __cplusplus
  4. "C"
  5. #endif
  6. void abort (void);
  7. #define M(x, y, z) O(x, y, z)
  8. #define O(x, y, z) x ## _ ## y ## _ ## z
  9. #define F simd
  10. #define G simd
  11. #define S
  12. #define N(x) M(x, G, normal)
  13. #include "for-2.h"
  14. #undef S
  15. #undef N
  16. #undef F
  17. #undef G
  18. #define F parallel for simd
  19. #define G pf_simd
  20. #include "for-1.h"
  21. #undef F
  22. #undef G
  23. #undef SC
  24. #define SC static
  25. #define F for simd
  26. #define G f_simd
  27. #include "for-1.h"
  28. #undef F
  29. #undef G
  30. #undef SC
  31. int
  32. main ()
  33. {
  34. if (test_simd_normal ()
  35. || test_pf_simd_static ()
  36. || test_pf_simd_static32 ()
  37. || test_pf_simd_auto ()
  38. || test_pf_simd_guided32 ()
  39. || test_pf_simd_runtime ()
  40. || test_f_simd_static ()
  41. || test_f_simd_static32 ()
  42. || test_f_simd_auto ()
  43. || test_f_simd_guided32 ()
  44. || test_f_simd_runtime ())
  45. abort ();
  46. return 0;
  47. }