236ddb3e1d
This is now structured like the VM generator: Just a function that does the conversion. Moved all relevant types and constants out of the compiler, too. The key thing is that we don't need/want an error handler, because it's too late to fail. We *must* catch all errors during IR generation. This is also another step along the path of directly emitting to the fragment shader builder, rather than generating strings with placeholders. Bug: skia:11127 Change-Id: I18591270aa6e56dae1f040275a4b7d4a245007db Reviewed-on: https://skia-review.googlesource.com/c/skia/+/366956 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: John Stiles <johnstiles@google.com> |
||
---|---|---|
.. | ||
oss_fuzz | ||
coverage | ||
Fuzz.cpp | ||
Fuzz.h | ||
FuzzCanvas.cpp | ||
FuzzCommon.cpp | ||
FuzzCommon.h | ||
FuzzCreateDDL.cpp | ||
FuzzDrawFunctions.cpp | ||
FuzzEncoders.cpp | ||
FuzzGradients.cpp | ||
FuzzMain.cpp | ||
FuzzParsePath.cpp | ||
FuzzPath.cpp | ||
FuzzPathMeasure.cpp | ||
FuzzPathop.cpp | ||
FuzzPolyUtils.cpp | ||
FuzzRegionOp.cpp | ||
FuzzRRect.cpp | ||
FuzzSkParagraph.cpp | ||
README.md |
We fuzz Skia using oss-fuzz, which in turn uses fuzzing engines such as libfuzzer, afl-fuzz, hong-fuzz and others.
We define a fuzzer
to be a targeted bit of code that takes a randomized input and executes code
in a specific area. For example, we have a codec fuzzer which takes a mutated png/jpeg or similar
file and attempts to turn it into an SkImage
. We also have a canvas fuzzer which takes in a random
set of bytes and turns them into calls on SkCanvas
.
See [../site/dev/testing/fuzz.md] for more information on building and running fuzzers.
See also: