skia2/gn
John Stiles db253e24a2 Do not optimize away intrinsics with non-finite results.
Previously, we would treat double values outside [-FLT_MAX, FLT_MAX]
as finite. In practice, this introduces many hazards; any place in the
code which handled the double value as a float would silently convert
the value to infinity. This includes high-traffic calls like
Literal::MakeFloat.

Note that the if checks are structured in a slightly awkward way to
ensure that NaNs are treated as non-finite.

The original buggy behavior can be seen at http://review.skia.org/556078

Change-Id: Ic126afe57c3d6c7aa3edf9c8f7e339abc5f77739
Bug: oss-fuzz:48592
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/556080
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-07-06 20:37:29 +00:00
..
portable Separate general defaults from Skia defaults 2021-03-22 15:30:56 +00:00
skia Update UBSAN TODO assigned to Xoogler. 2022-05-20 13:58:22 +00:00
toolchain Fix our GN files to build pure objcc targets correctly 2022-04-27 21:07:15 +00:00
__init__.py Make gn directory importable in python 2017-03-20 17:40:30 +00:00
bench.gni [graphite] GridBoundsManager 2022-06-16 15:46:01 +00:00
BUILDCONFIG.gn Enable WASM cross-compilation by correctly using current_cpu 2022-04-20 11:31:35 +00:00
call.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
checkdir.py fix print functions for python3 gn scripts 2020-03-06 17:42:39 +00:00
checkpath.py Python3 tweaks 2019-12-17 17:12:03 +00:00
codesign_ios.py Reland "Set GN's script_executable to "python3"" 2022-04-07 20:11:27 +00:00
compile_ib_files.py [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
compile_sksl_tests.py Avoid hard failure when invalid UTF8 is returned. 2022-04-27 19:51:20 +00:00
copy_git_directory.py [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
core.gni [graphite] Add compile guards to precompile system (take 2) 2022-06-29 19:37:15 +00:00
cp.py Work around python 2 shutil.copy2 date bug 2020-09-28 20:12:13 +00:00
dehydrate_sksl.py Add Graphite-only dehydrated modules. 2022-04-21 21:05:27 +00:00
effects_imagefilters.gni Implement separate crop filter 2021-09-24 20:18:36 +00:00
effects.gni Add missing SkTrimPathEffect to skia_effects_public 2022-02-28 22:42:44 +00:00
find_headers.py Give a human-intelligible message if gn generates a warning 2022-02-23 18:40:03 +00:00
find_msvc.py Add Preview to list of possible MSVC versions. 2020-04-30 19:54:33 +00:00
find_xcode_sysroot.py [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
flutter_defines.gni drawVertices and drawPath apply blend between paint and primitive color. 2021-11-22 19:09:33 +00:00
fuchsia_defines.gni Enable new clip stack for Fuchsia 2020-10-12 20:41:03 +00:00
gen_plist_ios.py Add product bundle name to iOS Xcode projects 2020-11-16 16:00:56 +00:00
gm.gni Remove DSLFP support. 2022-05-16 16:17:26 +00:00
gn_meta_sln.py Update docs to reference python3 2022-05-09 15:07:22 +00:00
gn_to_bp_utils.py Build the NDK compliant shared library to be used by JNI in SkQP. 2022-01-10 17:11:48 +00:00
gn_to_bp.py add skottie to android bp 2022-06-28 13:28:37 +00:00
gn_to_cmake.py Fix CMakeLists to find Emscripten headers 2021-04-16 16:45:22 +00:00
gpu.gni Revert "[ganesh][dawn] Use GrRingBuffer for uniform buffer allocation" 2022-07-06 15:54:26 +00:00
graphite.gni [Graphite] Store Task Graph on Recording. 2022-06-29 20:42:49 +00:00
highest_version_dir.py fix print functions for python3 gn scripts 2020-03-06 17:42:39 +00:00
ios.gni Fix setup for iOS simulator on arm64 Macs. 2022-03-30 20:06:39 +00:00
is_clang.py Fix is_clang python3 encoding errors 2020-06-26 18:41:00 +00:00
make_gm_gni.py GMs: re-sort gni, script to regenerate gni, file name convention 2019-05-02 20:08:37 +00:00
opts.gni add structure for normal SKX opts 2020-06-05 13:48:39 +00:00
pdf.gni Make skia_use_xps option work on Windows 2020-03-24 17:09:33 +00:00
push_to_android.py skia_android_serial = "auto" 2017-01-12 16:30:17 +00:00
rm.py Delete .a file before writing static library. 2020-06-11 17:19:23 +00:00
run_sksllex.py Reland "Fetch clang-format automatically when compiling .fp files." 2020-06-12 13:21:41 +00:00
samples.gni Revert "Move SkCamera.h to client_utils/android" 2022-04-25 12:33:01 +00:00
shared_sources.gni Update sprint to graphite name 2021-09-21 16:44:10 +00:00
skia.gni [graphite] Add compile guards to precompile system (take 2) 2022-06-29 19:37:15 +00:00
skqp_gn_args.py implement animatable particle drawables 2022-05-26 19:03:31 +00:00
sksl_tests.gni Do not optimize away intrinsics with non-finite results. 2022-07-06 20:37:29 +00:00
sksl.gni Added preliminary SkSL Metal compute shader support 2022-06-15 18:52:42 +00:00
tests.gni Reland "Create simple unit test for UniformManager types and layouts." 2022-06-30 14:03:22 +00:00
utils.gni Revert "Move SkCamera.h to client_utils/android" 2022-04-25 12:33:01 +00:00
xps.gni harmonize rewrite-includes and gn-format checks 2020-04-03 17:00:54 +00:00