1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-reassoc1" } */
4 unsigned int test3 (unsigned int x
, unsigned int y
, unsigned int z
,
6 unsigned int w1
, unsigned int w2
, unsigned int w3
)
8 unsigned int wtmp1
= w1
* weight
;
9 unsigned int wtmp2
= w2
* weight
;
10 unsigned int wtmp3
= w3
* weight
;
11 unsigned int tmp1
= x
* wtmp1
;
12 unsigned int tmp2
= y
* wtmp2
;
13 unsigned int tmp3
= z
* wtmp3
;
14 return tmp1
+ tmp2
+ tmp3
;
17 /* The multiplication with weight should be un-distributed.
18 ??? This pattern is not recognized currently. */
20 /* { dg-final { scan-tree-dump-times "\\\*" 4 "reassoc1" } } */