[webkit-dev] WebKit memory instrumentation

Maciej Stachowiak mjs at apple.com
Tue Jul 24 11:34:21 PDT 2012


On Jul 24, 2012, at 12:39 AM, Yury Semikhatsky <yurys at chromium.org> wrote:

> 
> 
> On Tue, Jul 24, 2012 at 12:47 AM, Maciej Stachowiak <mjs at apple.com> wrote:
> 
> On Jul 23, 2012, at 8:09 AM, Yury Semikhatsky <yurys at chromium.org> wrote:
> 
>> 
>> 
>> First option we consider is to define a class with the same set of fields as the instrumented one, then have a compile time assert that size of the reference class equals to the size of the instrumented one. See https://bugs.webkit.org/attachment.cgi?id=153479&action=review for more details.
>> 
>> Pros: compile time error whenever size of an instrumented class changes with the appropriate modifications to the instrumentation function.
>> Cons: it will require each committer to adjust the reference class and the instrumentation on any modification that affects size of the instrumented class. Changes that don't affect size of the class will go unnoticed.
> 
> What is the advantage of this approach compared to just using the sizeof operator on the relevant classes?
> 
> Regards,
> Maciej
> 
> 
> Summing up sizeof type of each field and parent class and comparing it to sizeof the class would do the same thing except that we would need sometimes to manually handle alignment discrepancies on different platforms.

I'm not sure I understand the problem you are trying to solve. Isn't sizeof on the class the correct answer? Why would you need to manually add sizeof for the fields? You need sizes of objects referenced by pointer, but that won't be affected by alignment issues.

Regards,
Maciej

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20120724/f86e47af/attachment.html>


More information about the webkit-dev mailing list