2017-12-05 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / falign-labels-1.c
blobbe277e4e04359eb91447987ea0d498dd6e980fb5
1 /* { dg-do run } */
2 /* { dg-options "-falign-labels=8" } */
4 /* On ARMv7-A CPUs, this test resulted in incorrect code generation.
5 The code generated for the switch statement expected the jump table
6 to immediately follow the jump instruction, but -falign-labels
7 caused the label preceding the table to be aligned. */
8 /* M68K and fido only support -falign-labels argument <= 2. */
10 volatile int x;
12 int main(void)
14 int y;
16 x = 0;
18 switch(x)
20 case 0:
21 y = 2 * x;
22 break;
23 case 1:
24 y = -3 * x;
25 break;
26 case 2:
27 y = x + 5;
28 break;
29 case 3:
30 y = x - 7;
31 break;
32 default:
33 break;
36 x = y;
38 return 0;