commit-bot@chromium.org [Thu, 10 Oct 2013 06:30:18 +0000 (06:30 +0000)]
Express (GLSL expression, possibly known value) pairs as a class
Express (GLSL expression, possibly known value) pairs as a class
instead of two variables Introduces GrGLSLExpr<N> to encapsulate
the expression and possibly constant-folded value of the expression.
This simplifies passing of the expressions to functions.
Changes the shaders with following patterns:
{ // Stage 0: Linear Gradient
vec4 colorTemp = mix(uGradientStartColor_Stage0, uGradientEndColor_Stage0, clamp(vMatrixCoord_Stage0.x, 0.0, 1
colorTemp.rgb *= colorTemp.a;
- output_Stage0 = vec4((vColor) * (colorTemp));
+ output_Stage0 = (vColor * colorTemp);
+ }
Previously the vector cast was always added if constant folding was
effective, regardless of the term dimensions. Now the vector upcast is
not inserted in places where it is not needed, ie. when the binary
operator term is of the target dimension.
Also, some parentheses can be omitted. It is assumed that
GrGLSLExpr<N>("string") constructors construct a simple expression or
parenthesized expression.
Otherwise the shader code remains identical.
R=jvanverth@google.com, bsalomon@google.com, robertphillips@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
25048002
git-svn-id: http://skia.googlecode.com/svn/trunk@11690
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Thu, 10 Oct 2013 02:53:30 +0000 (02:53 +0000)]
basically a typo
R=caryclark@google.com, bsalomon@google.com
Author: yunchao.he@intel.com
Review URL: https://codereview.chromium.org/
23619063
git-svn-id: http://skia.googlecode.com/svn/trunk@11689
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 21:09:00 +0000 (21:09 +0000)]
SkDocument api changes (abort, close return success, set DCT encoder...).
R=reed@google.com, reed
Author: edisonn@google.com
Review URL: https://codereview.chromium.org/
26744002
git-svn-id: http://skia.googlecode.com/svn/trunk@11688
2bbb7eff-a529-9590-31e7-
b0007b416f81
edisonn@google.com [Wed, 9 Oct 2013 20:23:12 +0000 (20:23 +0000)]
code cleanup
Review URL: https://codereview.chromium.org/
26613006
git-svn-id: http://skia.googlecode.com/svn/trunk@11687
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 20:08:20 +0000 (20:08 +0000)]
Remove _impl from names in SkOnce.h.
This is entirely to make power users (me, Mike's per-object use case) feel less
bad about calling sk_once() directly with args not created by DEF_SK_ONCE.
BUG=
R=bungeman@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
26129010
git-svn-id: http://skia.googlecode.com/svn/trunk@11686
2bbb7eff-a529-9590-31e7-
b0007b416f81
jvanverth@google.com [Wed, 9 Oct 2013 18:53:35 +0000 (18:53 +0000)]
Give the new font cache GM a name
BUG=
R=borenet@google.com
Review URL: https://codereview.chromium.org/
26675004
git-svn-id: http://skia.googlecode.com/svn/trunk@11685
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 18:39:59 +0000 (18:39 +0000)]
low hanging calloc fruit
BUG=
R=reed@google.com, robertphillips@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
24267014
git-svn-id: http://skia.googlecode.com/svn/trunk@11683
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Wed, 9 Oct 2013 18:25:38 +0000 (18:25 +0000)]
Add swapBuffer call to SkGLContextHelper.
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/
26701002
git-svn-id: http://skia.googlecode.com/svn/trunk@11682
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 18:12:23 +0000 (18:12 +0000)]
Add new GM to stress test the GPU font cache for cases similar to
Chromium issue 303803.
BUG=303803
Committed: http://code.google.com/p/skia/source/detail?r=11673
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
26699002
git-svn-id: http://skia.googlecode.com/svn/trunk@11680
2bbb7eff-a529-9590-31e7-
b0007b416f81
epoger@google.com [Wed, 9 Oct 2013 18:05:58 +0000 (18:05 +0000)]
rebaseline_server: extend returned JSON dict to allow for result-editing in coming CL
(SkipBuildbotRuns)
R=jcgregorio@google.com
Review URL: https://codereview.chromium.org/
26659002
git-svn-id: http://skia.googlecode.com/svn/trunk@11679
2bbb7eff-a529-9590-31e7-
b0007b416f81
jvanverth@google.com [Wed, 9 Oct 2013 17:03:22 +0000 (17:03 +0000)]
Revert "Add new GM to stress test the GPU font cache"
git-svn-id: http://skia.googlecode.com/svn/trunk@11678
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@google.com [Wed, 9 Oct 2013 16:49:45 +0000 (16:49 +0000)]
Revert "change SkColorTable to be immutable"
This reverts commit
1c0ff422868b3badf5ffe0790a5d051d1896e2f7.
BUG=
Review URL: https://codereview.chromium.org/
26709002
git-svn-id: http://skia.googlecode.com/svn/trunk@11677
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@google.com [Wed, 9 Oct 2013 16:34:47 +0000 (16:34 +0000)]
change SkColorTable to be immutable
BUG=
R=scroggo@google.com
Review URL: https://codereview.chromium.org/
25353002
git-svn-id: http://skia.googlecode.com/svn/trunk@11676
2bbb7eff-a529-9590-31e7-
b0007b416f81
jvanverth@google.com [Wed, 9 Oct 2013 16:22:38 +0000 (16:22 +0000)]
Fix font cache GM on Windows
git-svn-id: http://skia.googlecode.com/svn/trunk@11675
2bbb7eff-a529-9590-31e7-
b0007b416f81
mtklein@google.com [Wed, 9 Oct 2013 16:12:23 +0000 (16:12 +0000)]
Sketch of SK_ONCE
BUG=
R=bungeman@google.com
Review URL: https://codereview.chromium.org/
26563002
git-svn-id: http://skia.googlecode.com/svn/trunk@11674
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 16:00:42 +0000 (16:00 +0000)]
Add new GM to stress test the GPU font cache for cases similar to
Chromium issue 303803.
BUG=303803
R=robertphillips@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
26699002
git-svn-id: http://skia.googlecode.com/svn/trunk@11673
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 15:14:18 +0000 (15:14 +0000)]
Implement stroking a path with nv_path_rendering
Initialize the path stroke properties in the GrGLPath constructor.
Use StencilStrokePath and CoverStrokePath to stroke the path.
The order of the GL calls is:
1. StencilFill, if needed
2. StencilStroke, if needed
2a. CoverStroke, if stroke was applied
2b. CoverFill, if stroke was not applied
The reason for not pairing StencilFill + CoverFill, StencilStroke +
CoverStroke is that Skia API does not allow separate fill and stroke
color within one call. Covering the stroke bounding box should also
cover the fill bounding box.
Causes different rendering in gm/dashcubics due to different rendering
algorithm. (?) (TODO: this should be resolved somehow.)
R=bsalomon@google.com, markkilgard@gmail.com, cdalton@nvidia.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
23440049
git-svn-id: http://skia.googlecode.com/svn/trunk@11672
2bbb7eff-a529-9590-31e7-
b0007b416f81
edisonn@google.com [Wed, 9 Oct 2013 15:13:19 +0000 (15:13 +0000)]
remove tracking code, as it polutes the code readability. Should be added back, in a less eficient way, by registering streams instead, so we don't have to pass arround the streams, and the code will be cleaner.
Review URL: https://codereview.chromium.org/
26700002
git-svn-id: http://skia.googlecode.com/svn/trunk@11671
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 15:09:42 +0000 (15:09 +0000)]
flush after every print in windows
R=djsollen@google.com, reed@google.com, epoger@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
26680004
git-svn-id: http://skia.googlecode.com/svn/trunk@11670
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 14:39:46 +0000 (14:39 +0000)]
ARM Skia NEON patches - 28 - Xfermode: SIMD modeprocs
Xfermode: allow for SIMD modeprocs
This patch introduces the ability to have SIMD Xfermode modeprocs.
In the NEON implementation, SIMD modeprocs will process 8 pixels
at a time.
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
Committed: http://code.google.com/p/skia/source/detail?r=11654
R=djsollen@google.com, mtklein@google.com, reed@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://codereview.chromium.org/
23644006
git-svn-id: http://skia.googlecode.com/svn/trunk@11669
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 14:11:33 +0000 (14:11 +0000)]
Implement filling a path with nv_path_rendering cover
Implement filling a path with nv_path_rendering cover functionality.
The nv_path_rendering cover can be used if the fill is non-inverted
and the draw operation does not require use of vertex shaders.
Moves code for the inverted fill from GrStencilAndCoverPathRenderer
down to GrGpuGL.
R=bsalomon@google.com, markkilgard@gmail.com, cdalton@nvidia.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
22686002
git-svn-id: http://skia.googlecode.com/svn/trunk@11667
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 9 Oct 2013 14:10:27 +0000 (14:10 +0000)]
Remove --pdf option as it can now be controlled by --config
R=borenet@google.com, bsalomon@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
25859006
git-svn-id: http://skia.googlecode.com/svn/trunk@11666
2bbb7eff-a529-9590-31e7-
b0007b416f81
robertphillips@google.com [Wed, 9 Oct 2013 12:51:09 +0000 (12:51 +0000)]
Fix valgrind uninitialized memory complaint
https://codereview.chromium.org/
26469003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11664
2bbb7eff-a529-9590-31e7-
b0007b416f81
reed@google.com [Wed, 9 Oct 2013 12:45:51 +0000 (12:45 +0000)]
try uping the cache-count-limit to see if it speeds up bench-pictures
BUG=
Review URL: https://codereview.chromium.org/
25118003
git-svn-id: http://skia.googlecode.com/svn/trunk@11663
2bbb7eff-a529-9590-31e7-
b0007b416f81
bungeman@google.com [Tue, 8 Oct 2013 21:32:15 +0000 (21:32 +0000)]
Improve SkScalerContext_GDI::generateCharToGlyph for non-BMP code points.
Sometimes, when ScriptShape is presented with a surrogate pair which does
not map to a glyph, it returns two space glyphs instead of .notdef (0).
Detect this class of issues and handle appropriately.
git-svn-id: http://skia.googlecode.com/svn/trunk@11660
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Tue, 8 Oct 2013 19:40:18 +0000 (19:40 +0000)]
Allow sampling GIF images during decode.
SkScaledBitmapSampler:
Add a mode for sampling rows out of order, used by GIF decoder for
interlaced images.
Add a getter for the X sampling rate.
SkImageDecoder_libgif:
Respect the sampleSize set on SkImageDecoder.
skimage_main:
Provide an option to set a sample size.
BUG=https://b.corp.google.com/issue?id=8999690
R=reed@google.com, djsollen@google.com, halcanary@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
25354004
git-svn-id: http://skia.googlecode.com/svn/trunk@11659
2bbb7eff-a529-9590-31e7-
b0007b416f81
robertphillips@google.com [Tue, 8 Oct 2013 19:15:58 +0000 (19:15 +0000)]
Fix uninitialized memory access
https://codereview.chromium.org/
26529002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11658
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Tue, 8 Oct 2013 16:59:53 +0000 (16:59 +0000)]
Revert "ARM Skia NEON patches - 28 - Xfermode: SIMD modeprocs"
This reverts http://code.google.com/p/skia/source/detail?r=11654
Review URL: https://codereview.chromium.org/
26340010
git-svn-id: http://skia.googlecode.com/svn/trunk@11655
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Tue, 8 Oct 2013 16:47:22 +0000 (16:47 +0000)]
ARM Skia NEON patches - 28 - Xfermode: SIMD modeprocs
Xfermode: allow for SIMD modeprocs
This patch introduces the ability to have SIMD Xfermode modeprocs.
In the NEON implementation, SIMD modeprocs will process 8 pixels
at a time.
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=
R=djsollen@google.com, mtklein@google.com, reed@google.com
Author: kevin.petit.arm@gmail.com
Review URL: https://codereview.chromium.org/
23644006
git-svn-id: http://skia.googlecode.com/svn/trunk@11654
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Tue, 8 Oct 2013 16:24:07 +0000 (16:24 +0000)]
Update #if to #ifdef for consistency
R=mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
26495002
git-svn-id: http://skia.googlecode.com/svn/trunk@11653
2bbb7eff-a529-9590-31e7-
b0007b416f81
robertphillips@google.com [Tue, 8 Oct 2013 15:40:49 +0000 (15:40 +0000)]
Fix memory leak in SkPDFRasterizer
https://codereview.chromium.org/
26373005/
git-svn-id: http://skia.googlecode.com/svn/trunk@11652
2bbb7eff-a529-9590-31e7-
b0007b416f81
robertphillips@google.com [Tue, 8 Oct 2013 15:37:19 +0000 (15:37 +0000)]
Update valgrind suppressions
https://codereview.chromium.org/
26465007/
git-svn-id: http://skia.googlecode.com/svn/trunk@11650
2bbb7eff-a529-9590-31e7-
b0007b416f81
mtklein@google.com [Tue, 8 Oct 2013 15:16:36 +0000 (15:16 +0000)]
skia/trunk changes for generic sanitizer gyp flag.
BUG=
R=borenet@google.com
Review URL: https://codereview.chromium.org/
25564003
git-svn-id: http://skia.googlecode.com/svn/trunk@11648
2bbb7eff-a529-9590-31e7-
b0007b416f81
skia.committer@gmail.com [Tue, 8 Oct 2013 07:01:42 +0000 (07:01 +0000)]
Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@11645
2bbb7eff-a529-9590-31e7-
b0007b416f81
bungeman@google.com [Mon, 7 Oct 2013 20:32:18 +0000 (20:32 +0000)]
Document how to get a specific revision when rebaselining.
This is helpful when using the trybots.
R=epoger@google.com
Review URL: https://codereview.chromium.org/
25653008
git-svn-id: http://skia.googlecode.com/svn/trunk@11643
2bbb7eff-a529-9590-31e7-
b0007b416f81
bungeman@google.com [Mon, 7 Oct 2013 19:57:35 +0000 (19:57 +0000)]
Make svndiff.py work on Windows and with svn 1.7.
R=epoger@google.com
Review URL: https://codereview.chromium.org/
25447003
git-svn-id: http://skia.googlecode.com/svn/trunk@11642
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Mon, 7 Oct 2013 19:49:13 +0000 (19:49 +0000)]
Fix ambiguity in API if no matching system language is found
R=reed@google.com, wangxianzhu@chromium.org
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
26325003
git-svn-id: http://skia.googlecode.com/svn/trunk@11641
2bbb7eff-a529-9590-31e7-
b0007b416f81
epoger@google.com [Mon, 7 Oct 2013 19:06:40 +0000 (19:06 +0000)]
Ignore any pdf-poppler GM failures
BUG=skia:1657
R=edisonn@google.com
Review URL: https://codereview.chromium.org/
26318002
git-svn-id: http://skia.googlecode.com/svn/trunk@11640
2bbb7eff-a529-9590-31e7-
b0007b416f81
epoger@google.com [Mon, 7 Oct 2013 18:55:09 +0000 (18:55 +0000)]
GM: Allow ignored-tests.txt to list configs as well as tests (and combinations too)
BUG=skia:1657
This will allow us to ignore poppler failures until bug 1657 is resolved
(but this CL doesn't actually make that change to ignored-tests.txt yet)
R=scroggo@google.com
Review URL: https://codereview.chromium.org/
26294004
git-svn-id: http://skia.googlecode.com/svn/trunk@11639
2bbb7eff-a529-9590-31e7-
b0007b416f81
scroggo@google.com [Mon, 7 Oct 2013 18:29:38 +0000 (18:29 +0000)]
Ignore failure for images known to not work.
BUG=skia:1282
Review URL: https://codereview.chromium.org/
26315002
git-svn-id: http://skia.googlecode.com/svn/trunk@11638
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Mon, 7 Oct 2013 18:20:27 +0000 (18:20 +0000)]
Fix for blinking/corrupted text in Canvas 2D.
Ensure that we update the drawToken for a glyph's plot every time it is
used, not just when the glyph is first added.
BUG=303803
R=junov@chromium.org, bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
26253003
git-svn-id: http://skia.googlecode.com/svn/trunk@11637
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Mon, 7 Oct 2013 18:00:17 +0000 (18:00 +0000)]
Luminance-to-alpha color filter (SkLumaColorFilter).
Adding a color filter luma implementation. The plan is to convert
existing clients and then deprecate SkLumaXfermode.
R=bsalomon@google.com, reed@google.com, robertphillips@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/
25453004
git-svn-id: http://skia.googlecode.com/svn/trunk@11636
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Mon, 7 Oct 2013 17:59:04 +0000 (17:59 +0000)]
style nit for myself retroactively: throwOnFailure -> throw_on_failure
BUG=
R=reed@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
26298002
git-svn-id: http://skia.googlecode.com/svn/trunk@11635
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Mon, 7 Oct 2013 17:18:21 +0000 (17:18 +0000)]
Make all gradient benchs use the same repeat count.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
25306003
git-svn-id: http://skia.googlecode.com/svn/trunk@11634
2bbb7eff-a529-9590-31e7-
b0007b416f81
scroggo@google.com [Mon, 7 Oct 2013 16:56:01 +0000 (16:56 +0000)]
In skimage, copy to 8888 if encoding fails.
When writing the bitmap for visual comparison, rather than special
casing A8, depend on the fact that the encoder will fail, and try
copying to 8888 and encoding that if so.
R=reed@google.com
Review URL: https://codereview.chromium.org/
25964003
git-svn-id: http://skia.googlecode.com/svn/trunk@11633
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Mon, 7 Oct 2013 16:48:08 +0000 (16:48 +0000)]
Rebaseline test due to improvements in r11577
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/
26114003
git-svn-id: http://skia.googlecode.com/svn/trunk@11632
2bbb7eff-a529-9590-31e7-
b0007b416f81
scroggo@google.com [Mon, 7 Oct 2013 16:43:16 +0000 (16:43 +0000)]
Fix unparsable expectations files.
Should fix build.
Unreviewed.
git-svn-id: http://skia.googlecode.com/svn/trunk@11631
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Mon, 7 Oct 2013 15:52:15 +0000 (15:52 +0000)]
Make skia almost compile again with clang.
clang is reporting many unused functions and variables.
R=bsalomon@google.com, robertphillips@google.com, reed@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/
26167002
git-svn-id: http://skia.googlecode.com/svn/trunk@11630
2bbb7eff-a529-9590-31e7-
b0007b416f81
edisonn@google.com [Mon, 7 Oct 2013 15:40:21 +0000 (15:40 +0000)]
pdf report files
Review URL: https://codereview.chromium.org/
26271002
git-svn-id: http://skia.googlecode.com/svn/trunk@11629
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Mon, 7 Oct 2013 14:02:58 +0000 (14:02 +0000)]
revert unintentional checkin of svndiff.py
Review URL: https://codereview.chromium.org/
26162004
git-svn-id: http://skia.googlecode.com/svn/trunk@11628
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Mon, 7 Oct 2013 13:50:45 +0000 (13:50 +0000)]
Rebaseline Android Xoom and Nexus10
Review URL: https://codereview.chromium.org/
26257002
git-svn-id: http://skia.googlecode.com/svn/trunk@11627
2bbb7eff-a529-9590-31e7-
b0007b416f81
edisonn@google.com [Mon, 7 Oct 2013 13:22:21 +0000 (13:22 +0000)]
pdf: drawPath should pass the computed matrix, instead of default matrix stored in draw.
moved cl https://codereview.chromium.org/
24265006/ in git repository so I can run the trybots
R=vandebo@chromium.org
Review URL: https://codereview.chromium.org/
25675011
git-svn-id: http://skia.googlecode.com/svn/trunk@11626
2bbb7eff-a529-9590-31e7-
b0007b416f81
skia.committer@gmail.com [Sat, 5 Oct 2013 07:01:34 +0000 (07:01 +0000)]
Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@11625
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Sat, 5 Oct 2013 01:16:30 +0000 (01:16 +0000)]
Add perspective support to SkMatrix44 initializers.
I noticed SkMatrix <-> SkMatrix44 conversions were dropping the
perspective values on the floor. As we use SkMatrix44 heavily in
Chromium, I'm concerned this missing code will cause a bug eventually.
It should be correct to simply use the bottom row of the 4x4 matrix
excluding the third column.
Previously committed and reverted, second attempt with fix for
incorrect use of SkMScalar/SkScalar.
BUG=
R=reed@google.com, caryclark@google.com
Author: aelias@chromium.org
Review URL: https://codereview.chromium.org/
25484006
git-svn-id: http://skia.googlecode.com/svn/trunk@11624
2bbb7eff-a529-9590-31e7-
b0007b416f81
aelias@chromium.org [Fri, 4 Oct 2013 22:26:28 +0000 (22:26 +0000)]
Revert "Add perspective support to SkMatrix44 initializers."
This reverts commit
93db1bcae0863feed8d00a61ae2cf72a90a0083c.
git-svn-id: http://skia.googlecode.com/svn/trunk@11623
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Fri, 4 Oct 2013 20:38:08 +0000 (20:38 +0000)]
Add perspective support to SkMatrix44 initializers.
I noticed SkMatrix <-> SkMatrix44 conversions were dropping the
perspective values on the floor. As we use SkMatrix44 heavily in
Chromium, I'm concerned this missing code will cause a bug eventually.
It should be correct to simply use the bottom row of the 4x4 matrix
excluding the third column.
BUG=
R=reed@google.com
Author: aelias@chromium.org
Review URL: https://codereview.chromium.org/
25484006
git-svn-id: http://skia.googlecode.com/svn/trunk@11622
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Fri, 4 Oct 2013 20:02:53 +0000 (20:02 +0000)]
Use vertexless shaders when NVpr is available
Adds support for vertexless shaders and enables them when
NV_path_rendering is available. This takes a
GrGLFragmentOnlyShaderBuilder class, a GrGLTexGenEffectArray class,
support for setting TexGen and the projection matrix in GrGpuGL, and
code for setting the GL fixed function state where necessary.
R=bsalomon@google.com, kkinnunen@nvidia.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
25846002
git-svn-id: http://skia.googlecode.com/svn/trunk@11620
2bbb7eff-a529-9590-31e7-
b0007b416f81
bsalomon@google.com [Fri, 4 Oct 2013 19:22:03 +0000 (19:22 +0000)]
rebaseline angle gradient changes
Review URL: https://codereview.chromium.org/
25666017
git-svn-id: http://skia.googlecode.com/svn/trunk@11618
2bbb7eff-a529-9590-31e7-
b0007b416f81
bungeman@google.com [Fri, 4 Oct 2013 17:00:35 +0000 (17:00 +0000)]
Mutex protect SkFontMgr_DirectWrite cache.
SkFontMgr_DirectWrite is constant, except for its typeface cache.
Protect this cache in the face of multiple threads.
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/
26023002
git-svn-id: http://skia.googlecode.com/svn/trunk@11615
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Fri, 4 Oct 2013 16:52:55 +0000 (16:52 +0000)]
commit to xfermode objects being immutable
BUG=
R=djsollen@google.com, mtklein@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
25968004
git-svn-id: http://skia.googlecode.com/svn/trunk@11614
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Fri, 4 Oct 2013 16:23:58 +0000 (16:23 +0000)]
When cache is full delay flush until GrContext draw is finished
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
25673004
git-svn-id: http://skia.googlecode.com/svn/trunk@11613
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Fri, 4 Oct 2013 15:42:56 +0000 (15:42 +0000)]
Move VertexBuilder to a GrGLFullShaderBuilder subclass
Removes the VertexBuilder nested class from GrGLShaderBuilder in favor
of a new GrGLFullShaderBuilder subclass, and adds an optional emitCode
overload to GrGLEffect that takes a GrGLFullShaderBuilder. Makes
setData virtual in GrGLEffectArray and adds a GrGLVertexEffectArray
subclass that gets built using a GrGLFullShaderBuilder. Also adds a
new GrGLVertexEffect subclass that makes the GrGLFullShaderBuilder
overload required for emitCode, and updates GrGLEffects to inherit
from GrGLVertexEffect where needed.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
25474006
git-svn-id: http://skia.googlecode.com/svn/trunk@11612
2bbb7eff-a529-9590-31e7-
b0007b416f81
borenet@google.com [Fri, 4 Oct 2013 15:32:45 +0000 (15:32 +0000)]
Whitespace change to trigger build after several buildbot-side changes
https://codereview.chromium.org/
25437010/ (Skip WritePixels test on Xoom)
https://codereview.chromium.org/
25820003/ (Use --resetGpuContext flag when running GM on Xoom)
https://codereview.chromium.org/
25666016/ (Remove --nopdf flag from GM on Android)
https://codereview.chromium.org/
26005002/ (Increase Compile timeout)
Review URL: https://codereview.chromium.org/
25421004
git-svn-id: http://skia.googlecode.com/svn/trunk@11611
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Fri, 4 Oct 2013 15:28:18 +0000 (15:28 +0000)]
Don't access RT when disabling scissor.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
25446004
git-svn-id: http://skia.googlecode.com/svn/trunk@11608
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Fri, 4 Oct 2013 14:57:00 +0000 (14:57 +0000)]
Add GM option to allow the GPU context to be reset prior to each GM being run
BUG=skia:1434
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/
26010002
git-svn-id: http://skia.googlecode.com/svn/trunk@11605
2bbb7eff-a529-9590-31e7-
b0007b416f81
halcanary@google.com [Fri, 4 Oct 2013 14:35:38 +0000 (14:35 +0000)]
Fix SkScalar conversion warning error.
This was causing probems on the Win build.
R=caryclark@google.com
Review URL: https://codereview.chromium.org/
26011002
git-svn-id: http://skia.googlecode.com/svn/trunk@11604
2bbb7eff-a529-9590-31e7-
b0007b416f81
bsalomon@google.com [Fri, 4 Oct 2013 14:26:58 +0000 (14:26 +0000)]
Remove rebaselined tests from ignored-tests.txt
Review URL: https://codereview.chromium.org/
26014002
git-svn-id: http://skia.googlecode.com/svn/trunk@11603
2bbb7eff-a529-9590-31e7-
b0007b416f81
bsalomon@google.com [Fri, 4 Oct 2013 14:24:28 +0000 (14:24 +0000)]
Mark images with busted concial gradients as ignore failure on N10, N4, and RHB
Review URL: https://codereview.chromium.org/
25968005
git-svn-id: http://skia.googlecode.com/svn/trunk@11602
2bbb7eff-a529-9590-31e7-
b0007b416f81
bsalomon@google.com [Fri, 4 Oct 2013 14:06:44 +0000 (14:06 +0000)]
Rebaseline gradient gpu tests
Review URL: https://codereview.chromium.org/
25757010
git-svn-id: http://skia.googlecode.com/svn/trunk@11601
2bbb7eff-a529-9590-31e7-
b0007b416f81
halcanary@google.com [Fri, 4 Oct 2013 13:37:24 +0000 (13:37 +0000)]
Fix iOS build of test_image_decoder
Use tool_main() function.
Review URL: https://codereview.chromium.org/
26008002
git-svn-id: http://skia.googlecode.com/svn/trunk@11600
2bbb7eff-a529-9590-31e7-
b0007b416f81
halcanary@google.com [Fri, 4 Oct 2013 13:24:59 +0000 (13:24 +0000)]
Fix narrowing warning error
I was breaking build, by having a char instead of unsigned char.
Review URL: https://codereview.chromium.org/
25683012
git-svn-id: http://skia.googlecode.com/svn/trunk@11599
2bbb7eff-a529-9590-31e7-
b0007b416f81
halcanary@google.com [Fri, 4 Oct 2013 12:46:45 +0000 (12:46 +0000)]
Make image decoding more fault resistant, less verbose.
This change address what happens when a jpeg is partially downloaded
before failing. Many browsers will render it anyway: we want Skia to
do the same. The JpegTest takes a perfectly cromulent jpeg file and
only passes into the ImageDecoder the first half of the image. We
then verify that the image decoder returns a valid bitmap of the
correct dimensions.
We also fixed some png library errors, including issue 1691.
Also, suppressed the majority of warnings from using libpng and
libjpeg. By default, most warnings are *not* suppressed in debug mode.
If you have a debug binary and wish to suppress warnings, set the
following environment variables to true
skia_images_png_suppressDecoderWarnings
skia_images_jpeg_suppressDecoderWarnings
or from within a program that links to Skia:
#if defined(SK_DEBUG)
#include "SkRTConf.h"
SK_CONF_SET("images.jpeg.suppressDecoderWarnings", true);
SK_CONF_SET("images.png.suppressDecoderWarnings", true);
#endif
I tested this, before (control) and after these changes (test), on
364,295 skps from the cluster telemetry.
- number of errors+warnings in control = 2804
- number of errors+warnings fixed = 2283
- number of PNG verbosity fixed = 2152
- number of PNG error fixed = 4
- number of PNG segfault fixed = 3
- number of PNG errors changed to warnings = 62
- number of JPG verbosity fixed = 26
- number of JPG error fixed = 91
Not all errors and warning have been fixed.
These numbers were generated using the find_bad_images_in_skps.py
program. This program may be useful going forward for testing
image-decoding libraries on skp files from the cluster telemetry.
find_bad_images_in_skps.py depends on the test_image_decoder program,
which simply executes the SkImageDecoder::DecodeFile function and uses
its exit status to report success or failure.
BUG=skia:1649
BUG=skia:1691
BUG=skia:1680
R=scroggo@google.com
Review URL: https://codereview.chromium.org/
24449003
git-svn-id: http://skia.googlecode.com/svn/trunk@11597
2bbb7eff-a529-9590-31e7-
b0007b416f81
skia.committer@gmail.com [Fri, 4 Oct 2013 07:01:38 +0000 (07:01 +0000)]
Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@11596
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Fri, 4 Oct 2013 01:20:09 +0000 (01:20 +0000)]
Allow gradient optimization with perspective
Before, gradients would only interpolate the linear portion of the
quadratic equation if there was no perspective. This updates them to
do so even in the case that there is perspective. The rearrangement
of math causes noise differences in the following gm tests:
gradients_no_texture_gpu
gradients_view_perspective_gpu
gradients_local_perspective_gpu
gradients_gpu
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
25645006
git-svn-id: http://skia.googlecode.com/svn/trunk@11595
2bbb7eff-a529-9590-31e7-
b0007b416f81
bungeman@google.com [Fri, 4 Oct 2013 00:03:39 +0000 (00:03 +0000)]
Rebaseline for 11592.
git-svn-id: http://skia.googlecode.com/svn/trunk@11594
2bbb7eff-a529-9590-31e7-
b0007b416f81
scroggo@google.com [Thu, 3 Oct 2013 20:23:53 +0000 (20:23 +0000)]
Ignore the failure of this flaky PDF test.
The Mac 10.6 seems to have a race condition that changes the output.
Disable the test to avoid seeing this failure.
R=edisonn@google.com
Review URL: https://codereview.chromium.org/
25887005
git-svn-id: http://skia.googlecode.com/svn/trunk@11593
2bbb7eff-a529-9590-31e7-
b0007b416f81
bungeman@google.com [Thu, 3 Oct 2013 20:17:51 +0000 (20:17 +0000)]
Snap GDI matrix when snapping height.
When using GDI to render, ensure that the GDI matrix does not attempt to
add subpixel height. This ensures that rotated text is always the same
height as axis aligned text and prevents subpixel drift metrics when they
are unwanted.
R=reed@google.com
Review URL: https://codereview.chromium.org/
25739002
git-svn-id: http://skia.googlecode.com/svn/trunk@11592
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Thu, 3 Oct 2013 19:29:21 +0000 (19:29 +0000)]
Use SkPicture::ExtractBitmap callback in pdf too, there is no need for a specialized function pointer for pdf only only to pass a rectangle, when we can use subseted bitmaps.
R=scroggo@google.com, reed@google.com, vandebo@chromium.org, bsalomon@google.com
Author: edisonn@google.com
Review URL: https://codereview.chromium.org/
25054002
git-svn-id: http://skia.googlecode.com/svn/trunk@11591
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Thu, 3 Oct 2013 17:38:50 +0000 (17:38 +0000)]
update GM to use #ifdef instead of just #if
Review URL: https://codereview.chromium.org/
25749003
git-svn-id: http://skia.googlecode.com/svn/trunk@11590
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Thu, 3 Oct 2013 17:13:38 +0000 (17:13 +0000)]
Fixes for decoding to A8.
src/images/SkImageDecoder_libpng.cpp:
A8 images are not opaque, so do not set the opaque flag.
This fixes a bug where copyTo does not work as expected (when
copying an A8 decoded image to ARGB_8888), leading to
a bitmap hash that does not represent the image correctly
(in skimage).
tools/skimage_main.cpp:
In write_bitmap, which is creating the image for visual comparison,
copy A8 to 8888, since A8 cannot be encoded.
In the section that tests reencoding, do not test reencoding A8,
which is known to not work.
R=mtklein@google.com, djsollen@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
25726004
git-svn-id: http://skia.googlecode.com/svn/trunk@11589
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Thu, 3 Oct 2013 15:17:58 +0000 (15:17 +0000)]
Repurpose GrGLCoordTransform as GrGLProgramEffects
Creates a GrGLProgramEffects class that the GrGLProgram uses to manage
an array of effects. This gives us enough abstraction for the program
to cleanly handle different types of coord transforms.
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
25605008
git-svn-id: http://skia.googlecode.com/svn/trunk@11588
2bbb7eff-a529-9590-31e7-
b0007b416f81
bsalomon@google.com [Thu, 3 Oct 2013 15:05:16 +0000 (15:05 +0000)]
Mark shifty hairmodes on N10 as ignore-failure
BUG=skia:1655
Review URL: https://codereview.chromium.org/
25524003
git-svn-id: http://skia.googlecode.com/svn/trunk@11587
2bbb7eff-a529-9590-31e7-
b0007b416f81
djsollen@google.com [Thu, 3 Oct 2013 14:42:24 +0000 (14:42 +0000)]
Update PDF backend to support fallback fonts on Android.
R=edisonn@google.com, reed@google.com, vandebo@chromium.org
Review URL: https://codereview.chromium.org/
24364008
git-svn-id: http://skia.googlecode.com/svn/trunk@11586
2bbb7eff-a529-9590-31e7-
b0007b416f81
skia.committer@gmail.com [Thu, 3 Oct 2013 07:01:37 +0000 (07:01 +0000)]
Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@11585
2bbb7eff-a529-9590-31e7-
b0007b416f81
jvanverth@google.com [Wed, 2 Oct 2013 19:49:26 +0000 (19:49 +0000)]
Fix font GMs
Disables font cache dump for now
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/
25605007
git-svn-id: http://skia.googlecode.com/svn/trunk@11584
2bbb7eff-a529-9590-31e7-
b0007b416f81
epoger@google.com [Wed, 2 Oct 2013 19:27:35 +0000 (19:27 +0000)]
HTTP GM baseline viewer: server should serve files from gm/rebaseline_server dir
(SkipBuildbotRuns)
R=jcgregorio@google.com
Review URL: https://codereview.chromium.org/
25774002
git-svn-id: http://skia.googlecode.com/svn/trunk@11583
2bbb7eff-a529-9590-31e7-
b0007b416f81
epoger@google.com [Wed, 2 Oct 2013 18:57:48 +0000 (18:57 +0000)]
More improvements to HTTP baseline viewer (for GM results)
(SkipBuildbotRuns)
R=borenet@google.com, bsalomon@google.com
Review URL: https://codereview.chromium.org/
25555003
git-svn-id: http://skia.googlecode.com/svn/trunk@11581
2bbb7eff-a529-9590-31e7-
b0007b416f81
sugoi@google.com [Wed, 2 Oct 2013 18:27:43 +0000 (18:27 +0000)]
Added missing SK_API
BUG=
R=senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
25770002
git-svn-id: http://skia.googlecode.com/svn/trunk@11580
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 2 Oct 2013 18:19:17 +0000 (18:19 +0000)]
Add support to dump font cache texture for debug purposes
R=robertphillips@google.com, bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
25736002
git-svn-id: http://skia.googlecode.com/svn/trunk@11579
2bbb7eff-a529-9590-31e7-
b0007b416f81
robertphillips@google.com [Wed, 2 Oct 2013 17:49:50 +0000 (17:49 +0000)]
Move makeSpace and resetToSize from SkPathRef.cpp to .h
https://codereview.chromium.org/
25754002/
git-svn-id: http://skia.googlecode.com/svn/trunk@11578
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 2 Oct 2013 17:37:59 +0000 (17:37 +0000)]
Add new skyline Rectanizer
The skyline Rectanizer tracks the leading silhouette of the
currently packed rects and tries to fit the next rectangle
on top of that. This gives slightly better packing behavior
than the current log2 scheme.
Also shrank the size of the plots, which increases their
number from 18 to 32 and gives better cache behavior (fewer
purges and uploads).
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
25584002
git-svn-id: http://skia.googlecode.com/svn/trunk@11577
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 2 Oct 2013 16:42:58 +0000 (16:42 +0000)]
Threads can race to be the first one to calculate the empty path ref's bounds.
To dodge the problem, call computeBounds when creating the global empty path
ref.
There's still another race here, which is that we can race to create the empty
path ref in the first place. As written we can conceivably allocate an
arbitrary number of empty path refs, one of which ends up pointed to by the
global variable at the end.
I've punted on fixing this for now because 1) tsan has not complained yet; 2) I
think it can be fixed by the same approach as we can fix the memsets in
25415003, so I want to wait to see how that review goes
first.
BUG=
R=reed@google.com, robertphillips@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
25745003
git-svn-id: http://skia.googlecode.com/svn/trunk@11576
2bbb7eff-a529-9590-31e7-
b0007b416f81
robertphillips@google.com [Wed, 2 Oct 2013 16:42:21 +0000 (16:42 +0000)]
Make it explicit that some validate methods are debug only
https://codereview.chromium.org/
25716003/
git-svn-id: http://skia.googlecode.com/svn/trunk@11575
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 2 Oct 2013 16:15:44 +0000 (16:15 +0000)]
Sadly TSAN still reports this as a race, even when we're obviously writing the
same values. Initializing with the declaration should quiet it down.
BUG=
R=caryclark@google.com
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
25713004
git-svn-id: http://skia.googlecode.com/svn/trunk@11574
2bbb7eff-a529-9590-31e7-
b0007b416f81
scroggo@google.com [Wed, 2 Oct 2013 15:50:19 +0000 (15:50 +0000)]
Do not convert non gray PNG to A8.
If the user requested A8, but the source is not gray, switch to
ARGB8888.
BUG=https://b.corp.google.com/issue?id=9189955
R=reed@google.com
Review URL: https://codereview.chromium.org/
24882002
git-svn-id: http://skia.googlecode.com/svn/trunk@11573
2bbb7eff-a529-9590-31e7-
b0007b416f81
caryclark@google.com [Wed, 2 Oct 2013 15:07:52 +0000 (15:07 +0000)]
fix 10.6
git-svn-id: http://skia.googlecode.com/svn/trunk@11572
2bbb7eff-a529-9590-31e7-
b0007b416f81
bsalomon@google.com [Wed, 2 Oct 2013 15:02:55 +0000 (15:02 +0000)]
Fix gpu.gypi missing file issue
git-svn-id: http://skia.googlecode.com/svn/trunk@11571
2bbb7eff-a529-9590-31e7-
b0007b416f81
caryclark@google.com [Wed, 2 Oct 2013 14:49:34 +0000 (14:49 +0000)]
path ops work in progress
make more skps work
remove edit files
BUG=
Review URL: https://codereview.chromium.org/
23542056
git-svn-id: http://skia.googlecode.com/svn/trunk@11570
2bbb7eff-a529-9590-31e7-
b0007b416f81
bsalomon@google.com [Wed, 2 Oct 2013 13:04:56 +0000 (13:04 +0000)]
Make GPU coord transforms automatic
Adds a GrCoordTransform class and updates the framework to handle
coord transforms similar to how it handles textures with
GrTextureAccess. Renames GrGLEffectMatrix to GrGLCoordTransform and
slightly repurposes it to be used by the framework instead of effects.
R=bsalomon@google.com, robertphillips@google.com
Review URL: https://codereview.chromium.org/
24853002
git-svn-id: http://skia.googlecode.com/svn/trunk@11569
2bbb7eff-a529-9590-31e7-
b0007b416f81
commit-bot@chromium.org [Wed, 2 Oct 2013 12:16:25 +0000 (12:16 +0000)]
Whitespace change to test CQ emails.
BUG=
NOTRY=True
R=borenet@google.com
TBR=borenet@google.com
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
25712003
git-svn-id: http://skia.googlecode.com/svn/trunk@11567
2bbb7eff-a529-9590-31e7-
b0007b416f81