1; RUN: opt %loadNPMPolly "-passes=scop(print<polly-simplify>)" -disable-output -aa-pipeline=basic-aa < %s | FileCheck %s -match-full-lines 2; 3; Remove redundant store (a store that writes the same value already 4; at the destination) 5; 6; for (int j = 0; j < n; j += 1) 7; A[0] = A[0]; 8; 9define void @func(i32 %n, ptr noalias nonnull %A) { 10entry: 11 br label %for 12 13for: 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 17 18 body: 19 %val = load double, ptr %A 20 store double %val, ptr %A 21 br label %inc 22 23inc: 24 %j.inc = add nuw nsw i32 %j, 1 25 br label %for 26 27exit: 28 br label %return 29 30return: 31 ret void 32} 33 34 35; CHECK: Statistics { 36; CHECK: Redundant writes removed: 1 37; CHECK: Stmts removed: 1 38; CHECK: } 39 40; CHECK: After accesses { 41; CHECK-NEXT: } 42