[cfe-commits] [Patch] Change the uninitialized field check to use an EvaluatedExprVisitor which will catch more use of uninitialized use.

Richard Trieu rtrieu at google.com
Mon Jun 11 11:12:15 PDT 2012


On Fri, Jun 1, 2012 at 3:09 PM, Richard Trieu <rtrieu at google.com> wrote:

> On Wed, May 30, 2012 at 5:37 PM, Chandler Carruth <chandlerc at google.com>wrote:
>
>> On Fri, May 18, 2012 at 3:35 PM, Richard Trieu <rtrieu at google.com> wrote:
>>
>>> Update the uninitialized field checker to catch more cases of
>>> uninitialized use.  This will catch fields passed by value to function
>>> calls and properly parse conditional operators.  Instead of a recursive
>>> function, an EvaluatedExprVisitor will be used.
>>>
>>
>> What's the compile-time impact of this? Maybe synthesize a test case with
>> a crazy number of fields (all initialized) with long expressions in their
>> initializers, and compare before and after? (There are some tests in INPUTS
>> that you can model this after...)
>>
>
> Synthesized some test cases with 4096 classes, each class having a single
> field initializer with 2048 sub expressions.  My testing showed a 5-10%
> slow-down for the new EvaluatedExprVisitor compared to the current
> recursive function check.
>

Ping.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120611/6c2eca53/attachment.html>


More information about the cfe-commits mailing list