summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/store_merging_7.c
blob: c744ece64073821bdfa7cfeb5a601beca0c12c9d (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
/* { dg-do compile } */
/* { dg-require-effective-target store_merge } */
/* { dg-options "-O2 -fdump-tree-store-merging" } */

/* Check that we can merge consecutive array members through the pointer.
   PR rtl-optimization/23684.  */

void
foo (char *input)
{
  input = __builtin_assume_aligned (input, 8);
  input[0] = 'H';
  input[1] = 'e';
  input[2] = 'l';
  input[3] = 'l';
  input[4] = 'o';
  input[5] = ' ';
  input[6] = 'w';
  input[7] = 'o';
  input[8] = 'r';
  input[9] = 'l';
  input[10] = 'd';
  input[11] = '\0';
}

/* { dg-final { scan-tree-dump-times "Merging successful" 1 "store-merging" } } */