Go to file
John Stiles 12739dffec Handle values above int32 safely during IR generation.
Previously, SKSL_INT was limited to an int32_t, so we couldn't
differentiate between -1 and 4294967295. We could paper over the
difference in some cases by relying on the expression's type, but this
was imperfect and left us unable to differentiate between an overflow
and valid results. SKSL_INT is now an int64_t; the code has been
updated to fix bugs that shook out as a result of the change.

This isn't a complete solution for overflow handling. There are still
lots of obvious places for improvement--e.g. constant folding can
easily overflow, and statements like `byte x = 1000;` are still
happily accepted.

Change-Id: I30d1f56b6f264543f3aa83046f43c2eb56d5fce4
Bug: skia:10932
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/345173
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2020-12-29 16:26:56 +00:00
animations
bazel bazel baby steps 2020-09-14 15:18:32 +00:00
bench Avoid uninitialized values in strokeIndirect SIMD queues 2020-12-28 17:01:19 +00:00
bin bin/try: automatically set 'git cl issue' when not found 2020-06-25 17:44:01 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Port to ANGLE's GN files 2020-09-11 15:22:34 +00:00
client_utils/android Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
demos.skia.org [canvaskit] Remove Sk from nearly all function/type names. 2020-10-07 21:01:32 +00:00
dm Reland "SkAndroidCodec: Support decoding all frames" 2020-11-16 16:55:48 +00:00
docker [canvaskit,pathkit] Update to emsdk 2.0 2020-08-20 14:55:50 +00:00
docs/examples Use bitmap.asImage() 2020-12-23 17:41:47 +00:00
example Reland "Remove use of legacy display globals." 2020-10-05 19:13:58 +00:00
experimental Fix C API example, ensure the C API example is built in CI 2020-12-15 16:38:42 +00:00
fuzz Use bitmap.asImage() 2020-12-23 17:41:47 +00:00
gm Revert "Make textures used with alpha-only color-types produce 0s for RGB" 2020-12-29 15:18:07 +00:00
gn Add GrPixmap. Like SkPixmap but uses GrColorType. 2020-12-28 18:18:49 +00:00
include Make onCreateScalerContext return unique_ptr. 2020-12-28 17:31:09 +00:00
infra Update task drivers to point to new rotations 2020-12-28 15:58:10 +00:00
modules [canvaskit] Fix bug if webgl context not available 2020-12-28 14:47:43 +00:00
platform_tools Add SkSpan support to the Skia LLDB visualizer. 2020-12-22 18:10:12 +00:00
resources Remove use of uint from particle random system 2020-12-23 16:21:17 +00:00
samplecode More migration away from filter-quality 2020-12-28 20:41:41 +00:00
site Update remaining Skia docs to point to new inclusive rotations 2020-12-28 16:01:01 +00:00
specs Fix CanvasKit generated documentation to work with emscripten 1.39.16. 2020-05-27 12:23:32 +00:00
src Handle values above int32 safely during IR generation. 2020-12-29 16:26:56 +00:00
tests Handle values above int32 safely during IR generation. 2020-12-29 16:26:56 +00:00
third_party Update etc1.cpp. 2020-12-16 17:57:26 +00:00
tools Make onCreateScalerContext return unique_ptr. 2020-12-28 17:31:09 +00:00
.bazelignore bazel baby steps 2020-09-14 15:18:32 +00:00
.clang-format Disable BinPackParameters in .clang-format 2020-03-27 14:32:40 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore bazel baby steps 2020-09-14 15:18:32 +00:00
.gn Basic standalone GN configs. 2016-07-21 12:25:45 -07:00
AUTHORS Fix issues with latest GN 2020-11-07 13:55:45 +00:00
BUILD.bazel bazel baby steps 2020-09-14 15:18:32 +00:00
BUILD.gn Add particles and svg support to fiddle. 2020-12-29 16:03:27 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Roll Chromium from 6fa6f0c8b65b to c7d00ca78822 (125 revisions) 2020-12-29 16:13:36 +00:00
go.mod Update go.skia.org/infra in go.mod/go.sum 2020-12-21 20:31:07 +00:00
go.sum Update go.skia.org/infra in go.mod/go.sum 2020-12-21 20:31:07 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
OWNERS add OWNERS file 2017-12-01 19:50:19 +00:00
PRESUBMIT.py Add presubmit check for git conflict markers 2020-12-16 17:51:16 +00:00
public.bzl [canvaskit] Remove custom_embedded_factory from G3 build 2020-12-23 12:59:36 +00:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
RELEASE_NOTES.txt Revert "Revert "Remove legacy SkImage::MakeFromYUVATextures."" 2020-12-24 03:37:08 +00:00
whitespace.txt Whitespace change to re-trigger Mac/iOS tests 2020-02-23 20:55:01 +00:00
WORKSPACE.bazel bazel baby steps 2020-09-14 15:18:32 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.