Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 291 by [email protected]: CoverSan mode
http://code.google.com/p/address-sanitizer/issues/detail?id=291

Using ASan shadow memory it should be possible to collect approximate "Data Coverage" of a program. Data coverage is similar to code coverage, but instead of tracking which areas of code were used when the program runs, it tracks which parts of the data as written in the program in the program were used.

I am not aware of any in-depth research to make data coverage practical for imperative languages. One motivating example is state coverage for a state machine.

Here is another motivating example I just found:
http://pjcj.net/yapc/yapc-eu-2002-testing_and_code_coverage/paper.html#data_coverage

Doing coverage properly may be problematic (what does it mean that the data is actually "used"?), but we can approximate it by modifying the ASan shadow state every time the data is accessed.

We could use this technique in Chrome to find out which parts of data and bss are unused. This should help us remove some bloat. If we could make the compiler and linker always emit PIC calls via GOT, then by looking at relro coverage we have poor-man's function-level code coverage.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
You received this message because you are subscribed to the Google Groups 
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to