diff options
Diffstat (limited to 'test/Transforms/LoopUnroll/X86/partial.ll')
-rw-r--r-- | test/Transforms/LoopUnroll/X86/partial.ll | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/test/Transforms/LoopUnroll/X86/partial.ll b/test/Transforms/LoopUnroll/X86/partial.ll index 4566f792deb4..104a38779e52 100644 --- a/test/Transforms/LoopUnroll/X86/partial.ll +++ b/test/Transforms/LoopUnroll/X86/partial.ll @@ -86,17 +86,20 @@ for.body: ; preds = %entry, %for.body %reduction.026 = phi i16 [ %add14, %for.body ], [ 0, %entry ] %arrayidx = getelementptr inbounds i16, i16* %arr, i64 %indvars.iv %0 = load i16, i16* %arrayidx, align 2 - %add = add i16 %0, %reduction.026 + %mul = shl i16 %0, 1 + %add = add i16 %mul, %reduction.026 %sext = mul i64 %indvars.iv, 12884901888 %idxprom3 = ashr exact i64 %sext, 32 %arrayidx4 = getelementptr inbounds i16, i16* %arr, i64 %idxprom3 %1 = load i16, i16* %arrayidx4, align 2 - %add7 = add i16 %add, %1 + %mul2 = shl i16 %1, 1 + %add7 = add i16 %add, %mul2 %sext28 = mul i64 %indvars.iv, 21474836480 %idxprom10 = ashr exact i64 %sext28, 32 %arrayidx11 = getelementptr inbounds i16, i16* %arr, i64 %idxprom10 %2 = load i16, i16* %arrayidx11, align 2 - %add14 = add i16 %add7, %2 + %mul3 = shl i16 %2, 1 + %add14 = add i16 %add7, %mul3 %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1 %lftr.wideiv = trunc i64 %indvars.iv.next to i32 %exitcond = icmp eq i32 %lftr.wideiv, %n |