[llvm] r217144 - Enable noalias metadata by default and swap the order of the SLP and Loop vectorizers by default.

Louis Gerbarg lgg at apple.com
Wed Sep 10 15:32:56 PDT 2014


This patch seems to be causing some performance regressions. In particular, I am seeing 30-50% performance regressions for libquantum targeting armv7 at -Os and -O3 across several different devices. Do you see similar regressions? Any thoughts?

Thanks,
Louis

> On Sep 4, 2014, at 6:23 AM, James Molloy <james.molloy at arm.com> wrote:
> 
> Author: jamesm
> Date: Thu Sep  4 08:23:08 2014
> New Revision: 217144
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=217144&view=rev
> Log:
> Enable noalias metadata by default and swap the order of the SLP and Loop vectorizers by default.
> 
> After some time maturing, hopefully the flags themselves will be removed.
> 
> Modified:
>    llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
>    llvm/trunk/lib/Transforms/Utils/InlineFunction.cpp
> 
> Modified: llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp?rev=217144&r1=217143&r2=217144&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp (original)
> +++ llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp Thu Sep  4 08:23:08 2014
> @@ -62,7 +62,7 @@ static cl::opt<bool> RunLoadCombine("com
> 
> static cl::opt<bool>
> RunSLPAfterLoopVectorization("run-slp-after-loop-vectorization",
> -  cl::init(false), cl::Hidden,
> +  cl::init(true), cl::Hidden,
>   cl::desc("Run the SLP vectorizer (and BB vectorizer) after the Loop "
>            "vectorizer instead of before"));
> 
> 
> Modified: llvm/trunk/lib/Transforms/Utils/InlineFunction.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Utils/InlineFunction.cpp?rev=217144&r1=217143&r2=217144&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Transforms/Utils/InlineFunction.cpp (original)
> +++ llvm/trunk/lib/Transforms/Utils/InlineFunction.cpp Thu Sep  4 08:23:08 2014
> @@ -42,7 +42,7 @@
> using namespace llvm;
> 
> static cl::opt<bool>
> -EnableNoAliasConversion("enable-noalias-to-md-conversion", cl::init(false),
> +EnableNoAliasConversion("enable-noalias-to-md-conversion", cl::init(true),
>   cl::Hidden,
>   cl::desc("Convert noalias attributes to metadata during inlining."));
> 
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list