On 4/8/12 1:16 PM, Michel Fortin wrote:
On 2012-04-08 17:14:37 +0000, Andrei Alexandrescu
<seewebsiteforem...@erdani.org> said:
As I mentioned, the first call to .ptr changes representation, thus
making the allocation that the optimization had saved. Things are not
worse off than before.

This only works if the code has write access to that variable.

Also, if the variable is a temporary copy such as a by-value function
parameter, only the representation of that temporary copy will be
affected. Every time you call a function which calls .ptr a new copy
will be allocated on the heap. If such a function call is part of a
loop, it'll degrade performance noticeably.

I think there's a bit of a confusion. Could you please clarify with an example?

Thanks,

Andrei

Reply via email to