On 07/27/2018 02:38 PM, Marc Glisse wrote:
> On Fri, 27 Jul 2018, Martin Liška wrote:
> 
>> So answer is yes, the builtin can be then removed.
> 
> Good, thanks. While looking at how widely it is going to apply, I noticed 
> that the default, throwing operator new has attribute malloc and everything, 
> but the non-throwing variant declared in <new> doesn't, so it won't benefit 
> from the new predictor. I don't know if there is a good reason for this 
> disparity...
> 

Well in case somebody uses operator new:

     int* p1 = new int;
     if (p1)
      delete p1;

we optimize out that to if (true), even when one has used defined
operator new. Thus it's probably OK.

Martin

Reply via email to