1 /* { dg-do compile { target powerpc*-*-* ia64-*-* i?86-*-* x86_64-*-* } } */
2 /* { dg-require-effective-target freorder } */
3 /* { dg-options "-O -fno-guess-branch-probability -fpeel-loops -freorder-blocks-and-partition -fschedule-insns2 -fsel-sched-pipelining -fselective-scheduling2" } */
13 TileDiffXY (int x, int y)
15 return (y * size_x) + x;
18 struct HangarTileTable
26 struct HangarTileTable *depot_table;
31 struct AirportSpec dummy;
34 GetRotatedTileFromOffset (int *a, struct intC tidc)
41 return (tidc.y << size_x) + tidc.x;
43 return TileDiffXY (tidc.y, dummy.size - tidc.x);
45 return TileDiffXY (tidc.x, dummy.size - tidc.y);
47 return TileDiffXY (dummy.size - 1, tidc.x);
55 for (i = 0; i < dummy.size; i++)
56 if (GetRotatedTileFromOffset (a, dummy.depot_table[i].ti))
57 return dummy.depot_table[i].hangar_num;