This commit rebased the source paths in the .gni
file from ANGLE's src/ directory to its project root.
The update to third_party/angle2/BUILD.gn does the same.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
Change-Id: Id814f67bed2dfab11f878544989054e38987a939
Reviewed-on: https://skia-review.googlesource.com/150485
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
It appears that the way to check a glyph doesn't have a path is to load
the glyph with the FT_LOAD_NO_BITMAP load flag and then check if the glyph
format is FT_GLYPH_FORMAT_BITMAP, meaning that no outline was available.
Change-Id: Ie19fc7005115f4c4f6072a7be0e93576f8db5877
Bug: skia:7878
Reviewed-on: https://skia-review.googlesource.com/150467
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
--
This expands sksl's capabilities with .fp files. Previously, it was possible to declare "in fragmentProcessor foo" and emit it automatically when "process(foo);" was called. This adds a variant of process that takes a second argument, which must be a half4 expression. This argument specifies the value, or dynamic expression calculated earlier in the parent shader, to use as sk_InColor by the child.
The CL is longer than anticipated because of properly handling dependencies between previous sksl statements and the input to the child. The original writeEmitCode() collected all extra emission code (the calls to build->emitChild) and put them before any call to codeAppendf. This makes it impossible to use a parent's variable, or the output of another child, as the input for process.
To solve this, there is now a flushEmittedCode() function that takes over the logic of outputting the extra emission code and the necessary codeAppendf calls. When invoked, it (by default) only appends completed sksl statements, and places any current expression back at the beginning of the output stream. It now updates fFormatArgs and fExtraEmitCodeCode as it consumes their contents. This allows writeFunctionCall() for a call to "process" to flush all previous statements before it adds its emit child code.
Bug: skia:
Change-Id: I63c41af6f3e0620aa890d10d14436ee6244f0051
Reviewed-on: https://skia-review.googlesource.com/148395
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
The texture strip atlas code path has been disabled without performance
regressions since 8/3/18, so this deletes it completely from the code
base since it is complex and difficult to manage.
GrTextureStripAtlas, GrDynamicTextureStripAtlas, and
GrDDLTextureStripAtlas completely deleted, everything else is cleaning
up references/dead code using the atlas.
Bug: skia:
Change-Id: Ieb967b6e291a1d76da62fce9fa384acbda8c51c0
Reviewed-on: https://skia-review.googlesource.com/150472
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
ddc41208c1..e1037e9be3
git log ddc41208c15f..e1037e9be377 --date=short --no-merges --format='%ad %ae %s'
2018-08-30 fjhenigman@chromium.org Avoid rebase_path() in tests/BUILD.gn.
2018-08-30 tobine@google.com Add jsoncpp as third_party dep
2018-08-30 oetuaho@nvidia.com Implement TexStorage3DMultisample on the GL backend
2018-08-30 oetuaho@nvidia.com Clean up TextureD3D_2DMultisample
2018-08-30 oetuaho@nvidia.com Use OES_texture_storage_multisample_2d_array
Created with:
gclient setdep -r third_party/externals/angle2@e1037e9be377
The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=stephana@google.com
Change-Id: I0abc79f6efbd000adc16a9fab354d83769e384cd
Reviewed-on: https://skia-review.googlesource.com/150604
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
EmitArgs explicitly checks for null constructor arguments and uses
"half4(1)" for fInputColor to ensure its fields are non-null.
Cleans up accesses of fInputColor in existing fragment processors to no
longer check for null and hardcode a "half4(1)".
Updates .fp CPP generation to remove the null check for fInputArgs.
Updates the internals of emitChild() to emit an extra local variable
with a mangled variable name for storing the provided input expression.
Bug: skia:
Change-Id: Iad807f269655689dcb2e8d58f2eb506685ba2757
Reviewed-on: https://skia-review.googlesource.com/149231
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
The -Lottie bot runs with --nonativeFonts so, for some animations that
request a specific font (e.g. Helvetica), this would fail, but not
fallback to an actual font manager.
This makes sure we at least have some text, even if it's the "wrong"
font.
Bug: skia:8298
Change-Id: Ibce7fda5b0a82fc3a708ab1cf5a7a394484ca89e
Reviewed-on: https://skia-review.googlesource.com/150468
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Remove unused GrResourceProvider functions that transfer context
ownership.
Return GrBackendSemaphore by value, make method public.
Change-Id: I1fe83b661cab82a54dde33b4b649579ea01be97c
Reviewed-on: https://skia-review.googlesource.com/150363
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
PathOps added a cheat some time ago to reduce
fuzzer bugs by scaling down very large paths,
with the hope that it would make the math more
sane.
This had the side-effect of causing small edges
to disappear altogether if the bounds is large
enough.
Removing the scaling causes a single regression to
one fuzz-generated bug. That path succeeeded with
scale by eliminating the troublesome tiny contour.
Eliminating the scale may fix the CCPR-related bug
discovered by Flutter, or at least uncover the next
bug.
I would expect more fuzzer bugs to appear with
this change; paths with large and small values will
no longer have the small values removed.
R=csmartdalton@google.com,reed@google.com,bsalomon@google.com
Bug: skia:8290
Change-Id: I3bfdb101c568e9cfa324858685eac1f9c368c291
Reviewed-on: https://skia-review.googlesource.com/150465
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
ANGLE switched their .gypi files to .gni files this commit,
so we need to make a small tweak to update our ANGLE build.
This removes the last use of gypi_to_gn.py, and in turn gn_helpers.py.
CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
Change-Id: I76c8a667e7c5c27dc4cd18ba0d932bfc2de38cf9
Reviewed-on: https://skia-review.googlesource.com/150541
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
With the fixes in https://skia-review.googlesource.com/c/skia/+/150465
this should allow us to fuzz Pathop on oss-fuzz.
Bug: skia:
Change-Id: Id5df511f850f23b5aad0bcb39664d18f639ddb69
Reviewed-on: https://skia-review.googlesource.com/150560
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
This reverts commit a81c2be75a.
Reason for revert: Bad images on gold.
Original change's description:
> Remove lazy image color space hacks for gray
>
> Change-Id: Idca6c0bb237d7973f84acbd2f0583cc8b6c6292c
> Reviewed-on: https://skia-review.googlesource.com/150241
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
TBR=mtklein@google.com,scroggo@google.com,brianosman@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I08658c69eb7b0b9adfc36e73fbbd09ff1aad75f6
Reviewed-on: https://skia-review.googlesource.com/150464
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This reverts commit 2d0a6a1f98.
Revert "Add support for dynamic state GP textures in Vulkan backend."
This reverts commit 5e81a123f2.
Revert "Disable GrTextureOp Chaining"
This reverts commit fdec6f469a.
Bug: chromium:877598
Bug: chromium:877602
Bug: chromium:877610
Change-Id: Iabf2971b27bcf7728785903f1d7f47d1148a2e63
Reviewed-on: https://skia-review.googlesource.com/150461
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
I think this would be helpful for tracing as saveLayer is usually very costly.
Bug: skia:
Change-Id: Ia5bc194d6a7346c6fbec54da86065dc95d36f612
Reviewed-on: https://skia-review.googlesource.com/150115
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Auto-Submit: Yuqian Li <liyuqian@google.com>
using sqrtf() instead of sqrt() loses
too much precision.
Removed SK_CPU_FLUSH_TO_ZERO since
it was only used by the older code.
R=robertphillips@google.com
Bug: skia:
Change-Id: Ief2b969642e7dd423a2b07d2158f5e24eb487ca7
Reviewed-on: https://skia-review.googlesource.com/150380
Reviewed-by: Cary Clark <caryclark@skia.org>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Cary Clark <caryclark@skia.org>
Auto-Submit: Cary Clark <caryclark@skia.org>
This reverts commit 887b416bf5.
Reason for revert: layout tests?
Original change's description:
> Use skcms_PrimariesToXYZD50 to implement SkColorSpacePrimaries::toXYZD50
>
> Two copies of this code is one too many.
>
> Change-Id: I57d1426d1b0ba8340c0ac1e2dbc1b1422994ea2b
> Reviewed-on: https://skia-review.googlesource.com/150381
> Commit-Queue: Brian Osman <brianosman@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>
> Auto-Submit: Brian Osman <brianosman@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>
TBR=mtklein@google.com,brianosman@google.com
Change-Id: I332089462bf2e3234306251cd92ccc6389954f0f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/150367
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This was accidently removed in cl/149048
BUG=chromium:877611
Change-Id: I9608b45848c27fc79e0f26e40bb9a1c4deb50f5b
Reviewed-on: https://skia-review.googlesource.com/150148
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Khusal Sagar <khushalsagar@chromium.org>
Two copies of this code is one too many.
Change-Id: I57d1426d1b0ba8340c0ac1e2dbc1b1422994ea2b
Reviewed-on: https://skia-review.googlesource.com/150381
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
The format field wasn't being set.
Make GrContext_colorTypeSupportedAsSurface test that surfaces can be
created from GrBackendRenderTargets.
Change-Id: Ib5ae4671faa3f44102c6436593c7a987a05b3b88
Reviewed-on: https://skia-review.googlesource.com/150134
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
goToAndStop() apparently just counts from frame 0 to frame n, so no
need to do complicated in/out stuff.
Bug: skia:
Change-Id: Ia9c9e2b29377ea0f41fee72a6f0677e236ebcedc
Reviewed-on: https://skia-review.googlesource.com/150360
Reviewed-by: Kevin Lubick <kjlubick@google.com>
The Skia and skcms 'a' and 'b' terms disagree in the low bit.
'd' was exactly the same, but I've rewritten Skia's to match anyway.
Guarded by SK_LEGACY_SRGB_TRANSFER_FUNCTION. *grumble*
Bug: skia:8278
Change-Id: Ie799f155cbe9c6a1fbe9043c827b8f79d04e1d96
Reviewed-on: https://skia-review.googlesource.com/150130
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Subtle differences like location in an atlas can cause LSB differences
in path rendering, depending on FP precision.
Bug: skia:
Change-Id: I1e6fef7eaeef833db767d9c4b6c9d29dca2fee73
Reviewed-on: https://skia-review.googlesource.com/150212
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
The tiles are now centered in a 200 x 200 box.
Additionally, the frames drawn should now
match how the seeking happens (before, we would
try to draw frame *index* 300 when there were only
300 frames)
I renamed a variable in DmSrcSink because it initially
confused me as the purpose of it.
Bug: skia:
Change-Id: I8552a24727326cd8714dfd1c7794a0c4b0a418cb
Reviewed-on: https://skia-review.googlesource.com/150126
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>