<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">2014-05-30 13:40 GMT-07:00 Bob Wilson <span dir="ltr"><<a href="mailto:bob.wilson@apple.com" target="_blank">bob.wilson@apple.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class=""><br>
On May 28, 2014, at 4:11 PM, Eric Christopher <<a href="mailto:echristo@gmail.com">echristo@gmail.com</a>> wrote:<br>
<br>
> On Wed, May 28, 2014 at 4:08 PM, Duncan P. N. Exon Smith<br>
> <<a href="mailto:dexonsmith@apple.com">dexonsmith@apple.com</a>> wrote:<br>
>><br>
>>> On 2014-May-28, at 15:55, Eric Christopher <<a href="mailto:echristo@gmail.com">echristo@gmail.com</a>> wrote:<br>
>>><br>
>>> ... I'll bite.<br>
>>><br>
>>> Why do you want to know "this function wasn't instrumented" versus<br>
>>> "this had no calls" for coverage? If it's not instrumented it's<br>
>>> definitely not called. Otherwise you need to do this for all functions<br>
>>> (and who knows what chaos with special member functions that you<br>
>>> didn't have to create... :)<br>
>><br>
>> I can think of two scenarios:<br>
>><br>
>> 1. The error/warning messages should be different: "profile out of date" vs.<br>
>>    "foo() has no coverage".<br>
><br>
> This seems ok I guess. Though if you've got a binary you should be<br>
> able to say "this code doesn't exist".<br>
><br>
>><br>
>> 2. All you have is source and the profile data (i.e., a gcov-like flow,<br>
>>    without an AST), and you want to output the list of functions with no<br>
>>    coverage.<br>
><br>
> You could just take the ones that you do have coverage info for and<br>
> it's the inverse?<br>
><br>
> In general I think forcing emission of things that aren't normally<br>
> emitted is probably going to be a bit of a problem.<br>
<br>
</div>I think Eric is right here.<br>
<br>
Instead of emitting the functions, we should be able to solve this by emitting something to the coverage mapping table (something Alex is starting to work on) to just hardwire the counts for these unused functions to zero.<br>

<br>
Alex, do you think that will work?<br>
</blockquote></div><br></div><div class="gmail_extra">Yes, that should work.<br></div></div>