about summary refs log tree commit diff
path: root/instrumentation/split-compares-pass.so.cc
AgeCommit message (Collapse)Author
2021-06-24fix fridavanhauser-thc
2021-06-11adapt for LLVM 3.8.0hexcoder-
2021-06-11code formatvanhauser-thc
2021-06-11split-comparison llvm pass refactor for smaller compilation times (and a ↵Michael Rodler
small bug fix) (#964) * Refactored split compare pass to be more efficient in LTO usage and allow splitting to other minimum bitwidths. Efficiency: avoid looping over the whole llvm module N times, when once is also enough. Bitwidth: Previously, due to fallthrough in switch-case, all comparisons were split to 8-bit, which might not be desirable e.g., 16 or 32 bit might be enough. So now all comparison are split until they are smaller or equal to the target bitwidth, which is controlled through the `AFL_LLVM_LAF_SPLIT_COMPARES_BITW` environment variable. * fixed miscompilation due to incorrectly trying to split a signed comparison operator * minor formatting updates and use IRBuilder when inserting multiple instructions * added @hexcoder-'s test-int_cases.c to make test * Avoid recursion; switch to smallvector in splitAndSimplify; use switch case for icmp type; * Fixed issue when splitting < where the inverse comparison was not further split * some cleanup
2021-06-09Revert "add test cases for splitting integer comparisons"hexcoder-
This reverts commit e0aa411647e1a525a3a0488d929ec71611388d54.
2021-06-09add test cases for splitting integer comparisonshexcoder-
2021-03-05we do not support 80 + 128 bit FP in lafvanhauser-thc
2021-03-05remove warningsvanhauser-thc
2021-02-07fix scan-build issuesvanhauser-thc
2021-01-04add missing FCMP_UEQ to split-compares-pass.so.ccvan Hauser
2021-01-04more code cleanup (instrumentation)hexcoder-
2020-11-30update clang-format to 11van Hauser
2020-10-29better warn if skipping large dictvan Hauser
2020-09-29small improvements to Marcel's patch, fix laf-intel + redqueen crashesvan Hauser
2020-09-05first batch of changesvanhauser-thc