Commit Graph

12561 Commits

Author SHA1 Message Date
mtklein
a272d6d065 Move SkStringUtils.h to src/core.
Doesn't need to be in include/.

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

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/335413004
2014-06-17 07:42:35 -07:00
mtklein
4c07b6b58f BenchSysTimer_mach drops all sub-ms precision. Fix that!
BUG=skia:
R=bungeman@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/336903005
2014-06-17 07:06:29 -07:00
caryclark
da085e6ab3 fix chrome
had #if SK_DEBUG instead of #ifdef SK_DEBUG

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

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/338333002
2014-06-17 05:41:12 -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
d6043b20b6 Add nanomsg to third_party, with some demos.
This isn't something I want to make part of Skia, but just a substrate to build cross-process demos on top of.  If I client were to use Skia cross-process, they'd drop their own IPC system in here.

If you're not familiar, nanomsg (nanomsg.org) is the next-gen zeromq (zeromq.org), from the same author, righting all his design wrongs from zeromq.

It's a lot like the lower half of mojo, dealing with making the connections and getting messages reliably from A to B.  Think, better sockets, and it spans nicely across in-process (with zero-copy), inter-process, and TCP.

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

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/294873004
2014-06-16 20:21:06 -07:00
mtklein
4aa000df08 Split out DEPS change from 294873004 to land first.
BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/331913004
2014-06-16 20:03:43 -07:00
reed
0349864b75 remove SK_SUPPORT_LEGACY_BLURMASKFILTER_STYLE -- not needed
BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/332163005
2014-06-16 15:18:25 -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
borenet
ad2ab61b4e Fix Windows bots
BUG=skia:
R=mtklein@google.com, rmistry@google.com

Author: borenet@google.com

Review URL: https://codereview.chromium.org/339733002
2014-06-16 13:41:25 -07:00
mtklein
9ccabf7f94 Revert of Temporarily limit x86 SIMD to SSE2 only, to see effect on all benches and bots. (https://codereview.chromium.org/331193004/)
Reason for revert:
Experiment is over: disabling SSSE3 is a 25-50% perf regression for bitmap scaling on every machine we've got.

Original issue's description:
> Temporarily limit x86 SIMD to SSE2 only, to see effect on all benches and bots.
>
> BUG=372232
>
> Committed: https://skia.googlesource.com/skia/+/f1e5a04832e4d350f9ebf5d556c6d3897345f883

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=372232

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/332213005
2014-06-16 13:11:27 -07:00
fmalita
07fc662d7e Prepare for internal SaveFlags removal.
Chromium has a couple of SkCanvas subclasses which override willSave().
This adds a transitional shim to facilitate converting these to the
parameter-less API.

BUG=skia:2297
R=reed@google.com, scroggo@google.com

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/338913002
2014-06-16 12:13:39 -07:00
piotaixr
0eb02a6abb Cleaned a repeated if(condition) with the same condition
R=junov@chromium.org

Author: piotaixr@chromium.org

Review URL: https://codereview.chromium.org/338933002
2014-06-16 11:50:49 -07:00
senorblanco
f3b50276a4 Perlin noise cleanup.
Remove Simplex noise implementation and now-redundant base classes.

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

Author: senorblanco@chromium.org

Review URL: https://codereview.chromium.org/336043002
2014-06-16 10:49:58 -07:00
mtklein
f1e5a04832 Temporarily limit x86 SIMD to SSE2 only, to see effect on all benches and bots.
BUG=372232
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/331193004
2014-06-16 10:22:12 -07:00
kevin.petit
cf2187267b Armv8/64bit doesn't (apparently) need rebaselining
BUG=skia:
R=reed@google.com
NOTRY=True

Author: kevin.petit@arm.com

Review URL: https://codereview.chromium.org/334743009
2014-06-16 10:05:41 -07:00
senorblanco
92b323e3ab Add sugoi@ to CQ_COMMITTERS.
R=junov@chromium.org

Author: senorblanco@chromium.org

Review URL: https://codereview.chromium.org/337033005
2014-06-16 08:54:57 -07:00
reed
885f2ea46e fix legacy code path for SK_SUPPORT_LEGACY_IMAGEDECODER_CONFIG
BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/332223002
2014-06-16 08:25:57 -07:00
Eric Boren
9118413608 Enable compiling with automatically-downloaded VS toolchain on Windows bots
Requires that the bots have CHROME_HEADLESS=1 and CHROME_PATH set.

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

Review URL: https://codereview.chromium.org/332833002
2014-06-16 10:02:42 -04:00
borenet
d6e614c0aa Update SKP version to 24
Automatic commit by the RecreateSKPs bot.

TBR=

Author: borenet@google.com

Review URL: https://codereview.chromium.org/332983003
2014-06-15 23:52:57 -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
borenet
09b187c9bd Update SKP version to 23
Automatic commit by the RecreateSKPs bot.

TBR=

Author: borenet@google.com

Review URL: https://codereview.chromium.org/332843006
2014-06-14 23:47:32 -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
borenet
c6dbd6f95e Update SKP version to 22
Automatic commit by the RecreateSKPs bot.

TBR=

Author: borenet@google.com

Review URL: https://codereview.chromium.org/332013002
2014-06-14 04:50:12 -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
f252f64f17 hide virtuals on device for width/height/isopaque
R=bsalomon@google.com
NOTREECHECKS=True

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/334993002
2014-06-14 04:24:57 -07:00
rmistry
937fdeb8a2 Testing trybot triggering
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Ubuntu13.10-GCC4.8-x86_64-Debug-CrOS_Link-Trybot
BUG=skia:2659
NOTREECHECKS=true
TBR=
(SkipBuildbotRuns)

Author: rmistry@google.com

Review URL: https://codereview.chromium.org/332933005
2014-06-13 11:59:44 -07:00
kkinnunen
cb9a2c8934 Extract "text align proc" functions as reusable classes
Extract "text align proc" as reusable classes. These classes need to be used
when writing GrTextContext subclasses.

Moves "text align proc" code that is duplicated in SkDraw and
SkBitmapTextContext to SkDrawProcs.h and SkTextMapState.h. This functionality is
also used in the new GrStencilAndCoverTextContext.

Creates new functor classes SkTextAlignProc and SkTextAlignProcScalar which
represent the previous "text align procs".

Moves TextMapState from SkDraw to SkTextMapStateProc and make it similar functor.

The transform should be comparable in speed, as the compiler can and does avoid
the call and eliminate some of the branches.

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

Author: kkinnunen@nvidia.com

Review URL: https://codereview.chromium.org/335573002
2014-06-12 23:06:28 -07:00
rs.prinja
39e58adb99 Randomize seed for SkDiscretePathEffect::filterPath()
Fix for https://code.google.com/p/skia/issues/detail?id=2581. Randomizes
the seed in SkDiscretePathEffect::filterPath(). Prior to this we were
using the path length as a seed.

Now, if we have two different paths with identical contents and we
apply an SkDiscretePathEffect to each, we obtain two different random
paths. Previously, we would obtain two overlapping paths (identical
path contents leading to the same seed).

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

Author: rs.prinja@samsung.com

Review URL: https://codereview.chromium.org/311803002
2014-06-12 22:55:08 -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
senorblanco
9a8699f45c New baselines for perlin noise tests affected by ce6a35.
New baselines for perlinnoise, imagefiltersclipped and
imagefiltersscaled GMs.

R=scroggo@google.com
TBR=scroggo
NOTRY=true

Author: senorblanco@chromium.org

Review URL: https://codereview.chromium.org/336703002
2014-06-12 14:31:57 -07:00
robertphillips
02830f0448 Remove SkPicture SK_SUPPORT_LEGACY_RECORDING_FLAG flag
Chromium/Blink should no longer need this flag after:

Chromium: Remove use of kUsePathBoundsForClip_RecordingFlag https://codereview.chromium.org/322123002/

Blink: Remove use of kUsePathBoundsForClip_RecordingFlag https://codereview.chromium.org/326953002/

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

Author: robertphillips@google.com

Review URL: https://codereview.chromium.org/328343002
2014-06-12 12:56:58 -07:00
reed
2526f0e5fd rebaselines for removal of unitmapper
TBR=
NOTRY=True

Author: reed@google.com

Review URL: https://codereview.chromium.org/330513005
2014-06-12 12:53:01 -07:00
Stephen White
1b5e04ec5f Add more tests to ignore-tests.txt.
Add imagefiltersclipped and imagefiltersscaled to ignored-tests.txt
until they can be rebaselined, since they're failing on Android after
https://codereview.chromium.org/332523006/.

TBR=scroggo
BUG=skia:

Review URL: https://codereview.chromium.org/336663002
2014-06-12 15:51:46 -04:00
scroggo
e07c1ab408 Revert of third try at landing improved blur rect; this time with more correctness (https://codereview.chromium.org/331443003/)
Reason for revert:
Failing layout test: https://storage.googleapis.com/chromium-layout-test-archives/WebKit_Linux/32762/layout-test-results/virtual/gpu/fast/canvas/canvas-draw-canvas-on-canvas-shadow-pretty-diff.html

Original issue's description:
> third try at landing improved blur rect; this time with more correctness
>
> BUG=skia:2095
> R=bsalomon@google.com
> TBR=bsalomon
>
> Committed: https://skia.googlesource.com/skia/+/72abfc2b4e7caead660f6b6a05e60d05eaf1a66f

R=bsalomon@google.com, reed@google.com, humper@google.com
TBR=bsalomon@google.com, humper@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2095

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/333763002
2014-06-12 12:10:24 -07:00
egdaniel
8b6fee1eb9 Add another fail-ignore for flaky dashing4 gm
NOTREECHECKS=True
NOTRY=True
TBR=bsalomon@google.com
BUG=skia:

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/329223007
2014-06-12 11:58:16 -07:00
bensong
a440e0065a Greenify bench bot Perf-Ubuntu12-ShuttleA-GTX660-x86-Release at build 968
R=bsalomon@google.com
TBR=scroggo@google.com

Bypassing trybots:
NOTRY=true

Author: bensong@google.com

Review URL: https://codereview.chromium.org/338453004
2014-06-12 11:36:53 -07:00
kelvinly
fa1eaaa843 Added in framework to get more bench data
BUG=skia:
NOTRY=true
R=jcgregorio@google.com, bensong@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/331683003
2014-06-12 11:27:40 -07:00
senorblanco
ce6a354e12 Fix tiled perlin noise.
It turns out that the perlin implementation we inherited from WebKit
does not actually generate tileable noise (see Chromium bug
http://crbug.com/383495).

The main problem is that when generating coordinates for gradient
interpolation, it was attempting to wrap both x and (x + 1)
simultaneously at the tile boundary (that is, either both or neither
are wrapped). This obviously won't work, since along the tile seams,
(x + 1) should be wrapped, but x should not. The same is true in y.

This patch fixes both the CPU and GPU paths, renames some variables to
more closely match the spec, and modifies the perlin noise GM to
actually test tiling. (Note that the clipping the GM was doing was
removed, since it's superfluous: it used to be necessary for image
filters, but isn't anymore, and this isn't an image filter GM anyway.)

R=sugoi@google.com, sugoi
TBR=senorblanco

Author: senorblanco@chromium.org

Review URL: https://codereview.chromium.org/332523006
2014-06-12 11:24:20 -07:00
egdaniel
e61c411c12 Use vertex attributes for dash effect in gpu
This will allow us to batch dashed lines together when drawing. Also, this removes the need for
a coord transform matrix in the shader, thus we save the cost of uploading a new matrix uniform
everytime we do a simple transform to the dashed line we are drawing.

BUG=skia:
R=bsalomon@google.com

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/326103002
2014-06-12 10:24:21 -07:00
bensong
b205d09b29 manual bench rebase after 679426c using old algorithm
R=robertphillips@google.com
TBR=borenet@google.com, robertphillips@google.com

Bypassing trybots:
NOTRY=true

Author: bensong@google.com

Review URL: https://codereview.chromium.org/330103002
2014-06-12 09:40:47 -07:00
reed
2f785a24eb remove GetDeviceConfig/SetDeviceConfig
BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/332453002
2014-06-12 09:21:31 -07:00
krajcevski
fb4f5cb39e Use scratch with LATC data if possible
R=robertphillips@google.com

Author: krajcevski@google.com

Review URL: https://codereview.chromium.org/330593004
2014-06-12 09:20:38 -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
bensong
06cc564823 removes deprecated -q flag for gsutil.
BUG=skia:
NOTRY=true
R=kelvinly@google.com
TBR=kelvinly@google.com

Author: bensong@google.com

Review URL: https://codereview.chromium.org/333643005
2014-06-12 08:25:04 -07:00
bensong
e8433c36e0 Really revert bench trigger changes.
BUG=skia:
NOTRY=true
R=kelvinly@google.com
TBR=kelvinly@google.com

Author: bensong@google.com

Review URL: https://codereview.chromium.org/324403009
2014-06-12 08:05:43 -07:00
egdaniel
b5dcdf1e7e Rebase flakey windows dash4 gm
NOTREECHECKS=True
NOTRY=True
TBR=bsalomon@google.com
BUG=skia:2667

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/335443003
2014-06-12 08:02:43 -07:00
kelvinly
607953200d Revert trigger changes
BUG=skia:
NOTRY=true
R=robertphillips@google.com, bensong@google.com, jcgregorio@google.com

Author: kelvinly@google.com

Review URL: https://codereview.chromium.org/334673002
2014-06-12 06:40:58 -07:00
egdaniel
aea9cfbe8a Add expectations for dashing gm
TBR=bsalomon@google.com
BUG=skia:

Author: egdaniel@google.com

Review URL: https://codereview.chromium.org/330033002
2014-06-12 06:26:16 -07:00
rmistry
c9110100f1 Whitespace change to test trybot triggering
BUG=skia:
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Ubuntu13.10-GCC4.8-Arm7-Release-Android-Trybot
TBR=
(SkipBuildbotRuns)

Author: rmistry@google.com

Review URL: https://codereview.chromium.org/333663002
2014-06-12 06:23:38 -07:00
scroggo
cfe56bf3c5 manual bench rebase after 679426c
In response to:
- new SKPs
- Kelvin's changes around regression testing

R=robertphillips@google.com, kelvinly@google.com
TBR=robertphillips@google.com

Bypassing trybots:
NOTRY=true

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/332483004
2014-06-12 05:54:37 -07:00