[llvm-dev] Do we still need the self move protection in APInt's move assignment operator?

陳韋任 via llvm-dev llvm-dev at lists.llvm.org
Mon Apr 3 15:41:37 PDT 2017


Then I prefer removing to entirely. It's weird to write single/multi word
self move protection to workaround a bug of the host compiler whose version
we don't support. Note on [1], it says:

  For the most popular host toolchains we check for specific minimum
versions in our build systems

I don't play LLVM on Windows. But if the build system does check the
minimum version, I think we should remove
the protection entirely.

[1]
http://llvm.org/docs/GettingStarted.html#host-c-toolchain-both-compiler-and-standard-library

Regards,
chenwj


2017-04-04 5:35 GMT+08:00 Craig Topper <craig.topper at gmail.com>:

> The way the code is currently written we only do the self-move check on
> the multiword case. But on if we do a self move on a single word, we'll end
> up calling a memcpy with src and dest the same which is UB. So either way
> this code needs to change. We need to either move it up to cover single
> word too or remove it entirely.
>
> ~Craig
>
> On Sun, Apr 2, 2017 at 3:10 PM, 陳韋任 <chenwj.cs97g at g2.nctu.edu.tw> wrote:
>
>> I think so. Besides, recommended VS version is VS 2015 [1], the bug
>> should be long gone.
>>
>> [1] http://llvm.org/docs/GettingStarted.html#host-c-toolchain-
>> both-compiler-and-standard-library
>>
>> Regards,
>> chenwj
>>
>>
>> --
>> Wei-Ren Chen (陳韋任)
>> Homepage: https://people.cs.nctu.edu.tw/~chenwj
>>
>>
>> 2017-04-03 3:28 GMT+08:00 Craig Topper via llvm-dev <
>> llvm-dev at lists.llvm.org>:
>> > The comment says it was added due to a bug in MSVC 2013 implementation
>> of
>> > stable_sort. Newer versions of MSVC have fixed this bug in stable_sort
>> > according to this webpage record
>> > https://connect.microsoft.com/VisualStudio/feedback/details/886652
>> >
>> > Can we remove the check now?
>> >
>> > ~Craig
>> >
>> > _______________________________________________
>> > LLVM Developers mailing list
>> > llvm-dev at lists.llvm.org
>> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>> >
>>
>
>


-- 

--
Wei-Ren Chen (陳韋任)
Homepage: https://people.cs.nctu.edu.tw/~chenwj
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170404/fc756590/attachment.html>


More information about the llvm-dev mailing list