On Wed, Jul 6, 2011 at 5:44 AM, Chandler Carruth <[email protected]>wrote:

> Hello,
>
> Here are cleaned up and hopefully close to (or completely) ready for commit
> patches to address PR10183.
>
> The first patch is the big one, and it wires up stats for the analysis
> parts of the compile. It's pretty minimal for now, and just covers the stuff
> that was obvious and that I needed to dig into the problem with
> -Wuninitialized in this PR. The second patch is then the actual fix to the
> PR. The fix is essentially just swapping a stack for a queue to move from
> depth-first to breadth-first. I've tried to make the enqueue relatively
> efficient, but its not as efficient as the stack. We could tune this by
> using a proper queue datastructure, but it already is a huge win.
>
> Comments welcome. I've attached the patch files and uploaded the patches to
> the codereview app:
> http://codereview.appspot.com/4631089/
> http://codereview.appspot.com/4673046/
>
> I'm still running some more numbers, but the results look fairly good for
> other inputs as well. I'm benchmarking compile times for gcc.c and for a
> selection of inputs from Clang and LLVM's codebase.
>

Initial results look good:
gcc.c -fsyntax-only -Wuninitialized time goes from 9.139s to 5.303s (40%
speedup)

However the PR10183 speedup wasn't as much as I had hoped. One of my "slow"
measurements must have been slowed down by something else. With the fix its
*only* about 75x faster, going from 80.7s to 1.0s. ;]

Will report on some source files which don't have nasty CFGs to contend with
soon...
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to