Commit Graph

5936 Commits

Author SHA1 Message Date
scroggo@google.com
cbcef70891 Provide an option to bench drawing individual tiles in bench_pictures.
Provides output like the following:
running bench [1236 12045] androidpolice.skp
  tile_256x256: tile [0,0] out of [5,48]: msecs =   1.00
  tile_256x256: tile [1,0] out of [5,48]: msecs =   1.50
  tile_256x256: tile [2,0] out of [5,48]: msecs =   1.00
  tile_256x256: tile [3,0] out of [5,48]: msecs =   1.50
  tile_256x256: tile [4,0] out of [5,48]: msecs =   2.50
  tile_256x256: tile [0,1] out of [5,48]: msecs =   2.00
  tile_256x256: tile [1,1] out of [5,48]: msecs =   3.50
  tile_256x256: tile [2,1] out of [5,48]: msecs =   3.50
  tile_256x256: tile [3,1] out of [5,48]: msecs =   6.00
  tile_256x256: tile [4,1] out of [5,48]: msecs =   2.50
  tile_256x256: tile [0,2] out of [5,48]: msecs =   2.00

BUG=https://code.google.com/p/skia/issues/detail?id=1016

Review URL: https://codereview.appspot.com/6937047

git-svn-id: http://skia.googlecode.com/svn/trunk@6805 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 22:09:28 +00:00
scroggo@google.com
c4013c199c In the config name, report the viewport, if one is provided.
Review URL: https://codereview.appspot.com/6942048

git-svn-id: http://skia.googlecode.com/svn/trunk@6804 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 22:07:08 +00:00
reed@google.com
135e16cd8e revert 6798 (assert in GM)
git-svn-id: http://skia.googlecode.com/svn/trunk@6802 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:53:41 +00:00
reed@google.com
2a3f08b0a7 add debugging flag SK_IGNORE_PIXELREF_SETPRELOCKED for pixelref locks (disabled)
git-svn-id: http://skia.googlecode.com/svn/trunk@6800 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:41:00 +00:00
scroggo@google.com
c0d5e549ab Allow bench_pictures to have its viewport set on the command line.
Instead of drawing the entire (potentially very large) picture, only
draw one viewport's worth.

example:

bench_pictures <skp directory> --viewport 640 480

BUG=https://code.google.com/p/skia/issues/detail?id=1007

Review URL: https://codereview.appspot.com/6943052

git-svn-id: http://skia.googlecode.com/svn/trunk@6799 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:40:48 +00:00
reed@google.com
1adcf8859c Goal: ensure we always balance lock/unlock pixels calls.
A big caller of lockPixels is setContext in the bitmapshader.

This change replaces beginSession/endSession with adding endContext(), and
adds debugging code to ensure that
1. setContext calls are never nested
2. endContext is always called after each setContext call.
Review URL: https://codereview.appspot.com/6937046

git-svn-id: http://skia.googlecode.com/svn/trunk@6798 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 21:39:56 +00:00
bsalomon@google.com
9f13174da5 Fix oversights in r6793.
git-svn-id: http://skia.googlecode.com/svn/trunk@6794 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 20:43:56 +00:00
bsalomon@google.com
8d67c0711b Use GrDrawTarget::AutoClipRestore to set temporary irect clips.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6937048

git-svn-id: http://skia.googlecode.com/svn/trunk@6793 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 20:38:14 +00:00
djsollen@google.com
04b5468957 Fix Android SampleApp
Review URL: https://codereview.appspot.com/6949046

git-svn-id: http://skia.googlecode.com/svn/trunk@6792 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 20:07:21 +00:00
bsalomon@google.com
cf939ae548 Add a state bit to GrDrawState that forces coverage to be blended.
Use this mode in GrClipMaskManager.

R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6945048

git-svn-id: http://skia.googlecode.com/svn/trunk@6790 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:59:23 +00:00
jvanverth@google.com
8ffb7046cb Add the original path renderer files and some support files from Android.
Renamed PathRenderer.{cpp,h} to AndroidPathRenderer.{cpp,h} to avoid name
collisions.

http://codereview.appspot.com/6938050/



git-svn-id: http://skia.googlecode.com/svn/trunk@6789 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:53:18 +00:00
caryclark@google.com
e7bd5f4041 shape ops work in progress
things work pretty well up to this point
it's time to apply recent deletion of binary code
algorithms to the unary code path

git-svn-id: http://skia.googlecode.com/svn/trunk@6788 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:47:53 +00:00
reed@google.com
dd335aeb5d Change to BDS license (as we did with all the other files that were Apache)
Review URL: https://codereview.appspot.com/6948045

git-svn-id: http://skia.googlecode.com/svn/trunk@6787 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 19:24:05 +00:00
djsollen@google.com
4d3f3cd4f2 Fix android build by removing references to the old sampleApp
Review URL: https://codereview.appspot.com/6949045

git-svn-id: http://skia.googlecode.com/svn/trunk@6786 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 18:27:44 +00:00
junov@chromium.org
3cb834bd27 Modifying SkTileGrid to support arbitrary query rectangles.
Exposing SkTileGrid functionality in the public API through SkTileGridPicture.
This patch also makes TileGrid and Rtree testable in gm, which revealed errors.

TEST=gm with '--tileGrid'
BUG=http://code.google.com/p/chromium/issues/detail?id=164636
Review URL: https://codereview.appspot.com/6933044

git-svn-id: http://skia.googlecode.com/svn/trunk@6783 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 16:39:53 +00:00
reed@google.com
4c1f091b68 kill unused SkFlipPixelRef
Review URL: https://codereview.appspot.com/6949043

git-svn-id: http://skia.googlecode.com/svn/trunk@6781 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 16:35:37 +00:00
junov@chromium.org
8f0ca06ef4 Fixing clip region test in deferred canvas, used to determine whether a draw operation occludes the entire canvas.
BUG=http://code.google.com/p/chromium/issues/detail?id=164580
TEST=unit test DeferredCanvas/TestDeferredCanvasFreshFrame
Review URL: https://codereview.appspot.com/6934045

git-svn-id: http://skia.googlecode.com/svn/trunk@6780 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 16:30:39 +00:00
tomhudson@google.com
9973a8a396 Matrix inversion optimizations and benchmark; originally by whunt@google.com.
https://codereview.appspot.com/6901046/



git-svn-id: http://skia.googlecode.com/svn/trunk@6775 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 09:55:42 +00:00
skia.committer@gmail.com
306ab9d5de Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6774 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-13 02:01:33 +00:00
fmalita@google.com
bfa0401ab6 Use double precision when iterating in SkDashPathEffect::filterPath()
Extremely large path_length/dash_length ratios may cause us to loop
indefinitely otherwise.

R=reed@google.com

BUG=

Review URL: https://codereview.appspot.com/6926051

git-svn-id: http://skia.googlecode.com/svn/trunk@6773 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 22:13:58 +00:00
scroggo@google.com
b79103a954 Set git to ignore .android_config
Review URL: https://codereview.appspot.com/6863056

git-svn-id: http://skia.googlecode.com/svn/trunk@6772 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 21:21:29 +00:00
reed@google.com
4ed0fb7684 revert 6766, thereby re-landing 6762-6763 now that the bots are ready
git-svn-id: http://skia.googlecode.com/svn/trunk@6770 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 20:48:18 +00:00
borenet@google.com
1558d68b5c Add bench_pictures config
Review URL: https://codereview.appspot.com/6873073

git-svn-id: http://skia.googlecode.com/svn/trunk@6768 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 20:13:26 +00:00
reed@google.com
25c1408c3d revert 6762-6763, since those require new skps to be generated, and we can't
do that immediately right now... will re-submit when we can.



git-svn-id: http://skia.googlecode.com/svn/trunk@6766 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 19:15:31 +00:00
reed@google.com
9b0fd9aa66 part of prev CL for rrect
git-svn-id: http://skia.googlecode.com/svn/trunk@6763 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 19:03:29 +00:00
reed@google.com
68d61ed83e make RRect and Oval first-class drawing primitives in SkCanvas.
add RRect as a first-class clip primitive.
Review URL: https://codereview.appspot.com/6923058

git-svn-id: http://skia.googlecode.com/svn/trunk@6762 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 19:02:53 +00:00
junov@chromium.org
8cdf0f52ff Adding quickContains API method to SkClipStack
BUG=http://code.google.com/p/chromium/issues/detail?id=164580
TEST=unit test ClipStack/quickContains
Review URL: https://codereview.appspot.com/6919044

git-svn-id: http://skia.googlecode.com/svn/trunk@6760 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 17:58:15 +00:00
epoger@google.com
31114c69f3 Create SkBitmapChecksummer and associated SkBitmapTransformer
As needed to start capturing gm image checksums.
Review URL: https://codereview.appspot.com/6920050

git-svn-id: http://skia.googlecode.com/svn/trunk@6759 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 17:22:23 +00:00
robertphillips@google.com
ca47aae7ec Minor cleanup
https://codereview.appspot.com/6927054/



git-svn-id: http://skia.googlecode.com/svn/trunk@6756 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-12 15:58:25 +00:00
bsalomon@google.com
fb883bf804 Fix generation of random two point gradients for program unit test.
git-svn-id: http://skia.googlecode.com/svn/trunk@6751 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-11 15:32:04 +00:00
skia.committer@gmail.com
c7b4be7f11 Sanitizing source files in Skia_Periodic_House_Keeping
git-svn-id: http://skia.googlecode.com/svn/trunk@6746 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-11 02:01:20 +00:00
junov@chromium.org
41e850f074 Fixing logic error in deferred canvas unittest.
Fixing an inverted test condition.  The tested feature is not broken, but the test was passing the inverted test because code just above was missing a restore call, which was affecting the test.
Review URL: https://codereview.appspot.com/6921044

git-svn-id: http://skia.googlecode.com/svn/trunk@6745 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 21:24:38 +00:00
reed@google.com
1adad343b9 use new enum-constructors
git-svn-id: http://skia.googlecode.com/svn/trunk@6744 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 21:21:27 +00:00
robertphillips@google.com
ef818a470e Fix for Mac-specific OpenGL == complaint in GrGLProgram.cpp
Unreviewed



git-svn-id: http://skia.googlecode.com/svn/trunk@6743 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 21:05:19 +00:00
vollick@chromium.org
57a54e33cf Add SkMatrix44 constructor that allows user to control the initialization
method.  Preliminary results using Chromium's cc_perftests
show that we can avoid almost half of the default constructors from
redundantly/unnecessarily initializing the matrix to identity.

Review URL: https://codereview.appspot.com/6872056

git-svn-id: http://skia.googlecode.com/svn/trunk@6742 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 20:16:10 +00:00
bsalomon@google.com
45a15f551b Modifications to GrPatherRenderer(Chain) interfaces to support clip mask manager.
R=robertphillips@google.com
Review URL: https://codereview.appspot.com/6904069

git-svn-id: http://skia.googlecode.com/svn/trunk@6741 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 19:10:17 +00:00
scroggo@google.com
6f92862028 When cloning picture, use a bitmap heap to avoid flattening bitmaps.
When cloning a picture, the paints are reflattened. Use a bitmap
heap so the bitmaps do not get unnecessarily get flattened as well.

For br.337, this speeds up bench_pictures timing the clone
operation (not yet checked in, but currently timing making five
clones) from around 180 ms to around 24ms.

Review URL: https://codereview.appspot.com/6903063

git-svn-id: http://skia.googlecode.com/svn/trunk@6740 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 18:20:23 +00:00
reed@google.com
dee54be428 optimize for paints that don't require deep copy during clone
Review URL: https://codereview.appspot.com/6903062

git-svn-id: http://skia.googlecode.com/svn/trunk@6739 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 17:39:36 +00:00
bsalomon@google.com
7f805fff69 Disable failing test on android.
Review URL: https://codereview.appspot.com/6899059

git-svn-id: http://skia.googlecode.com/svn/trunk@6738 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 17:32:07 +00:00
reed@google.com
84239fb28d mark our unflattened bitmap as immutable (just as picture deserialization does)
git-svn-id: http://skia.googlecode.com/svn/trunk@6736 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 16:10:33 +00:00
reed@google.com
5a34fd3f98 add '--mode clone' option to bench_pictures
git-svn-id: http://skia.googlecode.com/svn/trunk@6735 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 16:05:09 +00:00
reed@google.com
907ef6c702 don't convert clipPath -> clipRect if the path is inverse-filled
git-svn-id: http://skia.googlecode.com/svn/trunk@6734 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 15:50:37 +00:00
scroggo@google.com
7c9d539d88 In SKP serialization, use existing encoded data.
If an SkBitmap has encoded data, write that during serialization
rather than reencoding it.

Add a test to ensure that this does not modify the output stream,
so the reader need not know the difference.

Review URL: https://codereview.appspot.com/6884054

git-svn-id: http://skia.googlecode.com/svn/trunk@6732 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 15:40:55 +00:00
junov@chromium.org
edf32d5b0e Fixing SkClipStack::clipDevPath so that it will not convert rectangular paths to rectangle clips if inverse fill.
BUG=http://code.google.com/p/chromium/issues/detail?id=164580
TEST=unit test ClipStackTest/test_rect_inverse_fill
Review URL: https://codereview.appspot.com/6880044

git-svn-id: http://skia.googlecode.com/svn/trunk@6731 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 14:57:54 +00:00
caryclark@google.com
0d3d09e5d2 shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@6730 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 14:50:04 +00:00
djsollen@google.com
796763e0b2 Reapply (r6718) with fix for compiler error on linux.
git-svn-id: http://skia.googlecode.com/svn/trunk@6729 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 14:12:55 +00:00
djsollen@google.com
570a48c0e1 revert Reapply r5364 (Update ARM and NEON optimizations for S32A_Opaque_BlitRow32)
git-svn-id: http://skia.googlecode.com/svn/trunk@6728 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 14:10:20 +00:00
djsollen@google.com
57c29f7d6f Reapply r5364 (Update ARM and NEON optimizations for S32A_Opaque_BlitRow32)
This reverts r5378.

Review URL: https://codereview.appspot.com/6815056

git-svn-id: http://skia.googlecode.com/svn/trunk@6727 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 13:55:02 +00:00
caryclark@google.com
9f3e9a5a17 shape ops work in progress
rewrite binary edge inclusion lookup
fix warnings

git-svn-id: http://skia.googlecode.com/svn/trunk@6726 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 12:50:53 +00:00
mike@reedtribe.org
f8b1ebc35b add helpers for isTranslate and isScaleTranslate
special-case determinant for isScaleTranslate



git-svn-id: http://skia.googlecode.com/svn/trunk@6725 2bbb7eff-a529-9590-31e7-b0007b416f81
2012-12-10 03:27:47 +00:00