skia2/fuzz
Brian Osman 236ddb3e1d Detach pipeline-stage generator from SkSL compiler
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>
2021-02-06 16:25:32 +00:00
..
oss_fuzz Detach pipeline-stage generator from SkSL compiler 2021-02-06 16:25:32 +00:00
coverage
Fuzz.cpp Hide SkImageFilter::CropRect 2021-01-30 16:10:29 +00:00
Fuzz.h Hide SkImageFilter::CropRect 2021-01-30 16:10:29 +00:00
FuzzCanvas.cpp Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
FuzzCommon.cpp Hide shrinkToFit -- not needed now that we have pathbuilder 2020-10-15 19:47:06 +00:00
FuzzCommon.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
FuzzCreateDDL.cpp Handle null GrDirectContext in DDL Fuzzer 2020-07-31 18:12:53 +00:00
FuzzDrawFunctions.cpp drawBitmap is deprecated 2021-01-24 17:39:15 +00:00
FuzzEncoders.cpp Add GrDirectContext arg to SkImage::readPixels 2020-08-27 19:26:29 +00:00
FuzzGradients.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
FuzzMain.cpp [fuzzing] Add SkParagraph to oss-fuzz. 2021-02-04 19:34:48 +00:00
FuzzParsePath.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
FuzzPath.cpp add SKPath::readFromMemory() fuzzer 2020-08-12 17:40:16 +00:00
FuzzPathMeasure.cpp [fuzz] Standardize, document, and backport fuzzing defines. 2020-09-14 13:36:10 +00:00
FuzzPathop.cpp Revert "Revert "switch to new filltype for SkPath"" 2019-11-26 17:43:14 +00:00
FuzzPolyUtils.cpp Move SkImageFilter functionality into private SkImageFilter_Base 2019-08-02 18:56:39 +00:00
FuzzRegionOp.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
FuzzRRect.cpp add SkRRect::readFromMemory() fuzzer 2020-08-11 20:26:28 +00:00
FuzzSkParagraph.cpp [fuzzing] Add SkParagraph to oss-fuzz. 2021-02-04 19:34:48 +00:00
README.md [fuzz] Standardize, document, and backport fuzzing defines. 2020-09-14 13:36:10 +00:00

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: