Запустите ошибку honggfuzz с '-sanitizer-coating-prune-blocks = 0' - PullRequest
0 голосов
/ 10 января 2019

Я использую honggfuzz от Google .

Установка:

apt-get install binutils-dev libunwind-dev clang-4.0 -y
git clone https://github.com/google/honggfuzz
cd honggfuzz
make

Я тестирую компиляцию examples/libxml2 с ошибкой

# hfuzz-clang persistent-xml2.c -o fuzz_xml 
clang (LLVM option parsing): Unknown command line argument '-sanitizer-coverage-prune-blocks=0'.  Try: 'clang (LLVM option parsing) -help'
clang (LLVM option parsing): Did you mean '-sanitizer-coverage-level=0'?

Я гуглю эту ошибку, но никто не встречает этого. Как я мог решить это? Нужно требование или что-то?

1 Ответ

0 голосов
/ 27 февраля 2019

Я сталкивался с той же проблемой. В качестве обходного пути я закомментировал следующие строки в honggfuzz/hfuzz_cc/hfuzz-cc.c:

// args[(*j)++] = "-mllvm"; // forward next arg to LLVM's option processing
// args[(*j)++] = "-sanitizer-coverage-prune-blocks=0";

С этот комментарий опция -sanitizer-coverage-prune-blocks=0 отключает оптимизацию производительности, но не влияет на статистику покрытия кода, используемую honggfuzz:

Мы внедрили эту опцию, потому что она не меняет точность покрытия, но генерирует на 1/3 меньше инструментов

...