[Development] What's the status of a moved-from object?
Konstantin Tokarev
annulen at yandex.ru
Mon May 20 17:27:49 CEST 2019
20.05.2019, 18:21, "Thiago Macieira" <thiago.macieira at intel.com>:
> On Monday, 20 May 2019 06:56:56 PDT Lars Knoll wrote:
>> I actually think we should consider getting rid of shared_null and instead
>> have d == nullptr as the null/default constructed state of the object. Yes,
>> that means we need to check for d == nullptr in member functions, but I
>> don’t think the overhead is a problem, as d will have to be loaded into a
>> register in any case.
>
> It does introduce a compare-and-branch that wouldn't otherwise be there, but
> the cost is minimal compared to what most API would be doing, indeed.
We should wrap d == nullptr in Q_UNLIKELY() to make branch predictor assume
non-null path by default.
--
Regards,
Konstantin
More information about the Development
mailing list