[llvm] r328755 - [MemorySSA] Turn an assert into a condition

George Burgess IV via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 30 13:06:02 PDT 2018


Hello again,

I'd like approval to pick this follow-up to r328748 into the 6.0 branch, as
well. Please let me know what you think.

Thanks!
George

On Wed, Mar 28, 2018 at 8:12 PM, George Burgess IV via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: gbiv
> Date: Wed Mar 28 20:12:03 2018
> New Revision: 328755
>
> URL: http://llvm.org/viewvc/llvm-project?rev=328755&view=rev
> Log:
> [MemorySSA] Turn an assert into a condition
>
> Eli pointed out that variadic functions are totally a thing, so this
> assert is incorrect.
>
> No test-case is provided, since the only way this assert fires is if a
> specific DenseMap falls back to doing `isEqual` checks, and that seems
> fairly brittle (and requires a pyramid of growing
> `call void (i8, ...) @varargs(i8 0)`).
>
> Modified:
>     llvm/trunk/lib/Analysis/MemorySSA.cpp
>
> Modified: llvm/trunk/lib/Analysis/MemorySSA.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/
> MemorySSA.cpp?rev=328755&r1=328754&r2=328755&view=diff
> ============================================================
> ==================
> --- llvm/trunk/lib/Analysis/MemorySSA.cpp (original)
> +++ llvm/trunk/lib/Analysis/MemorySSA.cpp Wed Mar 28 20:12:03 2018
> @@ -159,8 +159,8 @@ public:
>      if (CS.getCalledValue() != Other.CS.getCalledValue())
>        return false;
>
> -    assert(CS.arg_size() == Other.CS.arg_size());
> -    return std::equal(CS.arg_begin(), CS.arg_end(), Other.CS.arg_begin());
> +    return CS.arg_size() == Other.CS.arg_size() &&
> +           std::equal(CS.arg_begin(), CS.arg_end(), Other.CS.arg_begin());
>    }
>
>  private:
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180330/b8e4171f/attachment.html>


More information about the llvm-commits mailing list