Commit Graph

974 Commits

Author SHA1 Message Date
commit-bot@chromium.org
0fd0d4c7fe Add warning about GOPATH to bug_chomper/run_server.sh
BUG=skia:2551
R=scroggo@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14732 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-14 15:42:14 +00:00
commit-bot@chromium.org
44d4210146 BugChomper: Get the oauth_client_secret from GS
BUG=skia:
NOTRY=true
(SkipBuildbotRuns)

R=jcgregorio@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14718 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-13 19:18:55 +00:00
commit-bot@chromium.org
5132461627 BugChomper utility - rewrite in Go
BUG=skia:
R=jcgregorio@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14715 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-13 18:03:45 +00:00
commit-bot@chromium.org
9d439a707e Adds dashboard link for one-line plot on each alert item.
BUG=skia:2523
NOTRY=true
R=kelvinly@google.com
TBR=rmistry@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14713 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-13 17:38:17 +00:00
commit-bot@chromium.org
e7851cd75d Update TSAN suppressions.
BUG=skia:2459, skia:1792
R=bsalomon@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14711 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-13 14:47:21 +00:00
commit-bot@chromium.org
5654d177d5 comment-only fix to tools/update-doxygen.sh
(SkipBuildbotRuns)
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com
TBR=rmistry

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14703 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-12 20:47:02 +00:00
commit-bot@chromium.org
205ce48c38 add --readJsonSummaryPath to render_pictures
BUG=skia:1942
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14695 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-12 15:37:20 +00:00
commit-bot@chromium.org
8fe89d3124 Use a tilegrid for bench_playback.
Using --tile wasn't a fair comparison: SkPicture didn't get to optimize its
playback, but SkRecord did.  Numbers here are starting to agree with what I saw
in telemetry: SkRecord with culling is on average at 0.8-0.9 of the speed of
SkPicture (10-30% slower) than SkPicture SkPicture with a tile grid, but some
in some cases it's down at 0.3, taking almost 4x as long to draw a 256x256 tile.

0.4x tabl_mercurynews.skp 0.109889 0.252483
0.5x tabl_cnet.skp 0.250367 0.527789
1.0x desk_mapsvg.skp 1.48698 1.49939
1.2x desk_yahoogames.skp 0.07745 0.065343
0.9x tabl_mlb.skp 0.294509 0.312505
0.8x tabl_hsfi.skp 0.250678 0.316337
0.6x tabl_worldjournal.skp 0.510204 0.828798
0.7x desk_facebook.skp 0.318981 0.483744
0.9x desk_googlehome.skp 0.06983 0.078964
0.9x desk_tigersvg.skp 0.019232 0.022611
1.0x desk_youtubetvvideo.skp 0.401614 0.401862
1.1x desk_amazon.skp 0.415552 0.362111
0.7x desk_yahooanswers.skp 0.237995 0.358659
0.7x desk_twitter.skp 0.323466 0.439772
1.2x desk_fontwipe.skp 0.121577 0.097845
1.1x desk_css3gradients.skp 0.395335 0.362087
0.9x desk_googlespreadsheet.skp 0.362056 0.406688
1.0x tabl_frantzen.skp 15.2475 14.8521
0.6x desk_forecastio.skp 0.154236 0.276881
0.7x desk_pinterest.skp 0.077433 0.11324
0.5x tabl_cuteoverload.skp 0.173014 0.361815
0.5x tabl_androidpolice.skp 0.225903 0.465608
0.6x tabl_vnexpress.skp 0.151075 0.241104
0.6x tabl_nytimes.skp 0.06515 0.117229
0.8x desk_ebay.skp 0.353437 0.422586
0.8x tabl_deviantart.skp 0.223103 0.295496
1.1x tabl_culturalsolutions.skp 0.551348 0.506104
0.9x mobi_wikipedia.skp 0.302603 0.337292
0.6x desk_linkedin.skp 0.165102 0.276149
0.6x tabl_digg.skp 0.159074 0.281529
1.2x desk_oldinboxapp.skp 0.019815 0.017146
1.0x tabl_nofolo.skp 5.18914 5.42784
0.6x desk_jsfiddlehumperclip.skp 0.076869 0.133665
1.0x desk_blogger.skp 0.206702 0.19688
0.8x desk_espn.skp 0.346386 0.451871
1.0x desk_samoasvg.skp 3.60037 3.43147
0.8x desk_booking.skp 0.338818 0.438267
1.3x desk_yahoosports.skp 0.603811 0.470052
0.6x tabl_engadget.skp 0.248995 0.404372
0.7x desk_wowwiki.skp 0.325801 0.479559
0.8x tabl_ukwsj.skp 0.326985 0.405971
0.9x tabl_gmail.skp 0.2604 0.276744
0.9x desk_googleplus.skp 8.08874 8.71105
1.1x tabl_slashdot.skp 0.559332 0.524313
0.9x desk_gmailthread.skp 0.671569 0.74134
0.8x desk_weather.skp 0.194162 0.247681
1.3x desk_rectangletransition.skp 0.218372 0.173685
0.6x tabl_gamedeksiam.skp 0.243374 0.4134
0.9x desk_jsfiddlebigcar.skp 0.162282 0.186035
0.3x desk_pokemonwiki.skp 0.202878 0.778934
0.7x tabl_googleblog.skp 0.141203 0.209971
0.8x desk_sfgate.skp 0.229078 0.275248
1.0x desk_chalkboard.skp 2.28916 2.20101
0.9x tabl_googlecalendar.skp 0.687155 0.75413
1.1x tabl_gspro.skp 0.186399 0.169522
0.5x desk_googlespreadsheetdashed.skp 0.512622 1.02815
0.6x desk_mobilenews.skp 0.183506 0.293929
0.8x tabl_techmeme.skp 0.193074 0.229106
1.2x desk_carsvg.skp 5.33047 4.34058
0.5x desk_youtube.skp 0.132663 0.248236
0.7x tabl_pravda.skp 0.21644 0.308788
1.1x desk_gws.skp 0.698107 0.625371
0.5x tabl_mozilla.skp 0.189638 0.386801
1.0x desk_baidu.skp 0.353438 0.355965
1.1x tabl_sahadan.skp 0.476226 0.416737
summary: ≥0.3x (A 0.9x, G 0.8x) ≤1.3x

Whole SKP playback speed is fine of course.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14673 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-09 15:00:10 +00:00
commit-bot@chromium.org
27f6b0d013 Add timing to dump_record.
Prints microsecond timing for each command in the left-hand column:

optimized flat/http___mobile_news_sandbox_google_com_news_pt0_scroll_layer_7.skp
   4.0   1 Save
2075.0   2      DrawRect
 104.0   3      BoundedDrawPosTextH
 135.4   4      DrawRect
   9.4   5      DrawRect
   5.6   6      DrawRect
   8.2   7      DrawRect
   6.8   8      DrawRect
...

(I'm sure Rietveld will just mangle the crap out of that.  It's helpfully right-aligned.)

To do this, I made Draw from SkRecordDraw Skia-public as SkRecords::Draw,
and time it command-by-command.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14672 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-09 14:59:29 +00:00
commit-bot@chromium.org
90c0fbd349 reland "extract some common code from PictureRenderer"
re-lands https://codereview.chromium.org/273703006/

NOTRY=True
R=bungeman@google.com, djsollen@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14662 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-09 03:18:41 +00:00
commit-bot@chromium.org
de3ad9e220 Revert of extract some common code from PictureRenderer (https://codereview.chromium.org/273703006/)
Reason for revert:
breaking the android debug builds.  It seems to be the result of android using shared libs and not lumping everything into one big static lib or executable. So we have more than one copy of SkString which is the root of the issue.

Original issue's description:
> extract some common code from PictureRenderer
>
> Committed: http://code.google.com/p/skia/source/detail?r=14638

R=borenet@google.com, epoger@google.com
TBR=borenet@google.com, epoger@google.com
NOTREECHECKS=true
NOTRY=true

Author: djsollen@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14649 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-08 16:23:56 +00:00
commit-bot@chromium.org
ee18f2a3c9 extract some common code from PictureRenderer
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14638 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-08 14:48:44 +00:00
commit-bot@chromium.org
c71da1f6ed Convert all SkRecordPattern matchers into SkRecord mutators.
- Allow any return type from SkRecord mutators and visitors;
  - update existing calls to mutate and visit;
  - convert match to operator() in SkRecordPattern;
  - tidy up a few inelegant bits of old code in tests.

The net result is that the generated code is much clearer.  All the mutate() calls
inline as you'd hope, and you can now actually follow along with the disassembly.

BUG=skia:2378
R=fmalita@chromium.org, bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14631 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-07 21:16:09 +00:00
commit-bot@chromium.org
2db7fe7d3b When solving the cubic line intersection directly fails, use binary search as a fallback.
The cubic line intersection math empirically works 99.99% of the time (fails 3100 out of 1B random tests) but when it fails, an intersection may be missed altogether.

The binary search is may not find a solution if the cubic line failed to find any solutions at all, but so far that case hasn't arisen.

BUG=skia:2504
TBR=reed@google.com

Author: caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14614 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-07 15:31:40 +00:00
commit-bot@chromium.org
bf07d2e17d Add dump_record to make inspecting before/after SkRecordOptimize easy.
E.g.
dump_record -r http___groupcloned_com_test_plain_list_animation_simple_html_layer_109.skp

 0 Save
 1 	DrawRect
 2 	DrawRect
 3 	DrawRect
 4 	DrawRect
 5 	Save
 6 		ClipRect
 7 	Restore
 8 	Save
 9 		ClipRect
10 	Restore
11 Restore

dump_record -O -r http___groupcloned_com_test_plain_list_animation_simple_html_layer_109.skp
 0 Save
 1 	DrawRect
 2 	DrawRect
 3 	DrawRect
 4 	DrawRect
 5 	NoOp
 6 	NoOp
 7 	NoOp
 8 	NoOp
 9 	NoOp
10 	NoOp
11 Restore

(Reitveld sadly eats my kickass indentation.)

BUG=skia:2378

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

R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14600 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-06 20:38:24 +00:00
commit-bot@chromium.org
545a21a714 Add dump_record to make inspecting before/after SkRecordOptimize easy.
E.g.
dump_record -r http___groupcloned_com_test_plain_list_animation_simple_html_layer_109.skp

 0 Save
 1 	DrawRect
 2 	DrawRect
 3 	DrawRect
 4 	DrawRect
 5 	Save
 6 		ClipRect
 7 	Restore
 8 	Save
 9 		ClipRect
10 	Restore
11 Restore

dump_record -O -r http___groupcloned_com_test_plain_list_animation_simple_html_layer_109.skp
 0 Save
 1 	DrawRect
 2 	DrawRect
 3 	DrawRect
 4 	DrawRect
 5 	NoOp
 6 	NoOp
 7 	NoOp
 8 	NoOp
 9 	NoOp
10 	NoOp
11 Restore

(Reitveld sadly eats my kickass indentation.)

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14596 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-06 19:45:18 +00:00
commit-bot@chromium.org
3df4e95402 Spelling fix, comments explaining script.
R=mtklein@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14565 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-05 13:30:06 +00:00
commit-bot@chromium.org
1b3beef11b Don't run GPU configs in bench_pictures on RHB
BUG=skia:2518
R=epoger@google.com, djsollen@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14544 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-02 19:59:59 +00:00
commit-bot@chromium.org
71e39d57d8 remove self-tests for no-longer-supported rebaseline.py
see https://codereview.chromium.org/262703003 ('mark rebaseline.py as deprecated')

NOTREECHECKS=True
NOTRY=True
R=borenet@google.com
TBR=borenet

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14538 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-02 16:48:30 +00:00
commit-bot@chromium.org
6a879be2d6 mark rebaseline.py as deprecated
(SkipBuildbotRuns)
NOTREECHECKS=True
NOTRY=True
R=senorblanco@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14530 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-02 14:34:18 +00:00
commit-bot@chromium.org
1a98a0604b one valgrind.supp to rule them all.
R=mtklein@google.com, robertphillips@google.com, borenet@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14487 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-30 21:10:13 +00:00
senorblanco@chromium.org
9e3b485ac4 Update the list of bots in rebaseline.py.
This script was not updated for the new Ubuntu bots. Also, it was
attempting to rebaseline some bots for which we don't keep results
(NVPR, ASAN).

R=borenet@google.com, borenet

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14472 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-30 16:11:50 +00:00
commit-bot@chromium.org
8c4953c6f1 Cleanup of SSE optimization files.
General cleanup of optimization files for x86/SSEx.
Renamed the opts_check_SSE2.cpp file to _x86, since it's not specific
to SSE2. Commented out the ColorRect32 optimization, since it's
disabled anyway, to make it more visible.
Also fixed a lot of indentation, inclusion guards, spelling,
copyright headers, braces, whitespace, and sorting of includes.

Author: henrik.smiding@intel.com

Signed-off-by: Henrik Smiding <henrik.smiding@intel.com>

R=reed@google.com, mtklein@google.com, tomhudson@google.com, djsollen@google.com, joakim.landberg@intel.com

Author: henrik.smiding@intel.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14464 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-30 14:58:46 +00:00
commit-bot@chromium.org
359e4f0a5d Increase picture bench inner loop iteration to 10 for testing number stableness.
BUG=skia:2473
NOTRY=true
R=caryclark@google.com
TBR=caryclark@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14451 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-30 00:46:29 +00:00
commit-bot@chromium.org
4610a465b6 reland r14391 ('fix contents of render_pictures JSON summary')
BUG=skia:2043,skia:2044,skia:1942,skia:2466
R=caryclark@google.com
TBR=caryclark

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14443 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 19:39:22 +00:00
commit-bot@chromium.org
95ead5b0e8 Fix buildbot_globals.py: Retrieve the file from our repo mirror
BUG=skia:2480
NOTRY=true
R=epoger@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14439 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 17:11:19 +00:00
skia.committer@gmail.com
1c74374684 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@14428 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 03:05:14 +00:00
commit-bot@chromium.org
172eb1baaf Add --timescale to bench_record and bench_playback.
Default bench_record to report us, bench_playback ms.

BUG=skia:2378
R=mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14417 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 19:41:17 +00:00
commit-bot@chromium.org
bde3cd8f1d First version of gpuveto testing script
This CL just sketches out the structure of the gpuveto testing process. Two big areas for improvement are:
  render the picture in tiles and label as unsuitable if any gpu tile is slower than raster
  decide on whether tilegrid is used or not

As expected the current gpuveto heuristic isn't so good:

predicted 	   suitable    unsuitable
-------------------------------------------
actual suitable      10           17
actual unsuitable    15           27

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

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14416 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 19:41:01 +00:00
commit-bot@chromium.org
35203e467e Add chrome_changes file
BUG=skia:2457
R=epoger@google.com, bsalomon@google.com, robertphillips@google.com, bungeman@google.com, reed@google.com, skia-team@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14415 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 19:40:53 +00:00
commit-bot@chromium.org
8400b23ce6 use BenchTimer, print in µs
BUG=skia:2378
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14405 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 15:30:02 +00:00
commit-bot@chromium.org
cced37d2c3 Revert of fix contents of render_pictures JSON summary (https://codereview.chromium.org/259703002/)
Reason for revert:
This appears to have caused regressions such as this one: http://108.170.220.120:10117/builders/Perf-Win7-ShuttleA-HD2000-x86-Release/builds/2117/steps/CheckForRegressions/logs/stdio

Original issue's description:
> fix contents of render_pictures JSON summary
>
> BUG=skia:2043,skia:2044,skia:1942
>
> Committed: http://code.google.com/p/skia/source/detail?r=14391

R=scroggo@google.com, epoger@google.com
TBR=epoger@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2043,skia:2044,skia:1942

Author: caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14399 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 14:07:10 +00:00
commit-bot@chromium.org
2349a1e369 git-sync-deps - handle symbolic links to directories
NOTRY=true
R=mtklein@google.com, borenet@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14396 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 13:39:47 +00:00
commit-bot@chromium.org
fe78847f12 gpuveto tool
This CL adds a command line tool to report the suitableForGpuRasterization status of a single skp file.

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

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14393 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 13:19:34 +00:00
commit-bot@chromium.org
eecdcb9e8a fix contents of render_pictures JSON summary
BUG=skia:2043,skia:2044,skia:1942
R=scroggo@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14391 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 13:18:39 +00:00
commit-bot@chromium.org
830628e7ce Add TSAN suppressions.
BUG=skia:1792,skia:2459
R=bsalomon@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14381 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-25 13:59:27 +00:00
commit-bot@chromium.org
8cb1daaa1e fix minor skp-found bugs
remove globals from pathops_unittest

BUG=skia:2460
TBR=mtklein

Author: caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14378 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-25 12:59:11 +00:00
commit-bot@chromium.org
e2cb12a82a First pass at GPU veto
As a short term solution this CL collects information during the recording process for use in suitableForGpuRasterization.

BUG=366495
R=bsalomon@google.com, reed@google.com, alokp@chromium.org

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14368 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 21:53:13 +00:00
commit-bot@chromium.org
d0306a1593 Revert of Add nanosecond timer. (https://codereview.chromium.org/250243002/)
Reason for revert:
breaks EVERYTHING

Original issue's description:
> Add nanosecond timer.
>
> I've been finding it hard to get enough resolution out of our existing timers when measuring really tiny pictures.
>
> BUG=skia:2378
>
> Committed: http://code.google.com/p/skia/source/detail?r=14362

R=bsalomon@google.com, bungeman@google.com, mtklein@chromium.org
TBR=bsalomon@google.com, bungeman@google.com, mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2378

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14364 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 20:17:24 +00:00
commit-bot@chromium.org
74b43a9d4c Add nanosecond timer.
I've been finding it hard to get enough resolution out of our existing timers when measuring really tiny pictures.

BUG=skia:2378
R=bsalomon@google.com, mtklein@google.com, bungeman@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14362 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 20:04:20 +00:00
commit-bot@chromium.org
7eb529fb72 simplify tools/xsan_build now that make runs ninja
BUG=skia:
R=borenet@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14356 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 18:16:13 +00:00
commit-bot@chromium.org
732bd66ac2 Rearrange SkRecord public API to fit better with cc/resources/picture
BUG=skia:2378
R=reed@google.com, danakj@chromium.org, enne@chromium.org, mtklein@google.com, robertphillips@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14351 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 15:22:55 +00:00
commit-bot@chromium.org
aae6e6f043 git-sync-deps verifies that directory is a top-level git directory.
NOTRY=true
R=mtklein@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14285 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-21 19:03:05 +00:00
commit-bot@chromium.org
ad8ce572f6 anticipate more optimizations by renaming some files and methods
also, call the new SkRecordOptimize in bench_playback

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14277 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-21 15:03:36 +00:00
commit-bot@chromium.org
5da5b59764 Add --match to bench tools, extra decimal to bench_pictures.
BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14276 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-21 14:59:59 +00:00
robertphillips@google.com
770963f23f Staging for cleanup of SkPicture-related headers
https://codereview.chromium.org/243173002



git-svn-id: http://skia.googlecode.com/svn/trunk@14258 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-18 18:04:41 +00:00
commit-bot@chromium.org
5fb2ce38b3 Staged removal of SkPicture-derived classes
This CL removes the SkPicture-derived classes (with a flag to keeps clients working). In the process it also lightens the recording factory function so it is no longer ref counted).

The only interesting bits are in SkPicture* and Sk*Picture.*

R=reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14251 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-17 23:35:06 +00:00
skia.committer@gmail.com
667b98d947 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@14234 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-17 03:05:10 +00:00
commit-bot@chromium.org
0d317d303a install_dependencides tool for posix-type systems
R=mtklein@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14231 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-16 22:10:48 +00:00
commit-bot@chromium.org
71e800a6f8 This is an short replacement for gclient.
Makes use of our current DEPS file to allow for a smooth transition.

BUG=skia:291
NOTRY=true
R=borenet@google.com, tfarina@chromium.org, epoger@google.com, mtklein@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14227 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-16 19:21:00 +00:00
commit-bot@chromium.org
d393b17cf3 Retract SkPicture::kOptimizeForClippedPlayback_RecordingFlag from public API
This CL sets the stage for retracting the SkPicture::kOptimizeForClippedPlayback_RecordingFlag flag
from the public API (more work needs to be done in Blink & Chrome). In the new world the only way
to set this flag (and thus instantiate an SkPicture-derived
class) is by passing a factory to the SkPictureRecorder class. This is to get all clients always using
factories so that we can then change the factory call used (i.e., so the factory just creates a BBH) and
do away with the SkPicture-derived classes.

BUG=skia:2315
R=reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14221 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-16 16:02:10 +00:00
commit-bot@chromium.org
b17a24fedb SkRecord: turn on cull annotation pass in public API.
Also, switch Skia internal tools over to use the public headers where
possible.  Where it's not, the tools -Isrc/record explicitly now, and
if it's not obvious, note why they don't use SkRecording.h.

BUG=skia:2378
R=reed@google.com, mtklein@google.com, fmalita@chromium.org

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14191 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-14 20:33:05 +00:00
commit-bot@chromium.org
4431e7757c Mike R: please sanity check SkPostConfig.h
Mike K: please sanity check Test.cpp and skia_test.cpp

Feel free to look at the rest, but I don't expect any in depth review of path ops innards.

Path Ops first iteration used QuickSort to order segments radiating from an intersection to compute the winding rule.

This revision uses a circular sort instead. Breaking out the circular sort into its own long-lived structure (SkOpAngle) allows doing less work and provides a home for caching additional sorting data.

The circle sort is more stable than the former sort, has a robust ordering and fewer exceptions. It finds unsortable ordering less often. It is less reliant on the initial curve  tangent, using convex hulls instead whenever it can.

Additional debug validation makes sure that the computed structures are self-consistent. A new visualization tool helps verify that the angle ordering is correct.

The 70+M tests pass with this change on Windows, Mac, Linux 32 and Linux 64 in debug and release.

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

Author: caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14183 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-14 17:08:59 +00:00
skia.committer@gmail.com
5199701acb Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@14172 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-14 03:04:57 +00:00
robertphillips@google.com
84b18c7e3e split SkPictureRecorder out of SkPicture
https://codereview.chromium.org/214953003/



git-svn-id: http://skia.googlecode.com/svn/trunk@14171 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-13 19:09:42 +00:00
commit-bot@chromium.org
d6489c957f use the correct rowBytes so Debug build doesn't assert
BUG=skia:2378
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14163 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 19:06:46 +00:00
commit-bot@chromium.org
28fcae2ec7 Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)
Reason for revert:
Want to reland the original CL.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, bensong@google.com
TBR=bensong@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14156 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 17:15:40 +00:00
commit-bot@chromium.org
4bffdf2a10 use SkIntToScalar, fix windows build
NOTRY=true
NOTREECHECKS=true
BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14155 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 16:13:54 +00:00
commit-bot@chromium.org
c873329ae9 Update bench to be able to preprocess skps
This allows benchmarking of optimization improvements and plumbs in the purging API. The purging is necessary so we don't magically get faster because the saveLayers are always pre-generated.

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

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14154 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 15:54:14 +00:00
commit-bot@chromium.org
ba73d28bef Add bench_playback, for quick profiling of SKR playback.
It is not completely fair to compare --skr and --noskr numbers.  SKR looks
unfairly good because some optimizations are baked into our SKPs at record
time.  But, at least, by using a kWriteOnly_Mode SkRecorder, we prevent
SkPicturePlayback from compounding that unfairness.  SkRecordDraw must handle
its own playback-time optimizations (quickrejects) on its own.

This code should look suspiciously similar to bench_record.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14151 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 15:53:39 +00:00
commit-bot@chromium.org
1f75ab9c66 add some .gitignores related to gm and tools
NOTREECHECKS=True
NOTRY=True
R=scroggo@google.com
TBR=scroggo

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14150 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 14:49:50 +00:00
commit-bot@chromium.org
96edc24598 Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
Reason for revert:
Chrome's side of define changes not easy to figure out quickly. Reverting this for DEPS roll for now.

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14149 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-11 13:47:30 +00:00
commit-bot@chromium.org
d923288e50 Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)
Reason for revert:
fixes on the chrome side are landing (brettw), keep fingers crossed.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14145 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 22:49:20 +00:00
commit-bot@chromium.org
757ebd20ef Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
Reason for revert:
breaking the Chrome deps roll.
http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14144 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 22:36:34 +00:00
commit-bot@chromium.org
24c568c159 add explicit filepaths to render_pictures JSON summary
BUG=skia:2230,skia:1942
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14133 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 15:39:02 +00:00
commit-bot@chromium.org
a94866d153 Add the chromium ninja builder to the list of trybots for a DEPS roll.
R=robertphillips@google.com, borenet@google.com

Author: djsollen@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14129 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-10 14:10:08 +00:00
commit-bot@chromium.org
d9ce2be6b2 SkRecordDraw: skip draw ops when the clip is empty
- Adds tests for SkRecordDraw's two main features: cull- and clip- based skipping.
   - Adds full SkCanvas semantic mode to SkRecorder, so it can be used as a target for SkRecordDraw.

BUG=skia:2378
R=fmalita@chromium.org, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14124 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-09 23:30:28 +00:00
commit-bot@chromium.org
149e9a107c Rename kPMColor_SkColorType to kN32_SkColorType.
The new name better represents what this flag means.

BUG=skia:2384
R=reed@google.com

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14117 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-09 20:45:29 +00:00
commit-bot@chromium.org
cf2f00872c SkDiscardableMemoryPool to abstract class
Motivation - we want to keep our public headers small.

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

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14063 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-04 16:43:38 +00:00
commit-bot@chromium.org
681faa3388 Remove RHB msaa4 from bench_pictures cfg
NOTRY=true
BUG=skia:2386
R=robertphillips@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14047 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-03 17:47:17 +00:00
commit-bot@chromium.org
e3ff558a4b SkRecord strawman
Record performance as measured by bench_record (out/Release/bench_record --skr) improves by at least 1.9x, at most 6.7x, arithmetic mean 2.6x, geometric mean 3.0x.  So, good.

Correctness as measured by DM (out/Debug/dm --skr) is ~ok.  One GM (shadertext2) fails because we're assuming all paint effects are immutable, but SkShaders are still mutable.

To do after this CL:
  - measure playback speed
  - catch up feature-wise to SkPicture
  - match today's playback speed


BUG=skia:
R=robertphillips@google.com, bsalomon@google.com, reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14010 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-01 16:24:06 +00:00
commit-bot@chromium.org
8ddc26b68c Actually identify required saveLayers in SkGpuDevice::EXPERIMENTAL_drawPicture
NOTRY=true
R=bsalomon@google.com, rmistry@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13993 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-31 17:55:12 +00:00
commit-bot@chromium.org
cb3f07940c Adds bench expectations to expectations/bench; fixes bench alert test's dependency on script line number.
BUG=skia:2307
NOTRY=true
R=borenet@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13979 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-28 17:55:51 +00:00
commit-bot@chromium.org
16182f74c6 Lazy image decoding to reduce bench_record overhead.
We want bench_record to time recording only, and are willing to accept
some time spent playing back the source pictures only out of necessity.

This lets us skip the JPEG and PNG decoding, which are a pretty fair
chunk of time.  Should mean better record numbers at the same --loops.

BUG=skia:
R=tomhudson@chromium.org, halcanary@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13977 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-28 16:08:18 +00:00
commit-bot@chromium.org
ffc224f802 Add a minimal --undefok to SkCommandLineFlags.
Similar in spirit to gflags' undefok, I'd like to be able to ignore
specific unknown flags.  This lets me run the same command line on, say,
a branch that's got a new flag and on a clean branch tracking
origin/master.  This is handy for performance comparison, etc.

It's not essential, and if you hate this I can find another way.

As an example, I want to compare the runtime of SKP recording with my new code.  I've added a flag --skr to bench_record to help this.  So I want to compare

origin/master: out/Release/bench_record
my patch:      out/Release/bench_record --skr

This lets me run both as out/Release/bench_record --undefok skr --skr, which is handy for scripts and things.

BUG=skia:
R=scroggo@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13945 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 21:00:02 +00:00
commit-bot@chromium.org
2a1704f362 Further tweak compare_codereview.py.
- only show details for bots where at least one side failed
- dedup identical failures

BUG=skia:
R=halcanary@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13942 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 18:02:17 +00:00
reed@google.com
7111d463ce Revert "Revert of implement readPixels and writePixels natively, w/o using the (deprecated) (https://codereview.chromium.org/199733016/)"
This reverts commit 9a90bd16dc6756395c422adf0f24560d033ed9ea.

BUG=skia:
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13939 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 16:20:24 +00:00
commit-bot@chromium.org
f2ef1587e4 Tweak compare_codereview.py.
- summary at end so I don't have to scroll back up
  - tweak the diff markers a bit
  - strip the test runtimes

BUG=skia:
R=halcanary@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13935 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 15:16:27 +00:00
commit-bot@chromium.org
231f6b81c2 Revert of implement readPixels and writePixels natively, w/o using the (deprecated) (https://codereview.chromium.org/199733016/)
Reason for revert:
Android bots segfaulting in tests.

Original issue's description:
> implement readPixels and writePixels natively, w/o using the (deprecated)
> SkCanvas::Config8888 enum.
>
> Revert "Revert "hide Config8888 entirely". Broke a bunch of builds."
>
> This reverts commit 763277ba157fef0f651004bb98a189e9f1ac730b.
>
> Needs chrome to remove the READPIXELS guard from skia's .gyp
>
> Committed: https://code.google.com/p/skia/source/detail?r=13931

R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13932 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 13:38:44 +00:00
reed@google.com
1121170477 implement readPixels and writePixels natively, w/o using the (deprecated)
SkCanvas::Config8888 enum.

Revert "Revert "hide Config8888 entirely". Broke a bunch of builds."

This reverts commit 763277ba157fef0f651004bb98a189e9f1ac730b.

Needs chrome to remove the READPIXELS guard from skia's .gyp

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13931 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-25 12:00:30 +00:00
bsalomon@google.com
180e36abf6 Revert "hide Config8888 entirely". Broke a bunch of builds.
This reverts commit fa11c49cc11a6c9ebafbf9c59e118917f9b3cc56.

Revert "Sanitizing source files in Housekeeper-Nightly" to make the above revert clean.

This reverts commit b5787422c8eb2a27a9576777597fd9e06784acdb.

TBR=reed@google.com
TBR=jcgregorio@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13872 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-20 13:26:45 +00:00
commit-bot@chromium.org
b470c2140c Silence warning after f5e315ccf1.
(clang 3.3):

../tools/PictureRenderer.cpp:350:13: error: variable 'hash' is used uninitialized whenever 'if' condition is false
      [-Werror,-Wsometimes-uninitialized]
        if (!generatedHash) {
            ^~~~~~~~~~~~~~
../tools/PictureRenderer.cpp:354:53: note: uninitialized use occurs here
        jsonSummaryPtr->add(outputFilename.c_str(), hash);
                                                    ^~~~
../tools/PictureRenderer.cpp:350:9: note: remove the 'if' if its condition is always true
        if (!generatedHash) {
        ^~~~~~~~~~~~~~~~~~~~
../tools/PictureRenderer.cpp:334:18: note: initialize the variable 'hash' to silence this warning
    uint64_t hash;
                 ^
                  = 0

The warning is wrong, but the compiler does have a point: generatedHash is always false at that point.

R=epoger@google.com

Author: fmalita@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13869 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 22:58:52 +00:00
commit-bot@chromium.org
e14792d99f hide Config8888 entirely
BUG=skia:
R=bsalomon@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13865 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 21:20:24 +00:00
commit-bot@chromium.org
bdc772ebbe Add quiet mode to lua_pictures.
This allows:

for i in {0..5}; do
    out/Debug/lua_pictures -q --skpPath $SKP_PATH -l $SCRIPT --modulo $i 6
done

to generate output similar to what telemetry will generate.

R=reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13861 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 19:23:17 +00:00
commit-bot@chromium.org
f5e315ccf1 add --writeChecksumBasedFilenames flag to render_pictures
BUG=skia:1455,skia:2230
R=robertphillips@google.com, robertphillips@chromium.org

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13859 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-19 17:26:07 +00:00
commit-bot@chromium.org
70512af9dd Add a means of extracting active operations from SkPicture
For the "pull forward" task I will be comparing the two cases:
  analyze the whole skp and use the BBH information
  analyze only the active portion of the skp

In the first case we need a way to get the BBH information out of the picture in order to extract the relevant portions of the whole-skp analysis. This adds caching of the active ops so that work isn't duplicated between when the optimization path queries for that information and when the usual draw path queries for it.

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

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

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13853 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 17:45:32 +00:00
commit-bot@chromium.org
341241d567 short-term fix for RunToolSelfTests
BUG=skia:2307
NOTREECHECKS=True
NOTRY=True
R=bensong@google.com
TBR=bensong

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13846 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 05:41:33 +00:00
skia.committer@gmail.com
db0c875377 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13845 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-18 03:02:11 +00:00
commit-bot@chromium.org
1301bf3abf add initial scraper for dashing
BUG=skia:
R=bsalomon@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13843 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 23:09:47 +00:00
commit-bot@chromium.org
a713f9c6f6 add new readPixels with direct memory parameters
BUG=skia:
R=scroggo@google.com, bsalomon@google.com, robertphillips@google.com, fmalita@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13840 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 21:31:26 +00:00
skia.committer@gmail.com
eb849e5fd1 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13825 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-17 03:02:17 +00:00
commit-bot@chromium.org
145d1c0fdc Proposed SkCanvas API for preLoading textures to VRAM v2.0
This is an update to (Proposed SkCanvas API for preLoading textures to VRAM - https://codereview.chromium.org/192853002/). It takes into account in-person feedback on the initial proposal. The main feedback was to land this closer to where we will ultimately wind up with the reordered rendering capability (and don't have an SkCanvas entry point (yet)).

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

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

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13822 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-16 19:46:36 +00:00
robertphillips@google.com
5ed01d1f8f Revert r13810 (Proposed SkCanvas API for preLoading textures to VRAM v2.0)
git-svn-id: http://skia.googlecode.com/svn/trunk@13811 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 18:50:07 +00:00
commit-bot@chromium.org
1ab85c8719 Proposed SkCanvas API for preLoading textures to VRAM v2.0
This is an update to (Proposed SkCanvas API for preLoading textures to VRAM - https://codereview.chromium.org/192853002/). It takes into account in-person feedback on the initial proposal. The main feedback was to land this closer to where we will ultimately wind up with the reordered rendering capability (and don't have an SkCanvas entry point (yet)).

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

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13810 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 18:23:12 +00:00
commit-bot@chromium.org
8687608c45 tools/roll_deps: add '-m tryserver.chromium' to git-cl-try
R=rmistry@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13804 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-14 15:50:39 +00:00
commit-bot@chromium.org
f11943f21d render_pictures unittests: run over a dir with multiple SKPs, like production
BUG=skia:1942
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13775 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 20:09:46 +00:00
skia.committer@gmail.com
0b70816eb1 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13755 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-12 03:02:18 +00:00
commit-bot@chromium.org
51c040ed1e Alter bench_pictures to "respect" the logPerIter flag.
When --logPerIters is set and --repeat is great then 2 then bench_pictures will run each test "repeat" times (to generate the correct number of timings) by rendering 5 times.

This CL also adds a swapBuffers in addition to the pre-existing flush calls.

R=bsalomon@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13752 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 22:58:00 +00:00
commit-bot@chromium.org
f16d797497 Fix linking errors on android builds due to cdd0f92b1a
NOTREECHECKS=true
NOTRY=true
R=iancottrell@google.com, tomhudson@google.com
TBR=tomhudson@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13745 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 19:12:44 +00:00
commit-bot@chromium.org
cdd0f92b1a New version of the bbh shootout.
There were a bunch of problems with the existing code, all of which I would of ignored, except it could only benchmark none and rtree.
The new version measures the same numbers, in almost exactly the same way, it's the structure over the top of the actual test runner that I changed.
Now it only loads the pictures once, it is configurable in which bbh's it runs and how may loops on them it does, it uses standard command line processing, and it does not do so much redundant work so it runs quicker. It is also much easier to understand and change IMHO.

Doing this so I can reasonably compare the new QuadTree implementation.
BUG=skia:2242

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

R=tomhudson@google.com, mtklein@google.com, reed@google.com

Author: iancottrell@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13743 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 17:27:07 +00:00
commit-bot@chromium.org
db34f33cd8 Revert of New version of the bbh shootout (https://codereview.chromium.org/186973005/)
Reason for revert:
breaking build on at least 12 configurations.

Original issue's description:
> New version of the bbh shootout.
> There were a bunch of problems with the existing code, all of which I would of ignored, except it could only benchmark none and rtree.
> The new version measures the same numbers, in almost exactly the same way, it's the structure over the top of the actual test runner that I changed.
> Now it only loads the pictures once, it is configurable in which bbh's it runs and how may loops on them it does, it uses standard command line processing, and it does not do so much redundant work so it runs quicker. It is also much easier to understand and change IMHO.
>
> Doing this so I can reasonably compare the new QuadTree implementation.
> BUG=skia:2242
>
> Committed: http://code.google.com/p/skia/source/detail?r=13736

R=tomhudson@google.com, mtklein@google.com, reed@google.com, iancottrell@google.com
TBR=iancottrell@google.com, mtklein@google.com, reed@google.com, tomhudson@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2242

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13737 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 14:23:50 +00:00
commit-bot@chromium.org
4aa718590a New version of the bbh shootout.
There were a bunch of problems with the existing code, all of which I would of ignored, except it could only benchmark none and rtree.
The new version measures the same numbers, in almost exactly the same way, it's the structure over the top of the actual test runner that I changed.
Now it only loads the pictures once, it is configurable in which bbh's it runs and how may loops on them it does, it uses standard command line processing, and it does not do so much redundant work so it runs quicker. It is also much easier to understand and change IMHO.

Doing this so I can reasonably compare the new QuadTree implementation.
BUG=skia:2242
R=tomhudson@google.com, mtklein@google.com, reed@google.com

Author: iancottrell@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13736 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-11 13:51:28 +00:00
commit-bot@chromium.org
5865ec5f3a rebaseline_server: add actual_repo and actual_revision command line options
So, if you want to see divergences from expectations as of https://code.google.com/p/skia-autogen/source/detail?r=29365 , specify --actuals-revision 29365

This is also handy for testing rebaseline_server performance improvements against a static set of results.

BUG=skia:2248
NOTREECHECKS=True
NOTRY=True
R=borenet@google.com, bsalomon@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13726 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-10 18:09:25 +00:00
skia.committer@gmail.com
e62513fb92 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13714 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-08 03:02:06 +00:00
commit-bot@chromium.org
0fd5270ad6 Add nvprmsaa4 and nvprmsaa16 configs to bench_pictures
Add nvprmsaa4 and nvprmsaa16 configs to bench_pictures.

R=bsalomon@google.com

Author: kkinnunen@nvidia.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13708 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 18:41:14 +00:00
commit-bot@chromium.org
4cd9e2169e Add SkCanvas::writePixels that takes info+pixels directly
add corresponding methods to device (w/ diff name to avoid colliding with exising virtuals)

BUG=skia:
R=bsalomon@google.com, robertphillips@google.com, junov@google.com, junov@chromium.org

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13697 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-07 03:25:16 +00:00
commit-bot@chromium.org
dcb8e54ffd This CL is motivated by the desire to make the skpinfo tool work a bit better. The main concern is that the assumptions made w.r.t. written bytes may not be valid for all SkWStream sub-classes.
R=bungeman@gmail.com, bungeman@google.com, reed@google.com, mtklein@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13673 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 18:25:20 +00:00
commit-bot@chromium.org
890b826fa3 Remove unused TimerData that generates errors
As far as I can tell all uses of TimerData::appendTimes were stripped out in https://chromiumcodereview.appspot.com/23121002 but the surrounding code was left in, causing it to print errors when there are none.

BUG=skia:2242
R=sglez@google.com, tomhudson@chromium.org, mtklein@google.com, tomhudson@google.com

Author: iancottrell@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13672 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-05 17:09:46 +00:00
skia.committer@gmail.com
ade9a3485e Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@13651 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-04 03:02:32 +00:00
commit-bot@chromium.org
6f4fb0f129 Generating the 1M skps frequently yields truncated skps. This tool is intended to help automate weeding these out.
Please see skbug:1057

rmistry for tools, gyp
mtklein for src\core & include\core

BUG=skia:1057
R=rmistry@google.com, mtklein@google.com, reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13643 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 19:18:39 +00:00
commit-bot@chromium.org
1b94819fcb roll_deps: Return a tuple even when returning early
This fixes the bot going red when DEPS is already up-to-date.

BUG=skia:
R=halcanary@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13642 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 17:57:41 +00:00
commit-bot@chromium.org
450d9ef4ac Add the ability to select bbh type, and include quadtree support.
This is a breaking change to tileGridSize flag added in 184543003, as it now defaults to a sensible value but does not implicitly turn on the tile grid bbh.

BUG=skia:2242
R=tomhudson@google.com, mtklein@google.com, skyostil@chromium.org, skyostil@google.com

Author: iancottrell@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13641 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-03-03 17:51:12 +00:00
commit-bot@chromium.org
e892615292 Adding flag to switch bench_record into tilegrid mode
BUG=skia:
R=tomhudson@google.com, mtklein@google.com, skyostil@google.com, skyostil@chromium.org

Author: iancottrell@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13628 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-28 19:25:11 +00:00
commit-bot@chromium.org
c530208ab0 Add point count to lua SkPath.
Add some scripts for classifying rrects and counting complex clip combinations.

R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13601 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 21:38:47 +00:00
bsalomon@google.com
4ebe382188 Revert "Revert of Add getReducedClipStack to lua canvas (https://codereview.chromium.org/180283004/)"
This reverts commit efded03a38d6147caaf2d951638d27fdd47eed64.

Fixes builds

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13599 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 20:22:32 +00:00
commit-bot@chromium.org
1caedbb216 Revert of Add getReducedClipStack to lua canvas (https://codereview.chromium.org/180283004/)
Reason for revert:
breaking a bunch of builds

Original issue's description:
> Add getReducedClipStack to lua canvas
>
> Committed: http://code.google.com/p/skia/source/detail?r=13594

R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13597 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 18:32:44 +00:00
commit-bot@chromium.org
a47ac2bcc2 Add getReducedClipStack to lua canvas
R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13594 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-26 17:50:08 +00:00
commit-bot@chromium.org
d85b822616 Add some SkPath lua functions
R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13572 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 21:59:29 +00:00
commit-bot@chromium.org
5cc25359c6 Add getClipStack method to lua SkCanvas
R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13567 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 18:59:48 +00:00
commit-bot@chromium.org
d5f032d46b Do not define SK_SUPPORT_DEEPCOPYTO_CONFIG in Skia.
Clean up our callers who depend on the deprecated function.

R=scroggo@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13566 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-24 18:51:43 +00:00
commit-bot@chromium.org
8a2ad3cae7 add new copyTo version to SkBitmap, which takes SkColorType
BUG=skia:
R=scroggo@google.com, halcanary@google.com, bsalomon@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13553 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-23 03:59:35 +00:00
commit-bot@chromium.org
184263325b Updates bench alert test output to match latest changes.
BUG=skia:2193
TBR=epoger@google.com
NOTRY=true

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13513 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 16:22:55 +00:00
commit-bot@chromium.org
557e3cda9a Separates faster and slower bench alerts; sorts by delta.
Separate faster and slower bench alerts; sort by delta.

BUG=skia:2193
NOTRY=true
R=epoger@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13512 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-20 15:58:32 +00:00
robertphillips@google.com
7fac718702 Fix valgrind suppressions (again)
https://codereview.chromium.org/166193003/



git-svn-id: http://skia.googlecode.com/svn/trunk@13449 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-14 14:08:05 +00:00
djsollen@google.com
27d7ede2e6 bugfix for typo in skpdiff tool
Review URL: https://codereview.chromium.org/154263008

git-svn-id: http://skia.googlecode.com/svn/trunk@13408 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 16:29:39 +00:00
djsollen@google.com
60bce6cfcc Return -1 in error condition instead of removing diff result.
BUG=skia:2160
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13407 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 16:22:58 +00:00
robertphillips@google.com
dd31ac470b Fix valgrind suppressions
https://codereview.chromium.org/158493004/



git-svn-id: http://skia.googlecode.com/svn/trunk@13403 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-11 15:23:21 +00:00
commit-bot@chromium.org
164052e9ce Create a common utility for finding and running binaries in out/
NOTRY=true
BUG=skia:2019
R=epoger@google.com

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13367 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-07 18:41:49 +00:00
commit-bot@chromium.org
4b5ad7fcd7 remove tools/test_rendering.py and tools/test_pictures.py
BUG=skia:2035
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13289 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-03 21:19:04 +00:00
commit-bot@chromium.org
c22d139808 Initial QuadTree implementation
In an effort to find a faster bounding box hierarchy than the R-Tree, a QuadTree has been implemented here.
For now, the QuadTree construction is generally faster than the R-Tree and the queries are a bit slower, so overall, SKP local tests showed QuadTree performance similar to the R-Tree performance.

Tests and bench are included in this cl.

At this point, I'd like to be able to commit this in order to more easily use the bots to test multiple configurations and a larger number of SKPs. The R-Tree BBH is still used by default so this change shouldn't affect chromium.

BUG=skia:
R=junov@chromium.org, junov@google.com, senorblanco@google.com, senorblanco@chromium.org, reed@google.com, sugoi@google.com, fmalita@google.com

Author: sugoi@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13282 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-02-03 18:08:33 +00:00
commit-bot@chromium.org
0ed90029e3 add_codereview_message script to append messages to a CL
Add add_codereview_message.py script.  This script takes a message and
a codereview URL as arguments calls `git cl upload` to append the
message to the given codereview issue.

Motivation: We are automating a process of testing Chromium/Skia DEPS
rolls where roll_deps.py is automatically run every night, and then at
a later time, compare_codereview.py is run to generate a report of the
trybot results.  This script can be used to append that report to the
DEPS roll Cl.

This CL also refactors functioanlity common to roll_deps and
add_codereview_message:
*   Add tools/git_utils.py module.
    -   ChangeGitBranch class was factored out of
        roll_deps.GitBranchCLUpload.  The other half of that class
        became roll_deps.git_cl_uploader function.  I make use of
        this new class in both roll_deps and upload_deps_roll.
    -   test_git_executable moved to this new module.
*   Add tools/misc_utils.py - move VerboseSubprocess, ChangeDir,
    and ReSearch classes from roll_deps module.
*   Remove generic functions from roll_deps.
*   Add git_cl_uploader function to roll_deps.  Refactor
    roll_deps.roll_deps function to make use of it

BUG=skia:
R=borenet@google.com, robertphillips@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13251 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-30 22:12:30 +00:00
robertphillips@google.com
5fbccb35eb Suppress new valgrind complaint
https://codereview.chromium.org/144853006/



git-svn-id: http://skia.googlecode.com/svn/trunk@13244 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-30 18:51:29 +00:00
commit-bot@chromium.org
f296eac872 Remove nvpr bench_pictures_cfg
BUG=skia:2042
R=bsalomon@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13215 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-28 14:35:51 +00:00
commit-bot@chromium.org
06cd6c1a6d Add the NOTRY command on roll_deps.py
Motivation: The current workflow is to submit via `git cl dcommit`.
As we move to automated nightly creation of the DEPS roll CLs, we want
to make it easier for the submitter to speed along a clean roll.

BUG=skia:
R=borenet@google.com, robertphillips@google.com, rmistry@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13211 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-27 22:42:51 +00:00
borenet@google.com
17bb951e65 roll_deps.py: Make default_bots_list a module-level variable
This allows us to import the script rather than run it in a sub-shell.

BUG=skia:
R=halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13200 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-27 18:08:55 +00:00
commit-bot@chromium.org
788a5f0871 Explain empty report in compare_codereview.py.
Let user know when control and roll have no common trybots, instead of
being silent.

BUG=skia:
R=borenet@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13194 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-27 16:34:45 +00:00
commit-bot@chromium.org
9e63883725 Add a suppressions file for leak sanitizer.
LeakSanitizer is built into AddressSanitizer, and runs with no extra speed
penalty.  Most interestingly, it's got a lock-free allocator, so it doesn't
bottleneck threaded code.

This file is enough to supress all leak warnings except from the Nvidia driver
on my desktop for tests and dm.  Looks like lsan doesn't or can't pay attention
to leaked globals (-fno-common doesn't affect this).

BUG=skia:
R=robertphillips@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13153 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-23 18:42:31 +00:00
tfarina@chromium.org
5a064e3af8 Remove more unnamed namespace usages.
Skia prefers 'static' over 'unnamed' namespaces.

BUG=None
TEST=skgpu and tools
R=robertphillips@google.com, bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13146 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-23 02:02:57 +00:00
commit-bot@chromium.org
517c1e2921 Chromium Codereview Comparison Script.
This script takes two Codereview URLs, looks at the trybot results for
the two codereviews and compares the results.

Motivation:  This should speed up the DEPS roll procedure.

BUG=skia:2039
R=robertphillips@google.com, borenet@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13144 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-22 22:57:19 +00:00
commit-bot@chromium.org
34f47f9e7c Add reviewers to roll_deps.py, remove linux_heapcheck bot
The --reviewers and --cc are disabled for now, while we work on the workflow.

BUG=skia:
R=robertphillips@google.com

Author: halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13137 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-21 21:38:49 +00:00
commit-bot@chromium.org
240196d751 Make tools/submit_try safer
Using proc.wait() in combination with PIPE doesn't seem
to be safe for large patches according to
http://docs.python.org/2/library/subprocess.html.

Moving to proc.communicate().

Signed-off-by: Kévin PETIT <kevin.petit@arm.com>

BUG=skia:
R=djsollen@google.com, borenet@google.com

Author: kevin.petit.arm@gmail.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13113 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-16 19:48:19 +00:00
commit-bot@chromium.org
6a18079de8 Use MACOSX_DEPLOYMENT_TARGET instead of SDKROOT.
MACOSX_DEPLOYMENT_TARGET is the minimum unconditionally supported OS,
which should just be 10.6 for us until Chrome changes.  SDKROOT is the
maximum conditionally supported OS, which defaults sanely to whatever's
the latest SDK the machine has, so we don't need to mention it.

BUG=skia:
R=bungeman@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13102 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-15 21:39:18 +00:00
commit-bot@chromium.org
c3147c668c render_pictures: adjust unittests to show specific failures
BUG=skia:2043,skia:2044
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13100 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-15 20:35:54 +00:00
commit-bot@chromium.org
238771c930 [try 2] skpmaker: make the SKP more graphically interesting (add a border)
relanding https://codereview.chromium.org/137993008/

BUG=skia:1942
NOTRY=True
R=rmistry@google.com
TBR=rmistry

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13088 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-15 16:33:31 +00:00
commit-bot@chromium.org
7e1a31db6a Revert of skpmaker: make the SKP slightly more interesting (add a border) (https://codereview.chromium.org/137993008/)
Reason for revert:
broke http://108.170.217.252:10117/builders/Build-Mac10.6-GCC-x86-Debug/builds/2837

Original issue's description:
> skpmaker: make the SKP slightly more interesting (add a border)
>
> This will help with render_pictures self-testing
> BUG=skia:1942
>
> Committed: http://code.google.com/p/skia/source/detail?r=13086

R=rmistry@google.com
TBR=rmistry@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:1942

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13087 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-15 16:04:45 +00:00
commit-bot@chromium.org
a3b0c4fe63 skpmaker: make the SKP slightly more interesting (add a border)
This will help with render_pictures self-testing
BUG=skia:1942
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13086 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-15 15:40:13 +00:00
commit-bot@chromium.org
17cc3eaeaf When a picture lies about its size (i.e., claims to be 100x100 but only ever draws to 90x100) arbitrary pixel differences can appear in the undrawn portion. This is causing spurious differences to appear in the 8888 vs. gpu telemetry results.
R=bsalomon@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13084 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-15 14:51:25 +00:00
commit-bot@chromium.org
9f8e282901 submit_try: Obtain the list of trybots from the checked-in slaves.cfg
This should drastically speed up the script.

BUG=
R=epoger@google.com, rmistry@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13071 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-14 19:18:45 +00:00
commit-bot@chromium.org
a6d46cb1bc Add default_msaa16 and nvpr configs to bench_pictures.cfg
BUG=skia:2032
R=robertphillips@google.com, bsalomon@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13070 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-14 18:47:07 +00:00
borenet@google.com
1a5e83a0ac Use git_cl.Changelist.GetUpstreamBranch() for diff in submit_try
BUG=skia:1862
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13066 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-14 18:03:10 +00:00
commit-bot@chromium.org
30d4f8372c deprecate tools/test_rendering.py and tools/test_pictures.py
they will be removed entirely on/after Feb 1 unless there is objection

BUG=skia:1943
R=borenet@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13065 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-14 17:01:28 +00:00
commit-bot@chromium.org
a858223408 Add no-op NULL picture to bench_record.
Defaults of out/Release/bench_record are still fine; NULL's not too far off
from stable at 900 loops.  But for focus on NULL, I'd recommend
something like out/Release/bench_record --loops 100000 --skps.

Also: fail on failures, print 2 significant digits instead of fixed 4.2.

BUG=skia:1850
R=tomhudson@chromium.org

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13054 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-13 19:09:36 +00:00
commit-bot@chromium.org
15ac322aae Add bench_record.
I got fed up trying to figure out how best to measure recording cost with bench_pictures, render_pictures, etc, so I wrote a new tool.

Features welcome.

BUG=
R=tomhudson@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13037 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-13 12:03:47 +00:00
borenet@google.com
4d5e1366c9 Fixes to roll_deps for the bots
The bots are running an older version of git which does not support the
-q/--quiet flag for branch or the --short flag for symbolic-ref.

BUG=
R=halcanary@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13030 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-10 21:02:25 +00:00
borenet@google.com
6f0f5b4aad Remove references to Skia's SVN repository
BUG=
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13006 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-09 21:41:39 +00:00
halcanary@google.com
8c5d2c1e75 Changes to roll_deps.py
-  Code cleanup
-  Stop assuming that chromium's checkout would be via git-svn.
-  Verbose commit message for the deps revision
-  Shorter branch names.
-  New default: save_branches = yes.
-  New option: --git_hash=GIT_HASH

BUG=skia:1973
BUG=skia:1974
BUG=skia:1993
BUG=skia:1995
R=borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12974 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-08 21:29:34 +00:00
borenet@google.com
d4ba6e7781 submit_try: create the diff file using git, rather than relying on trychange.py
BUG=skia:1862

(SkipBuildbotRuns)

R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12967 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-08 21:00:30 +00:00
reed@google.com
672588b684 change offset to xy for pixelref subsetting
BUG=
R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12958 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-08 15:42:01 +00:00
commit-bot@chromium.org
11f156201a add unittest for render_pictures binary
Once committed, this will be run as part of RunToolSelfTests on http://108.170.217.252:10117/builders/Housekeeper-PerCommit .

BUG=skia:1943
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12941 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-07 17:03:40 +00:00
halcanary@google.com
31fdb92995 DEPS roll script
This script:
    -  searches through the last N commits to find out the hash that is
       associated with the revision number.
    -  creates a new branch in the chromium tree, modifies the DEPS
       file, commits, and uploads to Rietveld.
    -  create a whitespace-only commit and uploads that to to Rietveld.

BUG=
R=borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12921 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-06 19:50:22 +00:00
robertphillips@google.com
11e10e340b Patch for Windows compilation errors from r12916
git-svn-id: http://skia.googlecode.com/svn/trunk@12919 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-06 19:09:29 +00:00
rmistry@google.com
6ab96733b8 Support mesa config in render_pictures.
R=epoger@google.com, robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12916 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-06 18:37:24 +00:00
commit-bot@chromium.org
91e3ffded5 These strings are unused.
R=reed@google.com, halcanary@google.com
BUG=

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12914 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-06 18:29:14 +00:00
commit-bot@chromium.org
c735598ce5 take 2: create simple 'skpmaker' tool to generate SKP files for testing
(re-landing https://codereview.chromium.org/108343006 without the build breakages)

BUG=skia:1943
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12866 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-02 19:42:15 +00:00
commit-bot@chromium.org
5ccdf01fff Revert of https://codereview.chromium.org/108343006/
Reason for revert: broke some builds

R=rmistry@google.com, mtklein@google.com
TBR=mtklein@google.com, rmistry@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:1943

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12865 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-02 18:51:38 +00:00
commit-bot@chromium.org
dbd8379e5f create simple 'skpmaker' tool to generate SKP files for testing
(needed to create self-test for render_pictures)

BUG=skia:1943
R=rmistry@google.com, mtklein@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12864 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-02 18:10:34 +00:00
commit-bot@chromium.org
261c666682 Make tests output spin on the same line by default.
-v now gives a cleaned-up version of the existing output (every test timed, useless information removed)

Example output, default:
  [ 36/193] PathOpsCubicIntersectionOneOffTest
then later when finished...
  [193/193] BlurMaskFilter

Example output, -v:  (note, codereview is messing up my pretty spacing)
Skia UnitTests: --resourcePath resources SK_RELEASE SK_SCALAR_IS_FLOAT skia_arch_width=32
[  1/193]     0ms PathOpsSimplifyDontFailOneTest
[  2/193]     0ms PathOpsSimplifyFailOneTest
[  3/193]    30ms PathOpsSkpTest
[  4/193]    21ms PathOpsSimplifyFailTest
....
[182/193]  1026ms BlitRow
[183/193]   808ms AAClip
[184/193]  4333ms Math
[185/193]  5068ms PackBits
[186/193]  2265ms DrawText_DrawPosText
[187/193]  9163ms PathOpsRectsThreadedTest
[188/193]  5540ms GLPrograms
[189/193]     0ms GLInterfaceValidation
[190/193]     2ms DeferredCanvas
[191/193]     1ms ClipCache
[192/193]    30ms BlurMaskFilter
[193/193] 10396ms PathOpsOpCubicsThreadedTest
Finished 193 tests, 0 failures, 0 skipped.  (622610 internal tests)

BUG=
R=halcanary@google.com, mtklein@google.com, bungeman@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12860 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-02 16:19:53 +00:00
halcanary@google.com
3d50ea1b87 Add Options to SkDecodingImageGenerator, simplify API.
Motivation: We want to remove redundant classes from Skia.  To
that end we want to remove SkImageRef and its subclasses and
replace their uses with SkDiscardablePixelRef +
SkDecodingImageGenerator.  Since Android uses SkImageRef, we need
to make sure that SkDecodingImageGenerator allows all of the
settings that Android exposes in BitmapFactory.Options.

To that end, we have created an Options struct for the
SkDecodingImageGenerator which lets the client of the generator set
sample size, dithering, and bitmap config.

We have made the SkDecodingImageGenerator constructor private
and replaced the SkDecodingImageGenerator::Install functions
with a SkDecodingImageGenerator::Create functions (one for
SkData and one for SkStream) which now take a
SkDecodingImageGenerator::Options struct.

Also added a ImageDecoderOptions test which loops through a list
of sets of options and tries them on a set of 5 small encoded
images.

Also updated several users of SkDecodingImageGenerator::Install to
follow new call signature - gm/factory.cpp, LazyDecodeBitmap.cpp,
and PictureTest.cpp, CachedDecodingPixelRefTest.cpp.

We also added a new ImprovedBitmapFactory Test which simulates the
exact function that Android will need to modify to use this,
installPixelRef() in BitmapFactory.

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

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12855 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-02 13:15:13 +00:00
commit-bot@chromium.org
9de35eb375 Adds non-1 scalar to config names.
BUG=
R=robertphillips@google.com, bungeman@google.com, halcanary@google.com, scroggo@google.com, borenet@google.com

Author: bensong@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12811 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-20 21:49:33 +00:00
borenet@google.com
40fbcae783 Change bench_pictures configs
Aiming at CPU vs GPU

R=epoger@google.com, robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12799 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-20 14:48:38 +00:00
commit-bot@chromium.org
9e8f88b6ef create tools/tests/run_all.py to run all our Python self-tests within tools
Eventually, we want all of these self-tests to be written in Python;
this change makes it easier for us to add new Python self-tests, and discourages
the addition of bash self-tests.

BUG=skia:677,skia:1943
NOTRY=True
R=rmistry@google.com, scroggo@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12775 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-19 18:22:32 +00:00
robertphillips@google.com
4fa237f2fb Yet another round of valgrind suppressions
https://codereview.chromium.org/116053004/



git-svn-id: http://skia.googlecode.com/svn/trunk@12766 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-19 13:41:48 +00:00
commit-bot@chromium.org
1ad518bf38 Revert of https://codereview.chromium.org/93703004/
Reason for revert: Test failures

R=scroggo@google.com, djsollen@google.com, reed@google.com, halcanary@google.com
TBR=djsollen@google.com, halcanary@google.com, reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12747 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-18 18:33:15 +00:00
halcanary@google.com
d665dc4c10 Add Options to SkDecodingImageGenerator, simplify API.
Motivation: We want to remove redundant classes from Skia.  To
that end we want to remove SkImageRef and its subclasses and
replace their uses with SkDiscardablePixelRef +
SkDecodingImageGenerator.  Since Android uses SkImageRef, we need
to make sure that SkDecodingImageGenerator allows all of the
settings that Android exposes in BitmapFactory.Options.

To that end, we have created an Options struct for the
SkDecodingImageGenerator which lets the client of the generator set
sample size, dithering, and bitmap config.

We have made the SkDecodingImageGenerator constructor private
and replaced the SkDecodingImageGenerator::Install functions
with a SkDecodingImageGenerator::Create functions (one for
SkData and one for SkStream) which now take a
SkDecodingImageGenerator::Options struct.

Also added a ImageDecoderOptions test which loops through a list
of sets of options and tries them on a set of 5 small encoded
images.

Also updated several users of SkDecodingImageGenerator::Install to
follow new call signature - gm/factory.cpp, LazyDecodeBitmap.cpp,
and PictureTest.cpp, CachedDecodingPixelRefTest.cpp.

We also added a new ImprovedBitmapFactory Test which simulates the
exact function that Android will need to modify to use this,
installPixelRef() in BitmapFactory.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12744 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-18 17:40:25 +00:00
robertphillips@google.com
45e01c36da Suppress questionable gpu errors
https://codereview.chromium.org/118283002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12743 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-18 17:28:55 +00:00
robertphillips@google.com
94d8f1ed61 Update bench pictures to time image decode & upload costs
https://codereview.chromium.org/117583002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12742 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-18 17:25:33 +00:00
skia.committer@gmail.com
3b85deb9c3 Sanitizing source files in Housekeeper-Nightly
git-svn-id: http://skia.googlecode.com/svn/trunk@12734 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-18 07:01:56 +00:00
reed@google.com
e15b2f5296 move SkScalarLog2 into its only client, in a move to reduce our public API surface area
BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12731 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-18 04:59:26 +00:00
reed@google.com
e1ca705cac deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients
BUG=
R=robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12719 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-17 19:22:07 +00:00
commit-bot@chromium.org
bf8ba65cca Add Win8 bots to rebaseline.py, add baselines for Win8
NOTRY=True
BUG=
R=epoger@google.com

Author: borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12714 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-17 17:29:33 +00:00
robertphillips@google.com
090601c917 Make bench_pictures' timing more GPU friendly
https://codereview.chromium.org/113873005/



git-svn-id: http://skia.googlecode.com/svn/trunk@12705 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-17 13:40:20 +00:00
commit-bot@chromium.org
a3f882c475 render_pictures: add --writeJsonSummaryPath
Known issues:
- JSON summary will be empty if --writePath not specified also
- testNames within summary do not include the config (8888, gpu, etc.)

BUG=
R=rmistry@google.com

Author: epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12680 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-13 20:52:36 +00:00
commit-bot@chromium.org
2cce3df19a The default size of mask canvas is not appropriate. its height is too small: 150, while its width is 300. As a result, for non-alphaMask canvas who doesn't update the mask canvas size, this tool just magnify the upper part of 'Expected Image' as well as 'Actual Image' when user open view.html to show skpdiff_output.json in browser for many cases. The other part can't be shown because it is out of the mask canvas. This CL update non-alphaMask canvas size according to baseline canvas for each case, then the tool can magnify anywhere you want for the whole image when you click and move mouse on the mask canvas.
R=djsollen@google.com

Author: yunchao.he@intel.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12638 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-12 14:55:45 +00:00
halcanary@google.com
edd370f949 Sk_API for SkImageGenerator and SkInstallDiscardablePixelRef
Added SK_API to SkImageGenerator (already in include/).

Moved SkDiscardablePixelRef::Install to SkInstallDiscardablePixelRef,
added SK_API to that function, and moved declaration to
SkImageGenerator.h

This keeps the SkDiscardablePixelRef internal to Skia, but exposes a
method to install it into a bitmap.

Modifed tests that rely on this functio to use new version.

BUG=
R=mtklein@google.com, reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12612 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 21:11:12 +00:00
halcanary@google.com
bc55eec80e Implement SkAshmemDiscardableMemory
-   Implement ashmem-backed SkDiscardableMemory subclass:
    This class in only accesible via the SkDiscardableMemory::Create()
    function, which replaces the mock implementation in
    SkDiscardableMemory_none.cpp

-   Added SkDiscardableMemory_ashmem.cpp to the Android port of Skia
    Removed SkDiscardableMemory_none.cpp from the Android port.

-   Added DiscardableMemoryTest.
    Still needs work.

-   SkDiscardablePixelRef Bugfix:
    onLockPixels() now calls SkDELETE on the SkDiscardableMemory pointer
    when it fails to unlock.

-   Improved documentation inside ashmem.h

BUG=
R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12608 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-10 18:33:07 +00:00
robertphillips@google.com
aad7e0b607 Add more valgrind suppressions
https://codereview.chromium.org/102443003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12561 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-09 13:55:33 +00:00
robertphillips@google.com
ffb68f6753 Generalize valgrind suppressions & a 2 more
https://codereview.chromium.org/107443004/



git-svn-id: http://skia.googlecode.com/svn/trunk@12531 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-06 17:03:39 +00:00
halcanary@google.com
2c7c7ee47d Big Cleanup: SkBitmapFactory, SkLazyPixelRef, SkImageCache
Removed SkBitmapFactory since no clients were using it.  New cache
selection mechanism can simply pass a SkDiscardableMemory::Factory
into the SkDiscardablePixelRef if non-default SkDiscardableMemory
should be used.  Removed BitmapFactoryTest.

SkDiscardableMemory::Factory interface.  Android will need this
functionality in the future inside their BitmapFactory.

Removed SkLazyPixelRef, since it's functionality is now subsumed into
SkDiscardablePixelRef.  Removed LazyPixelRef test.

Modified SkDiscardablePixelRef to optionally allow it to use a
SkDiscardableMemory::Factory.  This tiny change makes it a replacement
for SkLazyPixelRef.  This functioanlity is also necessary for moving
Android over to SkDiscardablePixelRef from SkImageRef in a later CL.
Added a test for this.

SkDecodingImageGenerator::Install can optionally pass a factory in to
SkDiscardablePixelRef.

Removed SkImageCache, SkLruImageCache, and SkPurgeableImageCache.
This functionality can be handled much more cleanly by
SkDiscardableMemory.

New SkDiscardableMemoryPool class to replace SkLruImageCache.  In a
later CL, we will replace SkImageRef_GlobalPool (used by android) as
well.  This is a concrete implementation of
SkDiscardableMemory::Factory.  Added a test for this.

modified gm/factory.cpp to remove dependnce on SkBitmapFactory +
SkLruImageCache.  Now uses SkDecodingImageGenerator +
SkDiscardablePixelRef + SkDiscardableMemoryPool.

SkImageDecoder::Target replaces SkBitmapFactory::Target.  The
DecodeMemoryToTarget function may disappear in the future.

Moved SkLazyCachingPixelRef::DecodeProc replaces
SkBitmapFactory::DecodeProc.  This is a short term change, since
another CL changes SkLazyCachingPixelRef to use SkImageGenerator
instead of DecodeProc.

Modified DrawBitmapRectTest to use SkDiscardablePixelRef instead of
SkLazyPixelRef.

tools/LazyDecodeBitmap.cpp now uses SkDecodingImageGenerator +
SkDiscardablePixelRef instead of a SkBitmapFactory.

bench_pictures uses the Global SkDiscardableMemoryPool instead of a
global gLruImageCache.

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

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12515 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-05 18:31:42 +00:00
robertphillips@google.com
28ea0b258e Update valgrind suppressions for new driver
https://codereview.chromium.org/102473003/



git-svn-id: http://skia.googlecode.com/svn/trunk@12510 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-05 16:23:37 +00:00
scroggo@google.com
f78cdb4ba9 Force linking for skhello.
Otherwise encoders are stripped and the program produces nothing.

git-svn-id: http://skia.googlecode.com/svn/trunk@12487 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-04 18:34:58 +00:00
borenet@google.com
4b897fa1f6 Add some debugging to buildbot_globals, sort the trybot list
R=epoger@google.com, rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12437 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-02 20:27:16 +00:00
commit-bot@chromium.org
6fcb0cdaa2 Revert of https://codereview.chromium.org/85343004/
Reason for revert: Reverting the temporary CL

TBR=
NOTREECHECKS=true
NOTRY=true

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12376 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-25 14:03:52 +00:00
commit-bot@chromium.org
9df6215aaf Temporary changes to test one-click revert.
(SkipBuildbotRuns)

BUG=
NOTRY=true
TBR=borenet@google.com

Author: rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12375 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-25 14:02:01 +00:00
commit-bot@chromium.org
32f40ee8b0 Remove mutex around image decoding in skpdiff.
I removed the mutex to investigate BUG=skia:1803, and I get no
crashes. The crashes may have been related to other multithreading
issues.

Removing the mutex will allow skpdiff to run faster.

R=djsollen@google.com

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12339 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-21 15:22:18 +00:00
epoger@google.com
591469b1e9 rebaseline_server: clean up thread locks
followup to https://codereview.chromium.org/66803004/ ('rebaseline_server: improve thread locks to allow read access during updates')
(SkipBuildbotRuns)

R=jcgregorio@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12323 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-20 19:58:06 +00:00
commit-bot@chromium.org
c32ce49df8 Remove unused kMaxPOI.
BUG=
R=djsollen@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12307 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-18 21:01:29 +00:00
commit-bot@chromium.org
da4d7cfa58 Remove unnecessary includes.
R=djsollen@google.com

Author: scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12304 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-18 17:27:16 +00:00
commit-bot@chromium.org
a1a097ee81 increase coverage of SkPath.cpp, remove unused code
Using Mike Klein's excellent coverage tool, increase the
unit testing of SkPath.cpp from 70% to 95%.

Along the way, determined that these functions were not
maintained or used:

SkPath::pathTo
SkPath::contains

as well as a large block of SkPath::cheapGetDirection().

Changed SkPath::validate() to permit infinities in
the path data points.

Fixed errors in preserving direction.
Fixed error setting direction when convexity is unknown.

Added missing conic to moveTo only detector.

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

Author: caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12291 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-14 16:53:22 +00:00
robertphillips@google.com
cb3b615af7 Address some more valgrind issues
R=borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12286 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-14 14:47:56 +00:00
djsollen@google.com
efc51b79a2 fix multithread related crashes in skpdiff
BUG=skia:1798
R=mtklein@google.com, scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12252 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-12 18:29:17 +00:00
scroggo@google.com
086364b8e6 Changes to make SkPDiff more robost.
bitmap_to_cielab now returns a boolean. Instead of asserting that the
config is 8888, copy to 8888 (and return false on failure). This allows
skpdiff to work on Index8 bitmaps (without changing the code that does
the real work). If it returns false, do not attempt to create a pmetric.

In pmetric, exit early if maxLevels is <= 2, since this would crash later
in the function (creation of an ImageL3D if maxLevels is 0, and then the
creation of an array of a negative number of entries). maxLevels is small
if the width or height of the image is small (i.e. a bitmap with width 1
has maxLevels of 0).

R=djsollen@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12239 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-12 14:41:20 +00:00
robertphillips@google.com
d6bea606c6 Silence another valgrind leak
https://codereview.chromium.org/68523006/



git-svn-id: http://skia.googlecode.com/svn/trunk@12236 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-12 14:05:15 +00:00
robertphillips@google.com
6acc8f473d Add another FontConfig suppression to valgrind suppressions
https://codereview.chromium.org/69403002/



git-svn-id: http://skia.googlecode.com/svn/trunk@12226 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-11 20:04:28 +00:00
borenet@google.com
43a385240f Specify --patchlevel 0 to trychange.py
For some reason, trychange.py creates patches with level 0, even from a git
repo. We were assuming that the patch level was 1 from a git repo, so patches
were failing to apply.

BUG=skia:1669
R=rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12212 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-11 13:43:22 +00:00
djsollen@google.com
2761b30dfe fix broken build on mac due to compiler warning
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12175 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-07 19:40:35 +00:00
djsollen@google.com
513a7bffd3 update skpdiff visualization (image magnification with alpha mask)
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12174 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-07 19:24:06 +00:00
reed@google.com
2bd8b81005 move SkImage::ColorType into SkColorType
objective -- move clients over to SkImage

tasks
- use SkImageInfo instead of SkBitmap::Config
- add support for colortables to SkImage
- add drawImage to SkCanvas
- return SkImage from readPixels

This CL works towards the first task

R=robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12077 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-01 13:46:54 +00:00
bsalomon@google.com
bc0dbdc169 svndiff for the windows
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11995 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-29 13:55:29 +00:00
bensong@google.com
4a28f598ec Changes bench_graph_svg.py test to check_bench_regressions.py test; deletes deprecated chunks in syn_bucket_subdir.
Review URL: https://codereview.chromium.org/27377002

git-svn-id: http://skia.googlecode.com/svn/trunk@11952 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-24 18:08:45 +00:00
scroggo@google.com
5187c4313c More work to integrate skimage with rebaseline tools.
tools/skimage_main.cpp:
Add the ability to write the results to checksum based filenames,
much like GM uses. This will allow using the skpdiff server to
rebaseline images.
Write the keys in the JSON file as <original image>_<pref config>.png,
so it matches gm_json.IMAGE_FILENAME_PATTERN. Also replace '_' with
'-' in the original file name, to avoid confusing the pattern matcher.
The '_' to '-' replacement also happens on the output filename.
Read the keys in a similar manner.
In make_outname, no longer remove a suffix. This fixes a bug where
subset decoding writes multiple subsets to the same file.

tools/rebaseline.py:
Since the filenames written to json files now match
gm_json.IMAGE_FILENAME_PATTERN, enable the option to match based
on configs/tests when rebaselining skimage.

test json files:
Update to match the new format of output.

gm/gm_expectations:
Add a constructor that takes a BitmapAndDigest as input.

tools/tests/skimage_self_test.py:
Test that reading the expectations file just created by skimage with
the same file actually compares to the original file (rather than just
succeeding because expectations were missing).

Change the expectations files to match the new format.

Will require a buildbot change to use the new flag: https://codereview.chromium.org/27389002/

BUG=1466
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11902 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-22 00:42:46 +00:00
djsollen@google.com
cbbf1ca304 add initial support ofr multi-threaded execution
Review URL: https://codereview.chromium.org/27541003

git-svn-id: http://skia.googlecode.com/svn/trunk@11823 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 18:36:49 +00:00
bsalomon@google.com
46484ec5bf Add --add-ignored option to rebaseline.py
R=senorblanco@chromium.org, epoger@google.com
BUG=skia:1600

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11809 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 15:10:45 +00:00
djsollen@google.com
1e391b5870 Update skpdiff to include a name with each file.
R=caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11808 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-16 15:00:11 +00:00
scroggo@google.com
36c5bdb097 Truly ignore failures in skimage.
If the expectation is set to ignore failures, do not return a
negative 1 (indicating a failure) when a successful decode
does not match the expectation.

If the file could not be decoded at all, report this to the
user depending on the input expectations file:

No expectations:
Report failure. The user wanted to know if the file could be
decoded.

Expectations expected a valid result:
Report failure. The decode should have matched the result.

Empty expectations:
Print a message that the expectation was missing, but still
return success from skimage, since this is a newly added file
(i.e. it has no expectation yet).

Ignore failure:
Return success from skimage, since it is a known failure.

Update the self tests to ensure these behaviors.

R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11790 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 20:29:37 +00:00
robertphillips@google.com
8b169311b5 Second wave of Win64 warning cleanup
https://codereview.chromium.org/27343002/



git-svn-id: http://skia.googlecode.com/svn/trunk@11778 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 17:47:36 +00:00
bensong@google.com
e209a70d1e Suppresses failing test due to change of bench_graph_svg. Will fix later.
Review URL: https://codereview.chromium.org/26894004

git-svn-id: http://skia.googlecode.com/svn/trunk@11766 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-15 00:35:18 +00:00
robertphillips@google.com
adacc7067a Start cleaning up 64bit Win warnings
https://codereview.chromium.org/27192003/



git-svn-id: http://skia.googlecode.com/svn/trunk@11764 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 21:53:24 +00:00
halcanary@google.com
04b57f87ab Runtime configuration setting for suppressing JPEG decoder errors.
Add new runtime config variable, images.jpeg.suppressDecoderErrors
which defaults to false in Debug and true otherwise.  When Jpeg errors
are suppressed and an error happens, SkJPEGImageDecoder::onDecode()
will return silently false (Consequently, so will SkImageDecoder's
DecodeFile() and DecodeMemory() functions).

Also, the test_image_decoder program now respects runtime
configuration settings.

BUG=skia:1680
R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11763 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 20:08:48 +00:00
commit-bot@chromium.org
5e00989a28 Add SkPDFDeviceFlatenner which extends SkPDFDevice to add support to flatten the path and the text when we have perspective.
prepare to deprecate SkPDFDevice constructor, and route gm and render_pdfs to use SkDocument::Create pdf interface instead. - controlled by a flag
add comments where we are supposed to flatten other features (paint, shaders, ... )

R=reed@google.com, bungeman@google.com, scroggo@google.com, vandebo@chromium.org, bsalomon@google.com

Author: edisonn@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11751 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-14 13:42:12 +00:00
bungeman@google.com
16b2dd05f0 Add stdio include to skdiff_image.
git-svn-id: http://skia.googlecode.com/svn/trunk@11740 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 19:19:10 +00:00
robertphillips@google.com
8ec502b416 Add valgrind suppressions for driver bugs
https://codereview.chromium.org/27019005/



git-svn-id: http://skia.googlecode.com/svn/trunk@11736 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-11 18:28:18 +00:00
scroggo@google.com
d23e683c51 Add ability to rebaseline skimage to rebaseline.py
Skip pattern matching for skimage, since the skimage results do not
match the pattern.

Automatically fill in expectations_root and actuals_base_url when
--skimage is specified.

Requires a change to move the expectations files to the right place.
Depends on https://codereview.chromium.org/26734006

(SkipBuildBotRuns)

BUG=skia:1466
R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11717 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 21:09:24 +00:00
robertphillips@google.com
1b440d1574 Add leak to valgrind.supp
https://codereview.chromium.org/26869002/



git-svn-id: http://skia.googlecode.com/svn/trunk@11700 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 17:04:14 +00:00
bungeman@google.com
cc5fd0a95a Use the modified path, not the original path for the platform prefix.
Fixes regression introduced in r11642.


git-svn-id: http://skia.googlecode.com/svn/trunk@11693 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-10 14:16:23 +00:00
commit-bot@chromium.org
dac4a1d518 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
2013-10-08 19:40:18 +00:00
robertphillips@google.com
6187abe776 Update valgrind suppressions
https://codereview.chromium.org/26465007/



git-svn-id: http://skia.googlecode.com/svn/trunk@11650 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-08 15:37:19 +00:00
mtklein@google.com
9f3b0e462e 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
2013-10-08 15:16:36 +00:00
bungeman@google.com
575e82ad5d 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
2013-10-07 20:32:18 +00:00
bungeman@google.com
3c8d9cb8a7 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
2013-10-07 19:57:35 +00:00
scroggo@google.com
de09af3fd8 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
2013-10-07 16:56:01 +00:00
djsollen@google.com
64f031c278 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
2013-10-07 14:02:58 +00:00
djsollen@google.com
d7df6b6452 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
2013-10-07 13:50:45 +00:00
halcanary@google.com
d8854adf1c 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
2013-10-04 13:37:24 +00:00
halcanary@google.com
fed3037217 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
2013-10-04 12:46:45 +00:00
commit-bot@chromium.org
608ea6508a 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
2013-10-03 19:29:21 +00:00
commit-bot@chromium.org
546f70c823 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
2013-10-03 17:13:38 +00:00
commit-bot@chromium.org
03e3e89641 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
2013-10-02 18:19:17 +00:00
scroggo@google.com
8d2392487c Add an option on SkImageDecoder to skip writing 0s.
Only implemented for PNG.

Add a getter and setter, and sets the default to false in the
constructor. Also copies the setting in copyFieldsToOther.

Fix an indpendent bug where fDitherImage was not being copied in
copyFieldsToOther.

In SkScaledBitmapSampler::begin, consolidate the settings passed in
by passing a const reference to the decoder. The decoder can be
referenced for its settings of dither, unpremultiplied, and now
skipping writing zeroes. Update callers to use the new API. In png
decoder, rather than passing around a pointer to an initial
read of getDitherImage, and potentially changing it, look at the
field on the decoder itself, and modify it directly. This is a
change in behavior - now if that same decoder is used to decode
a different image, the dither setting has changed. I think this is
okay because A) the typical use case is to use a new decoder for
each decode, B) we do not make any promises that a decode does not
change the decoder and C) it makes the code in SkScaledBitmapSampler
much cleaner.

In SkScaledBitmapScampler, add new row procs for skipping zeroes. Now
that choosing the row proc has five dimensions (src config, dst config,
dither, skip writing zeroes, unpremultiplied), use a new method: each
src/dst combination has a function for choosing the right proc depending
on the decoder.

SkScaledBitmapScampler::RowProc is now public for convenience.

Remove Sample_Gray_D8888_Unpremul, which is effectively no different
from Sample_Gray_D8888.

In cases where unpremultiplied was trivial, such as 565 and when
sampling from gray, decoding may now succeed.

Add a benchmark (currently disabled) for comparing the speed of skipping
writing zeroes versus not skipping. For this particular image, which is
mostly transparent pixels, normal decoding took about 3.6 milliseconds,
while skipping zeroes in the decode took only about 2.5 milliseconds
(this is on a Nexus 4). Presumably it would be slower on an image
with a small amount of transparency, but there will be no slowdown
for an image which reports that it has no transparency.

In SkImageRef_ashmem, always skip writing zeroes, since ashmem
memory is guaranteed to be initialized to 0.

Add a flag to skip writing zeroes in skimage.

Add a regression test for choosing the rowproc to ensure I did not
change any behavior accidentally.

BUG=skia:1661
R=reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11558 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-10-01 17:27:15 +00:00
epoger@google.com
f9d134da93 Create HTTP-based GM results viewer.
For now, it only allows VIEWING results... next, it will allow the user to
rebaseline GM results via the web interface.

R=borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11500 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-27 15:02:44 +00:00
reed@google.com
d28ba8010c promote SkImage::AlphaType to SkAlphaType
BUG=
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11421 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-20 19:33:52 +00:00
epoger@google.com
defc487aa9 gm: add --ignoreTests flag
BUG=skia:1600
R=scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11374 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-19 06:18:27 +00:00
senorblanco@chromium.org
bfc0d6bd5f Add an option to rebaseline.py to mark tests as ignore-failure.
R=epoger@google.com, epoger

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11358 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 19:14:43 +00:00
epoger@google.com
6d28e8d6ad rebaseline.py: make builder names copy-pastable from --help output
BUG=skia:1653
(SkipBuildbotRuns)

R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11347 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-18 14:58:47 +00:00
borenet@google.com
1cf02a8adf Enable msaa4 on Nexus 4 in bench_pictures
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11305 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 20:39:23 +00:00
borenet@google.com
b6e915da2e Add --from-trybot flag in rebaseline.py to enable rebaselining from trybots
(SkipBuildbotRuns)

R=epoger@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11294 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-16 18:13:13 +00:00
mtklein@google.com
1fb04e2540 add a way to get code coverage
BUG=
R=borenet@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11261 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-13 19:32:43 +00:00
epoger@google.com
bfe9167c66 Add README file so git will create empty dir
BUG=skia:1613
(SkipBuildbotRuns)

R=rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11203 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-11 17:31:49 +00:00
borenet@google.com
7aa8044da5 Ignore the .git directory in sanitize_source_files, remove .git directory...
R=rmistry@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11193 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-11 13:01:27 +00:00
mtklein@google.com
c289743864 Major bench refactoring.
- Use FLAGS_.
   - Remove outer repeat loop.
   - Tune inner loop automatically.

BUG=skia:1590
R=epoger@google.com, scroggo@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11187 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-10 19:23:38 +00:00
borenet@google.com
a5ed2ae409 Fix for r11156
Unreviewed.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11157 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-09-09 15:24:40 +00:00