[PATCH] D37216: [SROA] propagate !range metadata when moving loads

Ariel Ben-Yehuda via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 5 15:33:05 PDT 2017


Both commits together gave an 0.5% compile-time speedup.

On Wed, Sep 6, 2017 at 1:12 AM, Hal Finkel via Phabricator
<reviews at reviews.llvm.org> wrote:
> hfinkel added a comment.
>
> You can benchmarks on the ValueTracking change? How did those turn out?
>
>
>
> ================
> Comment at: lib/Transforms/Utils/PromoteMemoryToRegister.cpp:172
> +public:
> +  unsigned start;
> +  unsigned end;
> ----------------
> Variable names start with a capital letter.
>
>
> ================
> Comment at: lib/Transforms/Utils/PromoteMemoryToRegister.cpp:264
> +    if (BB != I->getParent()) {
> +      // instructions in different basic blocks, so control flow
> +      // can diverge between them (we could track this with
> ----------------
> Start comments with a capital letter.
>
>
> ================
> Comment at: lib/Transforms/Utils/PromoteMemoryToRegister.cpp:270
> +
> +    unsigned index1 = getInstructionIndex(CxtI);
> +    unsigned index2 = getInstructionIndex(I);
> ----------------
> Local variable names start with a capital letter.
>
>
> ================
> Comment at: lib/Transforms/Utils/PromoteMemoryToRegister.cpp:280
> +    // we notice that CxtI can only be in the first range R where
> +    // CxtI.end < R.end. If we that range using binary search,
> +    // we can check whether I and CxtI are both in it.
> ----------------
> If we that -> If we find that
>
>
> https://reviews.llvm.org/D37216
>
>
>


More information about the llvm-commits mailing list