1 /* { dg-do compile } */
2 /* { dg-options "-O -fdump-tree-fre1-details -fdump-tree-dse1-details" } */
4 typedef unsigned char v16qi
__attribute__((vector_size(16)));
5 typedef unsigned short v8hi
__attribute__((vector_size(16)));
6 typedef unsigned int v4si
__attribute__((vector_size(16)));
9 unsigned char x
[256] __attribute__((aligned(16)));
10 __builtin_memset (x
, 23, 256);
11 v16qi resqi
= *(v16qi
*)&x
[16];
12 v8hi reshi
= *(v8hi
*)&x
[16];
13 v4si ressi
= *(v4si
*)&x
[16];
14 *(v16qi
*)dest
= resqi
;
15 *(v8hi
*)(dest
+ 16) = reshi
;
16 *(v4si
*)(dest
+ 32) = ressi
;
19 /* { dg-final { scan-tree-dump-times "Replaced MEM" 3 "fre1" } } */
20 /* { dg-final { scan-tree-dump-times "Deleted dead call" 1 "dse1" } } */