summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/prefetch-loop-arrays-1.c
blob: 59cebc52e96769da786638b3725f7aa27ddacce6 (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
29
30
31
32
33
34
35
36
/* PR tree-optimization/28887 */
/* { dg-do compile } */
/* { dg-options "-O2 -fprefetch-loop-arrays -w" } */
/* { dg-options "-O2 -fprefetch-loop-arrays -march=i686 -msse -w" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */

__extension__ typedef __SIZE_TYPE__ size_t;

struct re_pattern_buffer
{
  size_t re_nsub;
};

typedef enum
{
  start_memory,
} re_opcode_t;

typedef union
{
  struct
  {
    unsigned matched_something:1;
  } bits;
} byte_register_info_type;

void byte_re_match_2_internal (struct re_pattern_buffer *bufp)
{
  int mcnt;
  size_t num_regs = bufp->re_nsub + 1;
  byte_register_info_type *reg_info;
  for (mcnt = 1; (unsigned) mcnt < num_regs; mcnt++)
    {
      ((reg_info[mcnt]).bits.matched_something) = 0;
    }
}