Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/tree-ssa/cswtch.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { dg-options "-O2 -fdump-tree-switchconv" } */ /* { dg-do run } */ extern void abort (void); static int X, Y; int check(int param) { int a = 0; int b = 1; switch (param) { case -2: a = 0; b = -1; break; case 1: case 2: a = 8; b = 6; break; case 3: a = 9; b = 5; break; case 6: a = 10; b = 4; break; default: a = 16; b = 1; } X = a; Y = b; return 0; } void assertions(int a, int b) { if (X != a || Y != b) abort(); return; } int main () { check (-10); assertions (16, 1); check (-2); assertions (0, -1); check(1); assertions (8, 6); check(2); assertions (8, 6); check(3); assertions (9, 5); check(5); assertions (16, 1); check(6); assertions (10, 4); check(12); assertions (16, 1); return 0; } /* { dg-final { scan-tree-dump "Switch converted" "switchconv" } } */