aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-yaml-parser-fuzzer
AgeCommit message (Collapse)AuthorFilesLines
2022-05-07Reland "[FuzzMutate] Split out FuzzerCLI library that doesn't depend on IR."Sam McCall1-1/+1
This reverts commit a1bb952e833b34fdf03bd571e7f8c948191be018. I'd somehow missed updating llvm-yaml-parser-fuzzer, now fixed.
2021-01-02[llvm] Use llvm::erase_value and llvm::erase_if (NFC)Kazu Hirata1-1/+1
2020-11-18[YAMLIO] Support non-null-terminated inputsScott Linder1-2/+22
In some places the parser guards against dereferencing `End`, while in others it relies on the presence of a trailing `'\0'` to elide checks. Add the remaining guards needed to ensure the parser never attempts to dereference `End`, making it safe to not require a null-terminated input buffer. Update the parser fuzzer harness so that it tests with buffers that are guaranteed to be non-null-terminated, null-terminated, and 1-terminated, additionally ensuring the result of the parse is the same in each case. Some of the regression tests were written by inspection, and some are cases caught by the fuzzer which required additional fixes in the parser. Differential Revision: https://reviews.llvm.org/D84050
2020-11-18[YAMLIO] Add a generic YAML fuzzer harnessScott Linder3-0/+59
This is essentially a clone of the existing fuzzer added in D50839, but for the whole parser Streamer, and currently only testing for sanitizer violations. Differential Revision: https://reviews.llvm.org/D91573