switch-conversion-2.c 406 B

12345678910111213141516171819202122232425262728293031
  1. /* PR tree-optimization/85063 */
  2. /* { dg-additional-options "-ftree-switch-conversion" } */
  3. #include <stdlib.h>
  4. int
  5. main (void)
  6. {
  7. int n[1];
  8. n[0] = 3;
  9. #pragma omp target
  10. {
  11. int m = n[0];
  12. switch (m & 3)
  13. {
  14. case 0: m = 4; break;
  15. case 1: m = 3; break;
  16. case 2: m = 2; break;
  17. default:
  18. m = 1; break;
  19. }
  20. n[0] = m;
  21. }
  22. if (n[0] != 1)
  23. abort ();
  24. return 0;
  25. }