[llvm] r202662 - Give APInt move semantics.

Ahmed Charles acharles at outlook.com
Sun Mar 2 17:30:57 PST 2014


----------------------------------------
> Subject: Re: [llvm] r202662 - Give APInt move semantics.
> From: benny.kra at gmail.com
> Date: Mon, 3 Mar 2014 02:20:27 +0100
> CC: benny.kra at googlemail.com; llvm-commits at cs.uiuc.edu
> To: acharles at outlook.com
>
>
> On 03.03.2014, at 01:22, Ahmed Charles <acharles at outlook.com> wrote:
>
>> ----------------------------------------
>>> Subject: [llvm] r202662 - Give APInt move semantics.
>>> Date: Sun, 2 Mar 2014 20:56:28 +0000
>>> To: llvm-commits at cs.uiuc.edu
>>> From: benny.kra at googlemail.com
>>>
>>> Author: d0k
>>> Date: Sun Mar 2 14:56:28 2014
>>> New Revision: 202662
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=202662&view=rev
>>> Log:
>>> Give APInt move semantics.
>>>
>>> The interaction between defaulted operators and move elision isn't
>>> totally obvious, add a unit test so it doesn't break unintentionally.
>>>
>>
>>
>> This change also seems to rely on defaulted move operations?
>
> The move operations are purely for code cleanup and performance reasons, it wouldn't hurt if MSVC doesn't implement them correctly. The unit test however verifies that the underlying object is moved instead of just copied, it's possible that a compiler that doesn't implement generation of move operations will trip over the test. In that case we have to disable the test for that specific compiler. So far all buildbots have passed the test so maybe we can get away this time.
>
> - Ben


I'll let the primary Windows developers decide whether performance is important enough in this scenario to warrant explicit move operations.

The CTP released last year provided support for defaulted move operations, so it's not too far off. 		 	   		  



More information about the llvm-commits mailing list