LINUX: Introduce sanitizer coverage

Initial commit of sanitizer coverage data parsing. Currently
only number of PCs is measured. More coverage data to
be added soon.

rawunpack is still pending for targets being terminated
with signals that are not handled by supported sanitizers.

Testing so far included "-fsanitize-coverage=func"

Signed-off-by: Anestis Bechtsoudis <anestis@census-labs.com>
diff --git a/common.h b/common.h
index a5873d2..14cfb79 100644
--- a/common.h
+++ b/common.h
@@ -81,6 +81,10 @@
 } hwcnt_t;
 
 typedef struct {
+    uint64_t pcCnt;
+} sancovcnt_t;
+
+typedef struct {
     char **cmdline;
     char *inputFile;
     bool nullifyStdio;
@@ -124,11 +128,13 @@
     size_t dynamicFileBestSz;
     dynFileMethod_t dynFileMethod;
     hwcnt_t hwCnts;
+    sancovcnt_t sanCovCnts;
     uint64_t dynamicCutOffAddr;
     pthread_mutex_t dynamicFile_mutex;
     bool disableRandomization;
     bool msanReportUMRS;
     void *ignoreAddr;
+    bool useSanCov;
 } honggfuzz_t;
 
 typedef struct fuzzer_t {
@@ -147,6 +153,7 @@
     /* For linux/ code */
     uint8_t *dynamicFile;
     hwcnt_t hwCnts;
+    sancovcnt_t sanCovCnts;
     size_t dynamicFileSz;
 } fuzzer_t;