[PATCH] D30156: llvm-mc-fuzzer: add support for assembly
Brian Cain via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 20 12:56:33 PST 2017
bcain marked 11 inline comments as done.
bcain added a comment.
I think I've satisfied all of the review concerns, save the one about reinterpret_cast. Daniel, please let me know if the comment was just informative or if you prefer a change there.
================
Comment at: tools/llvm-mc-fuzzer/llvm-mc-fuzzer.cpp:244
if (Action == AC_Assemble)
- errs() << "error: -assemble is not implemented\n";
+ return AssembleOneInput(Data, Size);
else if (Action == AC_Disassemble)
----------------
dsanders wrote:
> kcc wrote:
> > I strongly suggest to make this a separate fuzz target instead of using flags.
> > Otherwise it'll be harder to automate running this target.
> I'm not sure what you mean here. What difficulties are you thinking of?
>
> FWIW, this is in line with my original intent which was to mimic llvm-mc's interface.
> I strongly suggest to make this a separate fuzz target instead of using flags.
I've preserved the original design for llvm-mc-fuzzer, apparently to imitate llvm-mc.
Pros/cons of the current design:
- pro: matches llvm-mc
- pro: changing focus to probe different paths only requires different command line args
- con: reproducing fuzzer configuration more difficult because it depends on those args
- con: libFuzzer might see the uncovered feature set as a goal for coverage (that we already know statically it cannot cover).
For that last one, it's speculation on my part.
Kostya, would you be satisfied with this as-is or should I decompose it into two fuzzers? "Harder to automate" consists of "I must make sure that I can deliver the right command line args to the automation feature"? Or "won't fit well in oss-fuzz" or something else?
Repository:
rL LLVM
https://reviews.llvm.org/D30156
More information about the llvm-commits
mailing list