[ForwardOpTree] Use known array content analysis to forward load instructions.
[polly-mirror.git] / test / Simplify / redundant_differentindex.ll
blob3a5e07334cbe53dfd67fb973414a758d01378b80
1 ; RUN: opt %loadPolly -polly-simplify -analyze < %s | FileCheck %s -match-full-lines
3 ; A store that has a different index than the load it is storing is
4 ; not redundant.
6 ; for (int j = 0; j < n; j += 1)
7 ;   A[0] = A[0];
9 define void @func(i32 %n, double* noalias nonnull %A) {
10 entry:
11   br label %for
13 for:
14   %j = phi i32 [0, %entry], [%j.inc, %inc]
15   %j.cmp = icmp slt i32 %j, %n
16   br i1 %j.cmp, label %body, label %exit
18     body:
19       %val = load double, double* %A
20       %A_idx = getelementptr inbounds double, double* %A, i32 %j
21       store double %val, double* %A_idx
22       br label %inc
24 inc:
25   %j.inc = add nuw nsw i32 %j, 1
26   br label %for
28 exit:
29   br label %return
31 return:
32   ret void
36 ; CHECK: SCoP could not be simplified