aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/torture/pr52720.c
blob: 528aa161b13b43abf15ee98405295618127a9165 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* { dg-do compile } */
/* { dg-options "-march=k8-sse3" { target x86_64-*-* } } */

struct alu_bank_swizzle {
    int hw_gpr[3][4];
    int hw_cfile_addr[4];
};
static void init_bank_swizzle(struct alu_bank_swizzle *bs)
{
  int i, cycle, component;
  for (cycle = 0; cycle < 3; cycle++)
    for (component = 0; component < 4; component++)
      bs->hw_gpr[cycle][component] = -1;
  for (i = 0; i < 4; i++) 
    bs->hw_cfile_addr[i] = -1;
}
int check_and_set_bank_swizzle(int max_slots, int *slots)
{
  struct alu_bank_swizzle bs;
  int i;
  for (i = 0; i < max_slots; i++)
    {
      init_bank_swizzle(&bs);
      if (slots[i])
	check_vector(&bs); 
    }
}