[llvm] r296030 - Revert r282872 "CVP. Turn marking adds as no wrap on by default"

Hans Wennborg via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 24 10:49:23 PST 2017


Merged to 4.0 in r296148.

On Thu, Feb 23, 2017 at 2:29 PM, Hans Wennborg via llvm-commits
<llvm-commits at lists.llvm.org> wrote:
> Author: hans
> Date: Thu Feb 23 16:29:00 2017
> New Revision: 296030
>
> URL: http://llvm.org/viewvc/llvm-project?rev=296030&view=rev
> Log:
> Revert r282872 "CVP. Turn marking adds as no wrap on by default"
>
> While not CVP's fault, this caused miscompiles (PR31181). Reverting
> until those are resolved.
>
> (This also reverts the follow-ups r288154 and r288161 which removed the
> flag.)
>
> Modified:
>     llvm/trunk/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
>     llvm/trunk/test/Transforms/CorrelatedValuePropagation/add.ll
>
> Modified: llvm/trunk/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp?rev=296030&r1=296029&r2=296030&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp (original)
> +++ llvm/trunk/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp Thu Feb 23 16:29:00 2017
> @@ -41,6 +41,8 @@ STATISTIC(NumSDivs,     "Number of sdiv
>  STATISTIC(NumAShrs,     "Number of ashr converted to lshr");
>  STATISTIC(NumSRems,     "Number of srem converted to urem");
>
> +static cl::opt<bool> DontProcessAdds("cvp-dont-process-adds", cl::init(true));
> +
>  namespace {
>    class CorrelatedValuePropagation : public FunctionPass {
>    public:
> @@ -405,6 +407,9 @@ static bool processAShr(BinaryOperator *
>  static bool processAdd(BinaryOperator *AddOp, LazyValueInfo *LVI) {
>    typedef OverflowingBinaryOperator OBO;
>
> +  if (DontProcessAdds)
> +    return false;
> +
>    if (AddOp->getType()->isVectorTy() || hasLocalDefs(AddOp))
>      return false;
>
>
> Modified: llvm/trunk/test/Transforms/CorrelatedValuePropagation/add.ll
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/CorrelatedValuePropagation/add.ll?rev=296030&r1=296029&r2=296030&view=diff
> ==============================================================================
> --- llvm/trunk/test/Transforms/CorrelatedValuePropagation/add.ll (original)
> +++ llvm/trunk/test/Transforms/CorrelatedValuePropagation/add.ll Thu Feb 23 16:29:00 2017
> @@ -1,4 +1,4 @@
> -; RUN: opt < %s -correlated-propagation -S | FileCheck %s
> +; RUN: opt < %s -correlated-propagation -cvp-dont-process-adds=false -S | FileCheck %s
>
>  ; CHECK-LABEL: @test0(
>  define void @test0(i32 %a) {
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list