Hi list, Today I played around with the llvm-cov from the 3.5rc3 release; here is an example of output: Function 'main' Lines executed:91.67% of 24 Branches executed:100.00% of 11 Taken at least once:81.82% of 11 No calls What is the meaning of 'branches executed' versus 'taken at least once'? I would imagine that the first implied the second, so I'm clearly missing something. Also, what is the alternative to 'no calls'? I see that in every function in my single-file example; does it mean calls across compilation units? Thanks, George
George King <gwk.lists at gmail.com> writes:> Today I played around with the llvm-cov from the 3.5rc3 release; here > is an example of output: > > Function 'main' > Lines executed:91.67% of 24 > Branches executed:100.00% of 11 > Taken at least once:81.82% of 11 > No calls > > What is the meaning of 'branches executed' versus 'taken at least > once'? I would imagine that the first implied the second, so I'm > clearly missing something.Branches executed means the branch condition was evaluated, whereas taken at least once means that the branch was followed. A condition that's always false will be executed but not taken.> Also, what is the alternative to 'no calls'? I see that in every > function in my single-file example; does it mean calls across > compilation units?This looks like an unimplemented feature. My understanding is that clang doesn't provide the necessary instrumentation for this to tell you anything interesting.