ec24154521
The CL at http://review.skia.org/366399 introduced a bug with LValue::getPointer. Specifically, getPointer used to return zero when no pointer is available. (This happens when the LValue is a swizzle.) That CL changed the error code to -1. However, it did not fix up all the call sites that checked the return value of getPointer(). This CL fixes up those call sites to use -1 consistently, and adds TODOs in spots which do not check the result from getPointer() at all (instead assuming it cannot fail). This will allow swizzled out- parameters to work in SPIR-V as they did before. (Except in intrinsics, where they seem to have been broken all along, but those are now marked with a TODO at least.) Note that we still do not fully emulate GLSL semantics for out parameters, as out-parameters should only be copied back to the original variable at the end of the function call to be fully GLSL compliant. (This CL also replaces a tuple with a named struct for readability.) Change-Id: I708dc7a69296a4244ba9ceb85c3e68d1f331bbc9 Bug: skia:11052 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/368618 Commit-Queue: Brian Osman <brianosman@google.com> Auto-Submit: John Stiles <johnstiles@google.com> Reviewed-by: Brian Osman <brianosman@google.com> |
||
---|---|---|
animations | ||
bazel | ||
bench | ||
bin | ||
build/fuchsia | ||
build_overrides | ||
client_utils/android | ||
demos.skia.org | ||
dm | ||
docker | ||
docs/examples | ||
example | ||
experimental | ||
fuzz | ||
gm | ||
gn | ||
include | ||
infra | ||
modules | ||
platform_tools | ||
resources | ||
samplecode | ||
site | ||
specs | ||
src | ||
tests | ||
third_party | ||
tools | ||
.bazelignore | ||
.clang-format | ||
.clang-tidy | ||
.gitignore | ||
.gn | ||
AUTHORS | ||
BUILD.bazel | ||
BUILD.gn | ||
codereview.settings | ||
CONTRIBUTING | ||
CQ_COMMITTERS | ||
DEPS | ||
DIR_METADATA | ||
go.mod | ||
go.sum | ||
LICENSE | ||
PRESUBMIT.py | ||
public.bzl | ||
README | ||
README.chromium | ||
RELEASE_NOTES.txt | ||
whitespace.txt | ||
WORKSPACE.bazel |
Skia is a complete 2D graphic library for drawing Text, Geometries, and Images. See full details, and build instructions, at https://skia.org.