1 /* Not to fuse widening multiply with accumulate if the multiply has more than
2 one uses.
3 Note that for targets where pointer and int are of the same size or
4 widening multiply-and-accumulate is not available, this test just passes. */
5
6 /* { dg-do compile } */
7 /* { dg-options "-O2 -fdump-tree-widening_mul" } */
8
9 typedef int ArrT [10][10];
10
11 void
foo(ArrT Arr,int Idx)12 foo (ArrT Arr, int Idx)
13 {
14 Arr[Idx][Idx] = 1;
15 Arr[Idx + 10][Idx] = 2;
16 }
17
18 /* { dg-final { scan-tree-dump-not "WIDEN_MULT_PLUS_EXPR" "widening_mul" } } */
19