diff options
| author | Eric Christopher <echristo@gmail.com> | 2019-04-17 02:12:23 +0000 |
|---|---|---|
| committer | Eric Christopher <echristo@gmail.com> | 2019-04-17 02:12:23 +0000 |
| commit | a86343512845c9c1fdbac865fea88aa5fce7142a (patch) | |
| tree | 666fc6353de19ad8b00e56b67edd33f24104e4a7 /llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll | |
| parent | 7f8ca6e3679b3af951cb7a4b1377edfaa3244b93 (diff) | |
| download | bcm5719-llvm-a86343512845c9c1fdbac865fea88aa5fce7142a.tar.gz bcm5719-llvm-a86343512845c9c1fdbac865fea88aa5fce7142a.zip | |
Temporarily Revert "Add basic loop fusion pass."
As it's causing some bot failures (and per request from kbarton).
This reverts commit r358543/ab70da07286e618016e78247e4a24fcb84077fda.
llvm-svn: 358546
Diffstat (limited to 'llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll')
| -rw-r--r-- | llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll b/llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll deleted file mode 100644 index 1146e31ec25..00000000000 --- a/llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll +++ /dev/null @@ -1,112 +0,0 @@ -; RUN: opt -S -loop-vectorize < %s | FileCheck %s - -target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" -target triple = "x86_64-unknown-linux-gnu" - -define float @reduction_sum_float_ieee(i32 %n, float* %array) { -; CHECK-LABEL: define float @reduction_sum_float_ieee( -entry: - %entry.cond = icmp ne i32 0, 4096 - br i1 %entry.cond, label %loop, label %loop.exit - -loop: - %idx = phi i32 [ 0, %entry ], [ %idx.inc, %loop ] - %sum = phi float [ 0.000000e+00, %entry ], [ %sum.inc, %loop ] - %address = getelementptr float, float* %array, i32 %idx - %value = load float, float* %address - %sum.inc = fadd float %sum, %value - %idx.inc = add i32 %idx, 1 - %be.cond = icmp ne i32 %idx.inc, 4096 - br i1 %be.cond, label %loop, label %loop.exit - -loop.exit: - %sum.lcssa = phi float [ %sum.inc, %loop ], [ 0.000000e+00, %entry ] -; CHECK-NOT: %wide.load = load <4 x float>, <4 x float>* -; CHECK: ret float %sum.lcssa - ret float %sum.lcssa -} - -define float @reduction_sum_float_fastmath(i32 %n, float* %array) { -; CHECK-LABEL: define float @reduction_sum_float_fastmath( -; CHECK: fadd fast <4 x float> -; CHECK: fadd fast <4 x float> -; CHECK: fadd fast <4 x float> -; CHECK: fadd fast <4 x float> -; CHECK: fadd fast <4 x float> -entry: - %entry.cond = icmp ne i32 0, 4096 - br i1 %entry.cond, label %loop, label %loop.exit - -loop: - %idx = phi i32 [ 0, %entry ], [ %idx.inc, %loop ] - %sum = phi float [ 0.000000e+00, %entry ], [ %sum.inc, %loop ] - %address = getelementptr float, float* %array, i32 %idx - %value = load float, float* %address - %sum.inc = fadd fast float %sum, %value - %idx.inc = add i32 %idx, 1 - %be.cond = icmp ne i32 %idx.inc, 4096 - br i1 %be.cond, label %loop, label %loop.exit - -loop.exit: - %sum.lcssa = phi float [ %sum.inc, %loop ], [ 0.000000e+00, %entry ] -; CHECK: ret float %sum.lcssa - ret float %sum.lcssa -} - -define float @reduction_sum_float_only_reassoc(i32 %n, float* %array) { -; CHECK-LABEL: define float @reduction_sum_float_only_reassoc( -; CHECK-NOT: fadd fast -; CHECK: fadd reassoc <4 x float> -; CHECK: fadd reassoc <4 x float> -; CHECK: fadd reassoc <4 x float> -; CHECK: fadd reassoc <4 x float> -; CHECK: fadd reassoc <4 x float> - -entry: - %entry.cond = icmp ne i32 0, 4096 - br i1 %entry.cond, label %loop, label %loop.exit - -loop: - %idx = phi i32 [ 0, %entry ], [ %idx.inc, %loop ] - %sum = phi float [ 0.000000e+00, %entry ], [ %sum.inc, %loop ] - %address = getelementptr float, float* %array, i32 %idx - %value = load float, float* %address - %sum.inc = fadd reassoc float %sum, %value - %idx.inc = add i32 %idx, 1 - %be.cond = icmp ne i32 %idx.inc, 4096 - br i1 %be.cond, label %loop, label %loop.exit - -loop.exit: - %sum.lcssa = phi float [ %sum.inc, %loop ], [ 0.000000e+00, %entry ] -; CHECK: ret float %sum.lcssa - ret float %sum.lcssa -} - -define float @reduction_sum_float_only_reassoc_and_contract(i32 %n, float* %array) { -; CHECK-LABEL: define float @reduction_sum_float_only_reassoc_and_contract( -; CHECK-NOT: fadd fast -; CHECK: fadd reassoc contract <4 x float> -; CHECK: fadd reassoc contract <4 x float> -; CHECK: fadd reassoc contract <4 x float> -; CHECK: fadd reassoc contract <4 x float> -; CHECK: fadd reassoc contract <4 x float> - -entry: - %entry.cond = icmp ne i32 0, 4096 - br i1 %entry.cond, label %loop, label %loop.exit - -loop: - %idx = phi i32 [ 0, %entry ], [ %idx.inc, %loop ] - %sum = phi float [ 0.000000e+00, %entry ], [ %sum.inc, %loop ] - %address = getelementptr float, float* %array, i32 %idx - %value = load float, float* %address - %sum.inc = fadd reassoc contract float %sum, %value - %idx.inc = add i32 %idx, 1 - %be.cond = icmp ne i32 %idx.inc, 4096 - br i1 %be.cond, label %loop, label %loop.exit - -loop.exit: - %sum.lcssa = phi float [ %sum.inc, %loop ], [ 0.000000e+00, %entry ] -; CHECK: ret float %sum.lcssa - ret float %sum.lcssa -} |

