skia2/tests/sksl
John Stiles d1d872905b Add fix for fuzzer-discovered crash with negated constructors.
This was found at https://oss-fuzz.com/testcase-detail/5155684475469824
but the associated oss-fuzz issue ID appears to be misdirected (it's
showing oss-fuzz:24498, an unrelated issue).

PrefixExpressions can return true for `isCompileTimeConstant` but did
not implement `compareConstant`; the fuzzer discovered this. Because
compile-time constants can only be compared if they are of the same
kind, this means that `compareConstant` is actually comparing a pair of
expressions that are both negated. These negations will just cancel
out, so `compareConstant` on a pair of PrefixExpressions can just call
`compareConstant` on the inner operand of each expression.

Change-Id: I7793e25314e6c8a74278b73299d310794baf71f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/335870
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-11-18 21:53:45 +00:00
..
blend Directly compute call counts, rather than mutating state 2020-10-19 16:08:39 +00:00
errors Disallow unsized array dimensions on size fields past the frontmost. 2020-11-17 16:44:13 +00:00
fp Fix bad FP codegen when sample() calls are inlined. 2020-11-03 19:54:45 +00:00
glsl Add golden outputs for the Metal backend. 2020-09-25 17:46:43 +00:00
inliner Optimize away swizzles on single-argument constructors. 2020-11-18 17:02:45 +00:00
metal Disallow opaque types in structs and interface blocks. 2020-11-17 15:25:43 +00:00
shared Add fix for fuzzer-discovered crash with negated constructors. 2020-11-18 21:53:45 +00:00
workarounds Directly compute call counts, rather than mutating state 2020-10-19 16:08:39 +00:00