Mike Klein
744fb7313f
Enable basic drawing with SkRecord-based pictures.
...
I've tagged all the functions in SkPicture.cpp is // fRecord TODO or // fRecord
OK, depending on whether or not they're totally broken when used from an
SkRecord-based picture. Obviously next steps are to eliminate all the TODOs,
then clean up the notes.
I converted SkPicture over to smart pointers too. It's particularly helpful
that the smart pointers initialize to NULL by default.
For now I've got all the SkRecord-based code jammed in at the bottom of the file. I figure it'll help me keep things straight for a bit, then we can rearrange later.
BUG=skia:
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/333823007
2014-06-23 15:13:26 -04:00
caryclark
5fb6bd4b7e
use platform-independent font for gm
...
Create a custom typeface and scaler to render simple paths the
same on all platforms.
GM tests are modified to explicitly select the custom typeface.
R=reed@google.com , mtklein@google.com , bungeman@google.com
TBR=reed
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/348323003
2014-06-23 11:25:00 -07:00
rmistry
05ead8afe5
Revert of Support using OpenGL ES context on desktop ( https://codereview.chromium.org/319043005/ )
...
Reason for revert:
Caused segmentation fault on many builders. Please see reverted CL's msg #21 for details.
Original issue's description:
> Support using OpenGL ES context on desktop
>
> Support using OpenGL ES context on desktop for unix and Android platforms. This
> is mainly useful in development.
>
> Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The
> possible parameters for the flag are "gl" and "gles".
>
> Committed: https://skia.googlesource.com/skia/+/74fc727dc88ee24d89f88cb1709f963e9073aeb3
R=bsalomon@google.com , mtklein@google.com , robertphillips@google.com , kkinnunen@nvidia.com
TBR=bsalomon@google.com , kkinnunen@nvidia.com
NOTREECHECKS=true
NOTRY=true
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/351583002
2014-06-23 06:13:46 -07:00
kkinnunen
74fc727dc8
Support using OpenGL ES context on desktop
...
Support using OpenGL ES context on desktop for unix and Android platforms. This
is mainly useful in development.
Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The
possible parameters for the flag are "gl" and "gles".
R=bsalomon@google.com , mtklein@google.com , robertphillips@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/319043005
2014-06-22 22:56:54 -07:00
tfarina
2010891425
Add GYP target for sk_tool_utils.* component.
...
This declares a static library target in gyp/sk_tool_utils.gyp, so other
targets can depend directly on it instead of including the source file
in their source lists.
BUG=None
TEST=make all
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/348623006
2014-06-21 10:54:17 -07:00
mtklein
9ac68ee259
Move BenchTimer to tools as Timer
...
This breaks a bunch of circular dependencies between tools and gm and bench.
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/4ed75287aed6371c6e4a41ffcc78c8a49c9810ed
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Debug-iOS-Trybot,Test-Ubuntu12-ShuttleA-GTX660-x86-Debug-Trybot
R=tfarina@chromium.org , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/344213003
2014-06-20 11:29:21 -07:00
mtklein
9e64b78ff6
Revert of Move BenchTimer to tools as Timer ( https://codereview.chromium.org/344213003/ )
...
Reason for revert:
GpuTimer broken
Original issue's description:
> Move BenchTimer to tools as Timer
>
> This breaks a bunch of circular dependencies between tools and gm and bench.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/4ed75287aed6371c6e4a41ffcc78c8a49c9810ed
R=tfarina@chromium.org , mtklein@chromium.org
TBR=mtklein@chromium.org , tfarina@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/346753003
2014-06-20 10:43:07 -07:00
mtklein
4ed75287ae
Move BenchTimer to tools as Timer
...
This breaks a bunch of circular dependencies between tools and gm and bench.
BUG=skia:
R=tfarina@chromium.org , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/344213003
2014-06-20 10:31:49 -07:00
halcanary
2983ff5da3
CrashHandler calls strsignal on linux
...
R=mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/349623004
2014-06-20 08:26:23 -07:00
mtklein
77a83962ac
undefok -> bool
...
BUG=skia:
not waiting for (dead?) win builder
NOTRY=True
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/348063002
2014-06-20 08:24:56 -07:00
tfarina
f168b86d7f
Remove Sk prefix from some bench classes.
...
This idea came while commenting on
https://codereview.chromium.org/343583005/
Since SkBenchmark, SkBenchLogger and SkGMBench are not part of the Skia library,
they should not have the Sk prefix.
BUG=None
TEST=make all
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/347823004
2014-06-19 12:32:29 -07:00
mtklein
3f73e8c8d5
CrashHandler for Windows.
...
Plus, print out assertion failures on Windows,
and some little tweaks to CrashHandler on other platforms for consistency.
BUG=skia:
R=bungeman@google.com , mtklein@google.com , reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/340523007
2014-06-19 07:41:59 -07:00
tfarina
bcbc1788b4
Refactor how we handle resources path in Tests.
...
This idea emerged while doing https://codereview.chromium.org/321723002/
(commit 880914c35c
).
BUG=None
TEST=make tests && out/Debug/tests
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/346453002
2014-06-18 14:32:49 -07:00
mtklein
4ea2661cbd
No CrashHandler for NACL bots.
...
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Ubuntu13.10-GCC4.8-NaCl-Debug-Trybot
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/344603005
2014-06-18 12:29:01 -07:00
mtklein
30e6e2af14
Add basic stacktrace handler using libunwind.
...
This means we will all have to apt-get install libunwind8-dev on Linux. Mac comes with everything we need already.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/343583005
2014-06-18 11:44:18 -07:00
scroggo
f01a6c3663
In Android framework, make tools depend on jsoncpp
...
Always build the tools with JSON, but either build our own
or use the system's.
Rename skia_build_json_writer to skia_use_system_jsoncpp,
since we now always build with JSON.
Remove SK_BUILD_JSON_WRITER, which was only there so
we could build without JSON it in the framework.
BUG=skia:2448
R=djsollen@google.com , reed@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/303913002
2014-06-18 10:31:40 -07:00
egdaniel
12c2198535
Remove dashing from gpu veto
...
With new veto our new veto test results look like the following:
TP: true positive (picked to use gpu and gpu was faster)
I: inderminate, the raster time is withing 5% of gpu time
TP FP TN FN I
old 21 9 15 12 3
new 29 12 11 6 3
There are three skps that tend to move from TN -> FP, however
the absolute difference in their run times are not huge between
them. The largest being desk_booking which is about 7.1 raster
and 8.8 gpu. The other two skps are desk_yahooanswers and
desk_linkedin
BUG=skia:
R=bsalomon@google.com , robertphillips@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/334053005
2014-06-18 07:34:39 -07:00
caryclark
e4097e3a0b
Fix last pathops skp bug
...
This fixes the last bug discovered by iterating through the 800K
skp corpus representing the top 1M websites. For every clip on the
stack, the paths are replaced with the pathop intersection. The
resulting draw is compared with the original draw for pixel errors.
At least two prominent bugs remain. In one, the winding value is
confused by a cubic with an inflection. In the other, a quad/cubic
pair, nearly coincident, fails to find an intersection.
These minor changes include ignoring very tiny self-intersections
of cubics, and processing degenerate edges that don't connect to
anything else.
R=reed@android.com
TBR=reed
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/340103002
2014-06-18 07:24:19 -07:00
bensong
2668617ea2
Removes Record configs from buildbot bench_pictures runs.
...
BUG=skia:
NOTRY=true
R=borenet@google.com , mtklein@google.com
Author: bensong@google.com
Review URL: https://codereview.chromium.org/338413002
2014-06-18 05:59:55 -07:00
mtklein
887f3979f0
Add EXPERIMENTAL_beginRecording() for SkRecord-based recording.
...
The interesting stuff is in SkPictureRecorder.{h,cpp}. The rest is mostly moving SkRecord from its own directories into core to avoid circular dependencies in GYP.
After plumbing SkRecord all the way through in Picture, I'll delete its old entry point include/record/SkRecording.h. For now it and record.gypi need to stay where they are to keep Chrome building.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/331573004
2014-06-17 12:08:16 -07:00
reed
c3b3266b7d
hide SkBitmap::Config entirely (behind a flag)
...
patch from issue 339463002
TBR=
I think the NoGPU failure is unrelated, so ignoring
NOTRY=True
Author: reed@google.com
Review URL: https://codereview.chromium.org/340533002
2014-06-17 08:38:31 -07:00
caryclark
dac1d17027
Enabling the canvas bit to turn the clip stack into a flat replace exposed around 100 failures when testing the 800K skp set generated from the top 1M web sites.
...
This fixes all but one of those failures.
Major changes include:
- Replace angle indices with angle pointers. This was motivated by the need to add angles later but not renumber existing angles.
- Aggressive segment chase. When the winding is known on a segment, more aggressively passing that winding to adjacent segments allows fragmented data sets to succeed.
- Line segments with ends nearly the same are treated as coincident first.
- Transfer partial coincidence by observing that if segment A is partially coincident to B and C then B and C may be partially coincident.
TBR=reed
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/272153002
2014-06-17 05:15:38 -07:00
mtklein
90c471e73f
Refine bench_record and bench_playback:
...
- use high-precision wall timer only
- warm caches once before measuring
- measure independent samples, calculating statistics
- add --verbose to control how much data we output
Also removed some unloved features from bench_record.
BUG=skia:
R=jcgregorio@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/338203002
2014-06-16 14:04:34 -07:00
tfarina
851eabe564
Minor cleanups in picture_utils header file.
...
1) Remove unused include.
2) Remove unused forward declarations.
BUG=None
TEST=make tests
R=epoger@google.com
TBR=epoger@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/339493004
2014-06-15 20:10:44 -07:00
reed
0689d7b12e
stop using SkBitmap::Config
...
R=scroggo@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/338493005
2014-06-14 05:30:20 -07:00
tfarina
055cf91416
Delete unused path_utils.* component.
...
filter tool includes it but isn't using, and nobody else seems to
be using it either. So just remove it now.
BUG=None
TEST=make filter
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/324273002
2014-06-14 04:50:04 -07:00
reed
bfefc7c95f
hide Config in SkImageDecoder -- use SkColorType instead
...
patch from issue 334613003
TBR=scroggo
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/334793002
2014-06-12 17:40:00 -07:00
tfarina
da4ed3289e
Cleanup: Delete sk_tools::make_filepath() in favor of SkOSPath::SkPathJoin().
...
BUG=None
TEST=make tools tests && out/Debug/tests
R=epoger@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/327403002
2014-06-12 08:50:56 -07:00
mtklein
3b94b78b77
Suppress libpoppler and its dependent liblcms in TSAN.
...
This will let us eventually turn PDF back on in DM.
BUG=skia:
R=halcanary@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/330433003
2014-06-11 17:22:14 -07:00
tfarina
1c99ea8ed8
Cleanup: Delete sk_tools::get_basename() in favor of SkOSPath::SkBasename().
...
BUG=None
TEST=make tests && out/Debug/tests
R=epoger@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/321693002
2014-06-11 08:58:50 -07:00
mtklein
812202724d
Silence TSAN warnings about is_lcd_supported for now.
...
BUG=skia:1792
NOTRY=true
R=bungeman@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/328663006
2014-06-10 12:52:09 -07:00
reed
6c22573edb
hide SkBitmap::setConfig
...
patch from issue 325733002
TBR=scroggo
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/322963002
2014-06-09 19:52:07 -07:00
mtklein
00dfb9ea7b
bench_record: No need for --flags if there are no RecordingFlags anymore.
...
BUG=skia:
R=robertphillips@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/327533002
2014-06-09 08:04:15 -07:00
epoger
89e8842821
remove GM result-grooming tools that use skia-autogen
...
BUG=skia:553
R=borenet@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/320443002
2014-06-09 06:49:13 -07:00
robertphillips
9f1c241e0d
Remove SkPicture::kUsePathBoundsForClip_RecordingFlag
...
The real question is whether we ever want to record a picture without using the path bounds for a conservative (but faster) clip answer?
R=reed@google.com , mtklein@google.com , djsollen@google.com , scroggo@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/316143003
2014-06-09 06:25:34 -07:00
mtklein
a8928b745a
Add SkBarriers_tsan.h.
...
Slight counterproposal to crrev.com/310663002.
BUG=skia:
No API changes.
R=bungeman@google.com , mtklein@google.com , reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/306373002
2014-06-06 06:21:49 -07:00
epoger
b144271179
reland "rebaseline_server: download actual-results.json files from GCS instead of SVN"
...
relands https://codereview.chromium.org/310093003 with modifications.
BUG=skia:2641
R=jcgregorio@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/313343003
2014-06-05 10:30:37 -07:00
borenet
2e81e51d1e
Fix submit_try
...
BUG=skia:2643
R=epoger@google.com , tfarina@chromium.org
Author: borenet@google.com
Review URL: https://codereview.chromium.org/317823003
2014-06-05 07:32:15 -07:00
epoger
77f68b623e
Revert "rebaseline_server: download actual-results.json files from GCS instead of SVN"
...
This reverts commit f4666045f3
.
BUG=skia:2641
NOTREECHECKS=True
NOTRY=True
R=jcgregorio@google.com
TBR=jcgregorio
Author: epoger@google.com
Review URL: https://codereview.chromium.org/317783004
2014-06-04 15:09:18 -07:00
epoger
f4666045f3
rebaseline_server: download actual-results.json files from GCS instead of SVN
...
BUG=skia:553
R=borenet@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/310093003
2014-06-04 10:02:58 -07:00
robertphillips
9b14f26d0f
Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)
...
R=reed@google.com , bsalomon@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/313613004
2014-06-04 05:40:44 -07:00
kelvinly
06fdc6937d
Added grid data to logging output
...
BUG=skia:
R=bensong@google.com , jcgregorio@google.com
Author: kelvinly@google.com
Review URL: https://codereview.chromium.org/318433003
2014-06-03 15:43:34 -07:00
mtklein
59ef7704f1
Revert of Try TSAN blacklist for SkGLContextHelper::init. ( https://codereview.chromium.org/309823004/ )
...
Reason for revert:
the bot's clang doesn't know -fsanitize-blacklist
Original issue's description:
> Try TSAN blacklist for SkGLContextHelper::init.
>
> Submitting to test this; this particular problem only happens on the bot.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/ab2ec19b975a898d4ee2278ddad7d4268f134478
R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/314543002
2014-06-02 19:34:20 -07:00
mtklein
ab2ec19b97
Try TSAN blacklist for SkGLContextHelper::init.
...
Submitting to test this; this particular problem only happens on the bot.
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/309823004
2014-06-02 19:11:06 -07:00
mtklein
a78ef795b0
Tweak TSAN suppressions.
...
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/312613002
2014-06-02 16:40:06 -07:00
epoger
8ff38ccb40
use most innocuous characters possible within skimage output filenames
...
BUG=skia:2634
R=scroggo@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/302323003
2014-06-02 14:26:18 -07:00
epoger
fc435a020a
Revert of stop using brackets within skimage output filenames ( https://codereview.chromium.org/303263012/ )
...
Reason for revert:
Broke http://108.170.220.120:10117/builders/Test-ChromeOS-Link-HD4000-x86_64-Release/builds/2806/steps/UploadSKImageResults/logs/stdio :
[13:38:43.401942] /bin/sh: 1: Syntax error: "(" unexpected
[13:38:43.902632] Command /home/chrome-bot/buildbot/skiabot-shuttle-ubuntu12-003/buildbot/third_party/chromium_buildbot/scripts/slave/../../third_party/gsutil/gsutil cp -a private /home/chrome-bot/buildbot/skiabot-shuttle-ubuntu12-003/buildbot/third_party/chromium_buildbot/slave/Test-ChromeOS-Link-HD4000-x86_64-Release/build/skia/out/Release/skimage_out/images/bitmap-64bitMD5/webp-test-webp-(123,263,587,394)/16263897892077508819.png gs://chromium-skia-gm/skimage/output/images/bitmap-64bitMD5/webp-test-webp-(123,263,587,394)/16263897892077508819.png failed with retcode 2, try 1.
Original issue's description:
> stop using brackets within skimage output filenames
>
> BUG=skia:2634
>
> Committed: https://skia.googlesource.com/skia/+/f07892413cd2359549dc187f1d10bc48d7d263ba
R=scroggo@google.com
TBR=scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2634
Author: epoger@google.com
Review URL: https://codereview.chromium.org/314443002
2014-06-02 13:46:21 -07:00
epoger
f07892413c
stop using brackets within skimage output filenames
...
BUG=skia:2634
R=scroggo@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/303263012
2014-06-02 13:35:22 -07:00
mtklein
be7de4fc42
Update TSAN suppressions.
...
TSAN suppressions need to be on their own line, even free of comments.
Also, temporarily add SK_ANNOTATE_UNPROTECTED_READ to sk_acquire_load.
Will remove this when we're done iterating on SkBarriers_tsan.h: TSAN
has an atomic load that makes the annotation moot.
BUG=skia:
R=bungeman@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/308073013
2014-06-02 13:23:49 -07:00
skia.committer@gmail.com
9681eebb0e
Sanitizing source files in Housekeeper-Nightly
...
git-svn-id: http://skia.googlecode.com/svn/trunk@14984 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-30 03:06:10 +00:00