diff options
author | Robert Swiecki <robert@swiecki.net> | 2017-05-21 18:15:58 +0200 |
---|---|---|
committer | Robert Swiecki <robert@swiecki.net> | 2017-05-21 18:15:58 +0200 |
commit | d51cd3fb934d991c9867b5c684479402334d0530 (patch) | |
tree | c9d9432028734bb5a8d5c82e99d71b84ca23a0ce /libhfuzz/instrument.c | |
parent | bcbe4a0ceb45fcb39911d64c5b4375cb6c9bea66 (diff) | |
download | honggfuzz-d51cd3fb934d991c9867b5c684479402334d0530.tar.gz |
libhfuzz: Support old __sanitizer_cov_trace_cmp
Diffstat (limited to 'libhfuzz/instrument.c')
-rw-r--r-- | libhfuzz/instrument.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libhfuzz/instrument.c b/libhfuzz/instrument.c index 8b0870ff..186ba977 100644 --- a/libhfuzz/instrument.c +++ b/libhfuzz/instrument.c @@ -173,6 +173,22 @@ ATTRIBUTE_X86_REQUIRE_SSE42 void __sanitizer_cov_trace_switch(uint64_t Val, uint } } +ATTRIBUTE_X86_REQUIRE_SSE42 void __sanitizer_cov_trace_cmp(uint64_t SizeAndType, uint64_t Arg1, + uint64_t Arg2) +{ + uint64_t CmpSize = (SizeAndType >> 32) / 8; + switch (CmpSize) { + case (sizeof(uint8_t)): + return __sanitizer_cov_trace_cmp1(Arg1, Arg2); + case (sizeof(uint16_t)): + return __sanitizer_cov_trace_cmp2(Arg1, Arg2); + case (sizeof(uint32_t)): + return __sanitizer_cov_trace_cmp4(Arg1, Arg2); + case (sizeof(uint64_t)): + return __sanitizer_cov_trace_cmp8(Arg1, Arg2); + } +} + /* * -fsanitize-coverage=trace-pc-guard */ |