1 /* { dg-do compile { target ia64-*-* } } */
2 /* { dg-options "-O2" } */
3 
4 char* area;
5 long int area_size;
6 char* base;
7 
fun(unsigned long int addr)8 void fun(unsigned long int addr)
9 {
10   unsigned long int size32 = (addr + 4096 - 1) & ~(4096 - 1);
11   unsigned long int size = size32 * sizeof(unsigned int);
12 
13   if (size > 0) {
14     size = (size + 1) & ~(1);
15   }
16 
17   area_size = size;
18   area = base + size;
19 }
20