1 /* { dg-do run } */
2 /* { dg-options "-O2 -fno-tree-vrp" } */
3 #include <assert.h>
4 
5 struct CH
6 {
7   unsigned char ch : 3;
8 } ch;
9 
MakeCheckOp(unsigned int * v1,unsigned int * v2)10 __attribute__((noinline)) void MakeCheckOp (unsigned int *v1, unsigned int *v2)
11 {
12  assert (*v1 == *v2);
13 
14 }
15 
main(void)16 int main (void)
17 {
18 
19   int len;
20 
21   for (len = 4; len >= 1; len--)
22   {
23      unsigned v1, v2;
24      ch.ch = len;
25      v1 = ch.ch;
26      v2 = len;
27      MakeCheckOp (&v1, &v2);
28   }
29 }
30