Commit Graph

7019 Commits

Author SHA1 Message Date
humper@google.com
8e029e6e59 silence android warning
git-svn-id: http://skia.googlecode.com/svn/trunk@8567 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 21:54:58 +00:00
humper@google.com
75e3ca127c Error checking / reporting API
Review URL: https://codereview.chromium.org/13699004

git-svn-id: http://skia.googlecode.com/svn/trunk@8566 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 21:44:11 +00:00
caryclark@google.com
496120185c saving the old before blowing away
git-svn-id: http://skia.googlecode.com/svn/trunk@8565 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 20:37:35 +00:00
caryclark@google.com
7e0274e80b saving away the old before blowing the machine away
git-svn-id: http://skia.googlecode.com/svn/trunk@8564 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 20:36:19 +00:00
senorblanco@chromium.org
d043ccee37 Allow single-pass filters (which use asNewEffect()) to participate in the image filter DAG. This was done by introducing the SkSinglePassImageFilter abstract base class, which implements canFilterImageGPU() and filterImageGPU() on behalf of the derived class. The derived class still only needs to asNewEffect(). This allows us to recurse on the filter input in SkSinglePassImageFilter::onFilterImageGPU(). It also allows us to remove any knowledge of single-pass image filters from SkGpuDevice and from the SkImageFilter base class as well.
BUG=

Review URL: https://codereview.chromium.org/13602013

git-svn-id: http://skia.googlecode.com/svn/trunk@8563 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 19:43:22 +00:00
robertphillips@google.com
2e87ba0c7c Add before and after command count to filter tool
https://codereview.chromium.org/13405003/



git-svn-id: http://skia.googlecode.com/svn/trunk@8562 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 15:45:30 +00:00
bensong@google.com
ae6f47e55d Switches to a Skia-specific appengine entry point that uses condensed data and taskqueue writes (SkipBuildbotRuns).
The default entry /add_point does not handle large data efficiently, so we've seen >30min timeouts for some bots to upload data. We now switch to using /skia_add_points that I'm writing for Skia, so we can condense the data to send to minimum (since all points in each batch have the same revision, platform and config), and dedicate the actual data processing to /skia_write_datastore which is a taskqueue task that has longer timeout and can run at app backend instead of blocking the bots.
Initial testing from my MacBook on Mac 64 bench data via vpn gave only a little more than 1 second for uploading data for one config, about 15 seconds for all 12 configs. That's a big win against 20+ minutes.
Review URL: https://codereview.chromium.org/13762002

git-svn-id: http://skia.googlecode.com/svn/trunk@8560 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 14:57:40 +00:00
caryclark@google.com
ebf95ba28d keep old experimental code in sync
git-svn-id: http://skia.googlecode.com/svn/trunk@8554 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 11:53:42 +00:00
caryclark@google.com
818b0cc1b8 Add implementation of path ops
This CL depends on
https://codereview.chromium.org/12880016/
"Add intersections for path ops"

Given a path, iterate through its contour, and
construct an array of segments containing its curves.

Intersect each curve with every other curve, and for
cubics, with itself.

Given the set of intersections, find one with the 
smallest y and sort the curves eminating from the
intersection. Assign each curve a winding value.

Operate on the curves, keeping and discarding them
according to the current operation and the sum of
the winding values.

Assemble the kept curves into an output path.
Review URL: https://codereview.chromium.org/13094010

git-svn-id: http://skia.googlecode.com/svn/trunk@8553 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 11:50:46 +00:00
caryclark@google.com
9166dcb3a0 Add intersections for path ops
This CL depends on 
https://codereview.chromium.org/12827020/
"Add base types for path ops"

The intersection of a line, quadratic, or cubic
with another curve (or with itself) is found by
solving the implicit equation for the curve pair.

The curves are first reduced to find the simplest
form that will describe the original, and to detect
degenerate or special-case data like horizontal and
vertical lines.

For cubic self-intersection, and for a pair of cubics,
the intersection is found by recursively
approximating the cubic with a series of quadratics.

The implicit solutions depend on the root finding
contained in the DCubic and DQuad structs, and
the quartic root finder included here.
Review URL: https://codereview.chromium.org/12880016

git-svn-id: http://skia.googlecode.com/svn/trunk@8552 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 11:50:00 +00:00
caryclark@google.com
07393cab57 Add base types for path ops
Paths contain lines, quads, and cubics, which are
collectively curves.

To work with path intersections, intermediary curves
are constructed. For now, those intermediates use
doubles to guarantee sufficient precision.

The DVector, DPoint, DLine, DQuad, and DCubic
structs encapsulate these intermediate curves.

The DRect and DTriangle structs are created to
describe intersectable areas of interest.

The Bounds struct inherits from SkRect to create
a SkScalar-based rectangle that intersects shared
edges.

This also includes common math equalities and
debugging that the remainder of path ops builds on,
as well as a temporary top-level interface in
include/pathops/SkPathOps.h.
Review URL: https://codereview.chromium.org/12827020

git-svn-id: http://skia.googlecode.com/svn/trunk@8551 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-08 11:47:37 +00:00
edisonn@google.com
390c6d7a90 Fix font handles leak. We return without freeing resources.
Fix for crbug/225256
Review URL: https://codereview.chromium.org/13637004

git-svn-id: http://skia.googlecode.com/svn/trunk@8549 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-06 20:26:15 +00:00
skia.committer@gmail.com
cff0243b0f Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8548 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-06 07:01:10 +00:00
tfarina@chromium.org
7731eada5b Fix more clang errors.
Fixed -Wunused-private-field errors.

R=reed@google.com,bsalomon@google.com

Review URL: https://codereview.chromium.org/13474012

git-svn-id: http://skia.googlecode.com/svn/trunk@8547 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-05 21:13:14 +00:00
sugoi@google.com
b4bdb6518e Unreviewed test fix
Just commenting out the test for now, will investigate...

git-svn-id: http://skia.googlecode.com/svn/trunk@8544 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-05 14:38:08 +00:00
tomhudson@google.com
1aa5129680 Reduce size of second iteration in SkTileGridNextDatum<>().
Rather than iterating over the entire dataset twice, during the first pass
track how large the second pass needs to be. Entirely data-dependent but
in practice approaches 2x speedup.

BUG=1212
R=junov
https://codereview.appspot.com/8315044/



git-svn-id: http://skia.googlecode.com/svn/trunk@8543 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-05 14:21:04 +00:00
sugoi@google.com
e3b4c5097a New SVG turbulence in Skia
This cl contains the code for CPU generation of noise.

TEST:Added 'perlinnoise' gm
Review URL: https://codereview.chromium.org/13094003

git-svn-id: http://skia.googlecode.com/svn/trunk@8541 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-05 13:47:09 +00:00
djsollen@google.com
bde506cf99 Revert Skia to use -02.
There was no clear speed improvement and the
increase in binary size was substantial.

Committed: http://code.google.com/p/skia/source/detail?r=8492

Committed: https://code.google.com/p/skia/source/detail?r=8494

Review URL: https://codereview.chromium.org/13468010

git-svn-id: http://skia.googlecode.com/svn/trunk@8539 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 19:42:51 +00:00
epoger@google.com
caac3db48f re-land r8535, now that src.chromium.org is back up
Review URL: https://codereview.chromium.org/13662002

git-svn-id: http://skia.googlecode.com/svn/trunk@8538 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 19:23:11 +00:00
rmistry@google.com
c71f320b30 Whitespace change to see if svn.chromium.org is back
git-svn-id: http://skia.googlecode.com/svn/trunk@8537 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 19:13:40 +00:00
epoger@google.com
67caaf8792 Revert r8535
git-svn-id: http://skia.googlecode.com/svn/trunk@8536 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 18:21:48 +00:00
epoger@google.com
da8db9837e gm: report ExpectationsMismatch and RenderModeMismatch results separately
Review URL: https://codereview.chromium.org/13650002

git-svn-id: http://skia.googlecode.com/svn/trunk@8535 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 18:11:31 +00:00
borenet@google.com
280d919f3b Whitespace change - Verify that checkouts are fixed
Unreviewed

git-svn-id: http://skia.googlecode.com/svn/trunk@8533 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 14:12:22 +00:00
borenet@google.com
4bfd6205c5 Whitespace change to verify successful builds after master restart
Unreviewed.

git-svn-id: http://skia.googlecode.com/svn/trunk@8532 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 13:00:01 +00:00
commit-bot@chromium.org
905893a602 Whitespace change to test commit queue compile bots
(SkipBuildbotRuns)

Author: rmistry@google.com

Reviewed By: borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/13631002

git-svn-id: http://skia.googlecode.com/svn/trunk@8530 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 11:59:55 +00:00
skia.committer@gmail.com
a9493a3c78 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8529 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-04 07:01:12 +00:00
bsalomon@google.com
e06f8ef5ba Revert 8525,8526 pending investigation of bench_pictures crashes.
git-svn-id: http://skia.googlecode.com/svn/trunk@8527 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 21:06:42 +00:00
bsalomon@google.com
a39f4dc4b7 Commit file accidentally left out of glc change for r8525
git-svn-id: http://skia.googlecode.com/svn/trunk@8526 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 19:55:19 +00:00
bsalomon@google.com
d02e8803e9 Remove GrTexture::releaseRenderTarget() and add GrSurface::isSameAs().
Review URL: https://codereview.chromium.org/13414006

git-svn-id: http://skia.googlecode.com/svn/trunk@8525 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 19:49:13 +00:00
epoger@google.com
52da917814 Add list of Skia trybots to run CLs against, along with existing lists of Chrome trybots
(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13545002

git-svn-id: http://skia.googlecode.com/svn/trunk@8522 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 18:48:18 +00:00
epoger@google.com
50d6862fdb Make submit_try accept space- or comma-separated list
(SkipBuildbotRuns)
Review URL: https://codereview.chromium.org/13535005

git-svn-id: http://skia.googlecode.com/svn/trunk@8521 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 18:35:35 +00:00
commit-bot@chromium.org
cf307b1ccb Whitespace change to test the commit queue compile bots
(SkipBuildbotRuns)

Author: rmistry@google.com

Reviewed By: borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/13561002

git-svn-id: http://skia.googlecode.com/svn/trunk@8520 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 18:30:26 +00:00
epoger@google.com
310478e72c re-land r8514 without breaking 32-bit Mac compilers
Review URL: https://codereview.chromium.org/13427004

git-svn-id: http://skia.googlecode.com/svn/trunk@8518 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 18:00:39 +00:00
robertphillips@google.com
97f57a6c4f Rebaseline Ubuntu performance trigger
git-svn-id: http://skia.googlecode.com/svn/trunk@8516 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 17:31:22 +00:00
epoger@google.com
2212c2e35c roll out r8514
Review URL: https://codereview.chromium.org/13503003

git-svn-id: http://skia.googlecode.com/svn/trunk@8515 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 17:12:42 +00:00
epoger@google.com
f60494ba0b gm: display summary of all results by ErrorType
as discussed in https://codereview.chromium.org/12825005/#msg14
Review URL: https://codereview.chromium.org/12851022

git-svn-id: http://skia.googlecode.com/svn/trunk@8514 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 17:02:53 +00:00
junov@chromium.org
8bc9edce9e Build fix for Surface Test on non-gpu builds
git-svn-id: http://skia.googlecode.com/svn/trunk@8513 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 15:25:46 +00:00
junov@chromium.org
af0583528c Fixed bug with SkImage leaving canvas backing store in an immutable state after destroy.
Added unit test that verifies that surface backing is writable after creating and destroying an image.
Review URL: https://codereview.chromium.org/13226002

git-svn-id: http://skia.googlecode.com/svn/trunk@8512 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 15:03:26 +00:00
bsalomon@google.com
e4617bf6d4 Add GrDrawTarget::copySurface.
Review URL: https://codereview.chromium.org/13428004

git-svn-id: http://skia.googlecode.com/svn/trunk@8510 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 14:56:40 +00:00
junov@chromium.org
c37589d78e Replacing 'new' with 'SkNEW_ARGS' in SkImage_Gpu
Review URL: https://codereview.chromium.org/13535004

git-svn-id: http://skia.googlecode.com/svn/trunk@8509 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 13:58:32 +00:00
djsollen@google.com
53648ab14e Fix build error when building Android in Release mode with -O2.
This fixes the folowing error...

../../../src/pdf/SkPDFShader.cpp: In function 'void gradientFunctionCode(const SkShader::GradientInfo&, SkString*)':
../../../src/pdf/SkPDFShader.cpp:69:19: error: array subscript is above array bounds [-Werror=array-bounds]

Review URL: https://codereview.chromium.org/13471011

git-svn-id: http://skia.googlecode.com/svn/trunk@8506 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 12:34:16 +00:00
tomhudson@google.com
a9e1824e00 SkDraw.h #include cleanup
Removal of SkAutoKern header was already done in r8495; this just
lands the replacement of #includes with forward declarations for
incremental compile speed.

https://codereview.appspot.com/8109043/



git-svn-id: http://skia.googlecode.com/svn/trunk@8504 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 10:18:17 +00:00
skia.committer@gmail.com
041e2dbc06 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@8503 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-03 07:01:14 +00:00
bsalomon@google.com
0406b9e1fa Make drawRect preserve vertex attrib state and push/pop the geom sources.
Also, add some balancing calls for setIndexSource*()
Review URL: https://codereview.chromium.org/13468004

git-svn-id: http://skia.googlecode.com/svn/trunk@8499 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 21:00:15 +00:00
commit-bot@chromium.org
5d01bec07a Fix for effect cache key.
Adds the additional shift needed to incorporate the attribKeyBits.  Also simplifies the creation of the static globals for the edge effects.

Author: jvanverth@google.com

Reviewed By: bsalomon@google.com

Review URL: https://chromiumcodereview.appspot.com/13465019

git-svn-id: http://skia.googlecode.com/svn/trunk@8498 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 20:48:38 +00:00
commit-bot@chromium.org
00aae979fa Remove unused header declaration.
BUG=1179


Author: djsollen@google.com

Reviewed By: reed@google.com,tomhudson@chromium.org

Review URL: https://chromiumcodereview.appspot.com/13097005

git-svn-id: http://skia.googlecode.com/svn/trunk@8495 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 18:41:32 +00:00
djsollen@google.com
534cb63cb5 Revert Skia to use -02.
There was no clear speed improvement and the
increase in binary size was substantial.

Committed: http://code.google.com/p/skia/source/detail?r=8492

Review URL: https://codereview.chromium.org/13468010

git-svn-id: http://skia.googlecode.com/svn/trunk@8494 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 18:14:21 +00:00
commit-bot@chromium.org
90c240aca0 Move edge GrEffects to locally defined classes.
This removes the general GrEdgeEffect and the specialized oval GrEffects and declares them within the renderer files that use them. It also splits GrEdgeEffect into three different GrEffects.

Author: jvanverth@google.com

Reviewed By: robertphillips@google.com

Review URL: https://chromiumcodereview.appspot.com/13344002

git-svn-id: http://skia.googlecode.com/svn/trunk@8493 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 17:57:21 +00:00
commit-bot@chromium.org
af3b510432 Revert Skia to use -02.
There was no clear speed improvement and the
increase in binary size was substantial.


Author: djsollen@google.com

Reviewed By: borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/13468010

git-svn-id: http://skia.googlecode.com/svn/trunk@8492 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 17:36:30 +00:00
bensong@google.com
eb6a41d600 Increases batch size for sending bench data to appengine to 66.
This is part of the attempt to avoid bench step timeout errors (10-20min).
Review URL: https://codereview.chromium.org/13430011

git-svn-id: http://skia.googlecode.com/svn/trunk@8491 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-02 16:41:55 +00:00