joshualitt
2dd1ae016d
First step to moving vertex attributes to the geometryProcessor
...
BUG=skia:
Review URL: https://codereview.chromium.org/761563002
2014-12-03 06:24:10 -08:00
reed
af641a1c10
Revert "Change clear() to respect the clip"
...
This reverts commit 3729469d6a
.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/778563002
2014-12-02 19:40:18 -08:00
abarth
9503ac7a3c
Add matrix operations to C canvas API
...
R=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/769123002
2014-12-02 15:47:34 -08:00
mtklein
701dd4fbd7
Flail a little against LLVM crash.
...
Cannot reproduce this in my local Chromium checkout (using their Clang, just like the bots).
BUG=skia:
TBR=reed@google.com
Review URL: https://codereview.chromium.org/764433003
2014-12-02 13:17:06 -08:00
scroggo
ca0e67261e
Remove SK_SUPPORT_DEPRECATED_SCALARROUND.
...
Our clients no longer require it.
Review URL: https://codereview.chromium.org/772933002
2014-12-02 12:30:38 -08:00
Justin Novosad
5234075b1c
Adding a PictureResolution option to SkPictureImageFilter
...
This change adds an option to SkPictureImageFilter to make it
rasterize SkPicture in a resolution that matches the local coordinate
space (equivalent to the record-time device space).
BUG=skia:3176
R=reed@google.com , senorblanco@chromium.org
Review URL: https://codereview.chromium.org/753073010
2014-12-02 14:50:56 -05:00
reed
3729469d6a
Change clear() to respect the clip
...
patch from issue 769703002 at patchset 1 (http://crrev.com/769703002#ps1 )
BUG=skia:
Review URL: https://codereview.chromium.org/772533004
2014-12-02 10:08:11 -08:00
mtklein
cc969c4dd9
Make SkColorTable explicitly thread-safe.
...
Mostly this means using SkLazyPtr for the 16-bit cache.
We can remove the copy constructor now and just ref it instead.
BUG=skia:
Review URL: https://codereview.chromium.org/769323002
2014-12-02 10:02:47 -08:00
mtklein
775b8199a2
SkColorTable locking serves no purpose anymore.
...
The only thing the unlock methods were doing was assert their balance.
This removes the unlock methods and renames the lock methods "read".
BUG=skia:
Review URL: https://codereview.chromium.org/719213008
2014-12-02 09:11:25 -08:00
abarth
2fc6ea62ce
Add scale and skew to C canvas API
...
R=reed@chromium.org
BUG=skia:
Review URL: https://codereview.chromium.org/762493005
2014-12-01 14:04:03 -08:00
mtklein
05d611574a
SkDrawLooper: No need for virtual bounds computation methods.
...
No subclass overrides either method.
This is just warmup. Perf is neutral. The real meat of the time spent
is inside canComputeFastBounds / computeFastBounds, not getting to them.
BUG=skia:
Review URL: https://codereview.chromium.org/772573003
2014-12-01 13:03:22 -08:00
egdaniel
4bd4e8031d
Add function to return an unpremuled version of a GrColor
...
BUG=skia:
Review URL: https://codereview.chromium.org/773553002
2014-12-01 12:30:51 -08:00
mtklein
3f3b3d0035
Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
...
This was needed for pictures before v33, and we're now requiring v35+.
Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88
Review URL: https://codereview.chromium.org/769953002
2014-12-01 11:47:08 -08:00
scroggo
ca92fbd029
Remove orphaned SkImageDecoder::Target.
...
This was used by an experimental method on SkImageDecoder, which no
longer exists.
Review URL: https://codereview.chromium.org/760923003
2014-12-01 11:35:19 -08:00
mtklein
af57903f33
Force SkMatrix type while recording too.
...
This switches to a new way of doing this, enforcing the caching with the type
recorded rather than having to do it in SkRecorder. Should be more foolproof.
Updated SkPath and SkBitmap's equivalents too. ImmutableBitmap was close,
but using inheritance now makes the rest of the code less weird.
BUG=437511
I'm not sure whether or not this will _fix_ the SkMatrix aspect of that bug.
There may be other SkMatrices that we're racing on. It does cover the obvious
ones, though, and removing the SkTRacy<> wrapper will allow TSAN to show
us any other races.
It turned out to be easier to turn missing optional matrices into I early rather
than late. I figure this should be harmless. Recording and playback perf both
look neutral.
Review URL: https://codereview.chromium.org/773433003
2014-12-01 11:03:37 -08:00
mtklein
6e78293ee8
Revert of Remove SK_SUPPORT_LEGACY_DEEPFLATTENING. (patchset #1 id:1 of https://codereview.chromium.org/769953002/ )
...
Reason for revert:
Breaks canary builds. Will reland after the Chromium change lands.
Original issue's description:
> Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
>
> This was needed for pictures before v33, and we're now requiring v35+.
>
> Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/52c293547b973f7fb5de3c83f5062b07d759ab88
TBR=reed@google.com ,mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/768183002
2014-12-01 10:56:05 -08:00
mtklein
52c293547b
Remove SK_SUPPORT_LEGACY_DEEPFLATTENING.
...
This was needed for pictures before v33, and we're now requiring v35+.
Will follow up with the same for skia/ext/pixel_ref_utils_unittest.cc
BUG=skia:
Review URL: https://codereview.chromium.org/769953002
2014-12-01 10:23:11 -08:00
cdalton
20b373cf31
Add color emoji fallback for nvpr text
...
BUG=skia:
Review URL: https://codereview.chromium.org/759613005
2014-12-01 08:38:55 -08:00
mtklein
5c9c9be1f5
Force path bounds in recording.
...
The use of SKTRacy isn't safe in SkPathRef.
There are logical dependencies between the racy fields.
Doesn't seem to affect recording performance:
$ c --match skp --config nonrendering
tabl_techmeme.skp 81.1us -> 86us 1.06x
desk_mapsvg.skp 1.23ms -> 1.26ms 1.02x
desk_yahooanswers.skp 114us -> 117us 1.02x
tabl_sahadan.skp 70.9us -> 72us 1.02x
desk_fontwipe.skp 31.6us -> 32us 1.01x
tabl_cuteoverload.skp 414us -> 419us 1.01x
desk_mobilenews.skp 503us -> 508us 1.01x
desk_tigersvg.skp 150us -> 152us 1.01x
desk_samoasvg.skp 608us -> 610us 1x
tabl_digg.skp 636us -> 638us 1x
tabl_pravda.skp 155us -> 156us 1x
desk_jsfiddlehumperclip.skp 33.9us -> 33.9us 1x
tabl_culturalsolutions.skp 295us -> 295us 1x
desk_youtube.skp 447us -> 448us 1x
desk_gws.skp 144us -> 144us 1x
tabl_frantzen.skp 42us -> 42us 1x
tabl_gspro.skp 50.1us -> 50us 1x
tabl_googlecalendar.skp 165us -> 165us 1x
desk_twitter.skp 359us -> 358us 1x
desk_wordpress.skp 588us -> 583us 0.99x
desk_jsfiddlebigcar.skp 32.8us -> 32.5us 0.99x
desk_booking.skp 838us -> 827us 0.99x
tabl_androidpolice.skp 1.42ms -> 1.4ms 0.99x
desk_blogger.skp 378us -> 372us 0.98x
desk_wowwiki.skp 1.11ms -> 1.09ms 0.98x
tabl_cnet.skp 115us -> 112us 0.97x
desk_silkfinance.skp 57.7us -> 55.9us 0.97x
tabl_cnn.skp 136us -> 131us 0.97x
desk_sfgate.skp 396us -> 377us 0.95x
tabl_deviantart.skp 107us -> 102us 0.95x
tabl_mozilla.skp 1.4ms -> 1.32ms 0.94x
BUG=437511
Review URL: https://codereview.chromium.org/762313002
2014-12-01 06:59:55 -08:00
mtklein
88fd0fbccc
Bump min picture version.
...
Chrome Stable is M39, which produces picture format v35:
https://chromium.googlesource.com/skia/+/chrome/m39/include/core/SkPicture.h
We don't need any code to deal with pictures older than v35.
(When M40 goes stable, we can step up to v37, the current latest version.)
BUG=skia:
Review URL: https://codereview.chromium.org/770703002
2014-12-01 06:56:38 -08:00
jvanverth
5eefe42e72
Fix assert in GrMaskFormatBytesPerPixel.
...
BUG=skia:3174
Review URL: https://codereview.chromium.org/762553006
2014-11-26 12:07:33 -08:00
joshualitt
267ce482b5
remove proc key
...
BUG=skia:
Review URL: https://codereview.chromium.org/755363002
2014-11-25 14:52:21 -08:00
scroggo
f3ca41c723
Add an Android-framework-only stable ID to SkPixelRef.
...
BUG:b/18245805
Review URL: https://codereview.chromium.org/752203002
2014-11-25 13:42:12 -08:00
bsalomon
a2c2323005
Remove GrSurface::isSameAs
...
Review URL: https://codereview.chromium.org/753783003
2014-11-25 07:41:12 -08:00
mtklein
21180e2651
Revert of Blink hasn't rolled yet, better. (patchset #1 id:1 of https://codereview.chromium.org/758693002/ )
...
Reason for revert:
Try again, for real.
Original issue's description:
> Blink hasn't rolled yet, better.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/89ff0846fd9dacf5f081373746624d450a5f8c26
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/754303004
2014-11-25 07:30:19 -08:00
bsalomon
10e23caea3
Use scratch keys for stencil buffers.
...
BUG=skia:2889
Committed: https://skia.googlesource.com/skia/+/91175f19664a62851da4ca4e0984a7c7c45b258f
Review URL: https://codereview.chromium.org/747043004
2014-11-25 05:52:06 -08:00
reed
26a6bf6a26
free up picturerecorder refs after returning picture or drawable
...
this just accelerates what would happen on the next beginRecording() call or the destructor. chrome has unittests that break (shaders on the stack) if we hold on to the internals past endRecording().
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/758813002
2014-11-24 19:59:23 -08:00
reed
afa278e250
more c
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/736133006
2014-11-24 19:11:48 -08:00
reed
1bdfd3f4f0
option to return drawable from recording
...
patch from issue 747033005 at patchset 80001 (http://crrev.com/747033005#ps80001 )
BUG=skia:
Review URL: https://codereview.chromium.org/732653004
2014-11-24 14:41:51 -08:00
Mike Klein
89ff0846fd
Blink hasn't rolled yet, better.
...
BUG=skia:
Review URL: https://codereview.chromium.org/758693002
2014-11-24 17:31:54 -05:00
mtklein
a2a5cd4405
Revert of Blink hasn't rolled yet. (patchset #1 id:1 of https://codereview.chromium.org/754133002/ )
...
Reason for revert:
Not thorough enough.
Original issue's description:
> Blink hasn't rolled yet.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/fa14113d0563686af9f7e2d8e041dd7bf538cfa2
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/752303002
2014-11-24 14:28:55 -08:00
reed
3c850c561f
restore old convention of asserting refcnt==1 in destructor
...
BUG=skia:
Review URL: https://codereview.chromium.org/757563003
2014-11-24 14:13:55 -08:00
Mike Klein
fa14113d05
Blink hasn't rolled yet.
...
BUG=skia:
Review URL: https://codereview.chromium.org/754133002
2014-11-24 16:26:15 -05:00
mtklein
bbb61d7268
make SkRefCnt::getRefCnt() debug-only, remove it from SkNVRefCnt.
...
Only (unused) API removed.
TBR=reed@google.com
BUG=skia:3160
Review URL: https://codereview.chromium.org/752263002
2014-11-24 13:09:39 -08:00
bsalomon
19cd0f1813
Revert "Use scratch keys for stencil buffers."
...
This reverts commit 91175f1966
.
Revert "Cleanup res cache bench and split out into a unit test."
This reverts commit 4e4303f002
.
Revert "rebaselines"
This reverts commit 65ba7b5775
.
TBR=tomhudson@google.com
Review URL: https://codereview.chromium.org/752233002
2014-11-24 12:19:06 -08:00
reed
90d0ff013b
add some debugging to SkNVRefCnt
...
BUG=skia:
Review URL: https://codereview.chromium.org/745383003
2014-11-24 12:02:31 -08:00
scroggo
01c412e40a
Remove android-framework-only unused parameter.
...
Allows -Werror=unused-parameter to build on android framework.
Review URL: https://codereview.chromium.org/757633002
2014-11-24 09:05:35 -08:00
mtklein
04c9695055
Remove Picture deletion listeners.
...
Looks like we can just have ~SkPicture put the message on the bus directly.
BUG=skia:3144
Review URL: https://codereview.chromium.org/751663002
2014-11-24 08:20:58 -08:00
bsalomon
91175f1966
Use scratch keys for stencil buffers.
...
BUG=skia:2889
Review URL: https://codereview.chromium.org/747043004
2014-11-24 07:05:15 -08:00
bsalomon
932f866987
Create GrOptDrawState directly in the cmd buffer in GrIODB.
...
Review URL: https://codereview.chromium.org/746243002
2014-11-24 06:47:48 -08:00
reed
735f548c51
use int instead of size_t to match skia convention
...
BUG=skia:
TBR=mtklein@google.com
Review URL: https://codereview.chromium.org/753903002
2014-11-23 18:37:14 -08:00
mtklein
19ac76753e
SkPicture::SnapshotArray doesn't really stand to benefit from refcounting.
...
BUG=skia:
Review URL: https://codereview.chromium.org/748803005
2014-11-21 12:20:35 -08:00
mtklein
1794651509
Switch SkBitmapProcState's SkFractionalInt to 32.32.
...
16 bits are not enough to hold the integral part of fx in
Clamp_S32_opaque_D32_nofilter_DX_shaderproc.
Weirdly, no GM diffs on my desktop.
BUG=skia:3096
Review URL: https://codereview.chromium.org/733163003
2014-11-21 12:10:33 -08:00
mtklein
09a22e9597
Watch out for SkFixed overflow in SkMipMap.cpp.
...
Tested with -fsanitize=signed-integer-overflow.
This new assert used to trigger in MipMap unit test.
Don't appear to be any GM diffs.
BUG=skia:
Review URL: https://codereview.chromium.org/729373004
2014-11-21 11:38:53 -08:00
mtklein
04038eba9f
public SkNVRefCnt<SnapshotArray>
...
Should fix broken build.
NOTRY=true
TBR=reed@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/748143002
2014-11-21 11:13:15 -08:00
mtklein
b7ee349f10
SkData -> SkPicture::SnapshotArray
...
Restores type safety with all the same features.
(Also note, less code: 29 insertions, 50 deletions.)
BUG=skia:
Review URL: https://codereview.chromium.org/746553002
2014-11-21 11:06:04 -08:00
reed
4af267b119
add SkImage::newSurface
...
BUG=skia:
Review URL: https://codereview.chromium.org/741763002
2014-11-21 08:46:38 -08:00
reed
41d2c2e434
simplify uniqueID code in picture
...
patch from issue 750003002 at patchset 1 (http://crrev.com/750003002#ps1 )
BUG=skia:
Review URL: https://codereview.chromium.org/752573002
2014-11-21 08:07:41 -08:00
robertphillips
5b69377507
Add MultiPictureDraw to nanobench
...
I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
TBR=bsalomon@google.com
Committed: https://skia.googlesource.com/skia/+/0ddad31012dabfc1267effc8071d37f7d606efbe
Review URL: https://codereview.chromium.org/731973005
2014-11-21 06:19:36 -08:00
robertphillips
e77dadd91a
Revert of Add MultiPictureDraw to nanobench (patchset #7 id:120001 of https://codereview.chromium.org/731973005/ )
...
Reason for revert:
Needs more work
Original issue's description:
> Add MultiPictureDraw to nanobench
>
> I would like some guard against performance regressions on our side before turning layer hoisting on in Chromium.
>
> TBR=bsalomon@google.com
>
> Committed: https://skia.googlesource.com/skia/+/0ddad31012dabfc1267effc8071d37f7d606efbe
TBR=mtklein@google.com ,bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/750583002
2014-11-21 05:50:21 -08:00