halcanary [Thu, 17 Jul 2014 17:17:28 +0000 (10:17 -0700)]
erase bitmap inside unit test to make valgrind happier
R=mtklein@google.com
TBR=sunshine
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
397273006
mtklein [Thu, 17 Jul 2014 17:02:30 +0000 (10:02 -0700)]
Revert of Revert of Revert of Force DM rebuild. (https://codereview.chromium.org/
402663003/)
Reason for revert:
we have to go deeper
Original issue's description:
> Revert of Revert of Force DM rebuild. (https://codereview.chromium.org/
399123002/)
>
> Reason for revert:
> jkl;
>
> Original issue's description:
> > Revert of Force DM rebuild. (https://codereview.chromium.org/
400723002/)
> >
> > Reason for revert:
> > asdf
> >
> > Original issue's description:
> > > Force DM rebuild.
> > >
> > > BUG=skia:
> > >
> > > Committed: https://skia.googlesource.com/skia/+/8a10de1
> >
> > TBR=mtklein@chromium.org
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/
f42e08c12533f2a165bc08451f5ab5dd1363618b
>
> TBR=mtklein@chromium.org
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
41f30cd87ece55971b17e4a59873cf31100ee1a0
R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
397293004
mtklein [Thu, 17 Jul 2014 16:34:20 +0000 (09:34 -0700)]
Revert of Revert of Force DM rebuild. (https://codereview.chromium.org/
399123002/)
Reason for revert:
jkl;
Original issue's description:
> Revert of Force DM rebuild. (https://codereview.chromium.org/
400723002/)
>
> Reason for revert:
> asdf
>
> Original issue's description:
> > Force DM rebuild.
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/8a10de1
>
> TBR=mtklein@chromium.org
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
f42e08c12533f2a165bc08451f5ab5dd1363618b
R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
402663003
cdalton [Thu, 17 Jul 2014 16:28:36 +0000 (09:28 -0700)]
Add IsPath to GrGLInterface
This will be used by path ranges.
BUG=skia:
R=bsalomon@google.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
403563002
bsalomon [Thu, 17 Jul 2014 16:28:07 +0000 (09:28 -0700)]
Use the GrCacheable ID to eliminate the need for notifications to GrGpuGL when textures and RTs are deleted.
Also, rename GrCacheable::getGenerationID() to getInstanceID() since it doesn't behave like other "generation" IDs.
R=jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
376703009
mtklein [Thu, 17 Jul 2014 16:07:19 +0000 (09:07 -0700)]
Revert of Force DM rebuild. (https://codereview.chromium.org/
400723002/)
Reason for revert:
asdf
Original issue's description:
> Force DM rebuild.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/8a10de1
R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
399123002
Mike Klein [Thu, 17 Jul 2014 16:05:19 +0000 (12:05 -0400)]
Force DM rebuild.
BUG=skia:
Review URL: https://codereview.chromium.org/
400723002
mtklein [Thu, 17 Jul 2014 15:38:23 +0000 (08:38 -0700)]
nanobench: Protect more against infinite loops.
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
404543002
robertphillips [Thu, 17 Jul 2014 15:26:44 +0000 (08:26 -0700)]
Make GrLayerCache use multiple plots in its atlas
Until we have a recycling Rectanizer the atlas purging must occur at the GrPlot level. This CL breaks the atlas into four plots to give some room for purging (without trashing the entire atlas).
This is calved off of (Add atlased layer purging - https://codereview.chromium.org/
367073002/)
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
397873004
epoger [Thu, 17 Jul 2014 15:22:12 +0000 (08:22 -0700)]
create copy_config.py and rename_config.py for skbug 2752
BUG=skia:2752
NOTRY=True
(SkipBuildbotRuns)
R=bsalomon@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/
397293002
qiankun.miao [Thu, 17 Jul 2014 15:18:23 +0000 (08:18 -0700)]
Fix warning about missing shared library symbols in android_gdbserver
Grab related shared libraryies. Remove libcorkscrew.so due libcorkscrew
is removed from AOSP.
BUG=skia:
R=djsollen@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/
399843002
bsalomon [Thu, 17 Jul 2014 14:55:11 +0000 (07:55 -0700)]
Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys.
Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF.
Cleans up docs around GrBackendEffectFactory.
Committed: https://skia.googlesource.com/skia/+/
c0ea398aff8254e31152cbb94c9ab6150428e252
R=robertphillips@google.com, jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
379113004
reed [Thu, 17 Jul 2014 14:03:09 +0000 (07:03 -0700)]
factor out flattening/unflattening of common fields from SkImageFilter
This is a precursor to changing SkImageFilters (and all effects) to unflatten via a factory instead of a constructor. In that world, each subclass of ImageFilter will need to control/initiate the unflattening of the common fields, so they can be extract and passed to their Factory.
R=senorblanco@google.com, robertphillips@google.com, mtklein@google.com, senorblanco@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/
395273002
scroggo [Thu, 17 Jul 2014 13:58:28 +0000 (06:58 -0700)]
Generate makefile for bench_pictures.
When generating Android framework makefiles, create one for
bench_pictures.
BUG=skia:2744
R=djsollen@google.com, halcanary@google.com, mtklein@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
391423002
halcanary [Thu, 17 Jul 2014 13:58:01 +0000 (06:58 -0700)]
Set maximum output size for scaled-image-cache images
Accessable via:
SkScaledImageCache::{G,S}etMaximumOutputSizeForHighQualityFilter
Also, a unit test.
BUG=389439
R=humper@google.com, tomhudson@google.com, reveman@chromium.org, vangelis@chromium.org, reed@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
394003003
Mike Klein [Thu, 17 Jul 2014 00:23:43 +0000 (20:23 -0400)]
(temporarily?) disable no-oped benches
BUG=skia:
Review URL: https://codereview.chromium.org/
391343007
Mike Klein [Wed, 16 Jul 2014 23:59:32 +0000 (19:59 -0400)]
Use __rdtsc on Windows.
This seems to be ~100x higher resolution than QueryPerformanceCounter. AFAIK, all our Windows perf bots have constant_tsc, so we can be a bit more direct about using rdtsc directly: it'll always tick at the max CPU frequency.
Now, the question remains, what is the max CPU frequency to divide through by? It looks like QueryPerformanceFrequency actually gives the CPU frequency in kHz, suspiciously exactly what we need to divide through to get elapsed milliseconds. That was a freebie.
I did some before/after comparison on slow benchmarks. Timings look the same. Going to land this without review tonight to see what happens on the bots; happy to review carefully tomorrow.
R=mtklein@google.com
TBR=bungeman
BUG=skia:
Review URL: https://codereview.chromium.org/
394363003
krajcevski [Wed, 16 Jul 2014 22:21:13 +0000 (15:21 -0700)]
Add new ASTC pixel config
R=bsalomon@google.com, robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
399623004
epoger [Wed, 16 Jul 2014 21:45:47 +0000 (14:45 -0700)]
roll common DEPS, now using recursedeps
BUG=skia:2618
R=borenet@google.com, cmp@chromium.org
Author: epoger@google.com
Review URL: https://codereview.chromium.org/
392353003
mtklein [Wed, 16 Jul 2014 21:29:53 +0000 (14:29 -0700)]
Remove benches from DM.
This idea turned out to be more redundant than useful.
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
399463003
Mike Klein [Wed, 16 Jul 2014 21:18:20 +0000 (17:18 -0400)]
Disable assertion of fBoundsIsDirty.
We allow this to be raced on, and it may have already become not-dirty by the
time we get to this function if computed by another thread.
BUG=skia:
Review URL: https://codereview.chromium.org/
398913002
bungeman [Wed, 16 Jul 2014 20:46:06 +0000 (13:46 -0700)]
Remove ambiguous operator= on AutoCFRelease.
The operator= is ambiguous as to the state of the reference count.
Until we have rvalue assignment operators, just use 'reset' as the name
of the reference stealing assignment to AutoCFRelease.
R=reed@google.com, mtklein@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/
400453002
joshualitt [Wed, 16 Jul 2014 20:32:56 +0000 (13:32 -0700)]
32 bpp floating point textures
This is VERY preliminary, but it was sufficient for me to get 32 bit floating point textures in a sample app
BUG=skia:
R=bsalomon@chromium.org, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
359803003
krajcevski [Wed, 16 Jul 2014 20:31:41 +0000 (13:31 -0700)]
Buffer four scanlines prior to blitting. We will eventually use this
to blit four scanlines in a row in order to aggressively compress alpha
masks as the information comes in. This CL is only to introduce the API
and to make sure that nothing breaks in the general case.
R=reed@google.com, robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
387953005
krajcevski [Wed, 16 Jul 2014 20:26:43 +0000 (13:26 -0700)]
Generalize mask helper a bit for compression
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
398603004
robertphillips [Wed, 16 Jul 2014 20:26:24 +0000 (13:26 -0700)]
Add unique ID to GrPlot
This is calved off of (Add atlased layer purging - https://codereview.chromium.org/
367073002/) where it is used for plot lifetime management (i.e., tracking which plots are locked).
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
391153002
robertphillips [Wed, 16 Jul 2014 20:21:21 +0000 (13:21 -0700)]
Chromium no longer needs the SkPicture default constructor
With the landing of the Chromium CL (Remove use of default SkPicture constructor - https://codereview.chromium.org/
387343003/) Chromium should no longer require the SK_SUPPORT_LEGACY_DEFAULT_PICTURE_CTOR flag.
R=halcanary@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
398463002
qiankun.miao [Wed, 16 Jul 2014 20:21:15 +0000 (13:21 -0700)]
Make gdb work for 64-bit Skia
BUG=skia:
R=djsollen@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/
398733002
Mike Klein [Wed, 16 Jul 2014 20:20:12 +0000 (16:20 -0400)]
rebaseline most dw changes
BUG=skia:
Review URL: https://codereview.chromium.org/
402443002
Derek Sollenberger [Wed, 16 Jul 2014 19:51:39 +0000 (15:51 -0400)]
Fix broken android framework builds where 32-bit MIPS compilers lack 64-bit __sync operators.
R=mtklein@google.com, reed@google.com, scroggo@google.com
Review URL: https://codereview.chromium.org/
398153002
Mike Klein [Wed, 16 Jul 2014 19:20:58 +0000 (15:20 -0400)]
Remove yet-unused 64-bit atomic hooks.
For now, I think we'll just be using sk_atomic_inc on 64-bit values, so
let's cut out the dead code for now.
NOTREECHECKS=true
BUG=skia:
R=bsalomon@google.com
Review URL: https://codereview.chromium.org/
398003004
Derek Sollenberger [Wed, 16 Jul 2014 19:20:01 +0000 (15:20 -0400)]
Remove outdated compiler restrictions.
R=scroggo@google.com
Review URL: https://codereview.chromium.org/
394263002
Mike Klein [Wed, 16 Jul 2014 18:19:54 +0000 (14:19 -0400)]
Skip tiling on bitmapscroll:
- off by exactly one pixel when using DirectWrite
- also at least one pixel off on ChromeOS
BUG=skia:
R=bungeman@google.com
Review URL: https://codereview.chromium.org/
394243002
Mike Klein [Wed, 16 Jul 2014 17:26:19 +0000 (13:26 -0400)]
Reexport skia_gdi.
BUG=skia:
Review URL: https://codereview.chromium.org/
398043004
Mike Klein [Wed, 16 Jul 2014 17:11:50 +0000 (13:11 -0400)]
Put skia_directwrite back for now.
BUG=skia:
Review URL: https://codereview.chromium.org/
397073002
Mike Klein [Wed, 16 Jul 2014 17:06:04 +0000 (13:06 -0400)]
skia_directwrite -> skia_gdi
This will require lots of rebaselines and a bot CL to swap our lone direct write bot to a lone GDI bot.
BUG=skia:
R=bungeman@google.com
Review URL: https://codereview.chromium.org/
394223003
bungeman [Wed, 16 Jul 2014 16:10:41 +0000 (09:10 -0700)]
Revert of Reopened: Caching the result of readPixelsSupported (https://codereview.chromium.org/
364193004/)
Reason for revert:
This appears to be causing failures on Android when running tests.
Original issue's description:
> Caching the result of readPixelsSupported
>
> The call was calling GR_GL_GetIntegerv 2 times for each readPixels
> and thus was causing a loss of performance
>
> (resubmit of issue
344793008)
>
> Benchmark url: http://packages.gkny.fr/tst/index.html
>
> BUG=skia:2681
>
> Committed: https://skia.googlesource.com/skia/+/
753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
>
> Committed: https://skia.googlesource.com/skia/+/
8339371f1ec3c57a0741932fd96bff32c53d4e54
R=junov@chromium.org, reed@chromium.org, bsalomon@chromium.org, mtklein@google.com, bsalomon@google.com, piotaixr@chromium.org
TBR=bsalomon@chromium.org, bsalomon@google.com, junov@chromium.org, mtklein@google.com, piotaixr@chromium.org, reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2681
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/
395203002
epoger [Wed, 16 Jul 2014 15:28:23 +0000 (08:28 -0700)]
make gm self-tests launch python unittests automatically
(not just within the rebaseline_server subdirectory)
Generally useful, but needed asap for my work on http://skbug.com/2752 ('split existing "gpu" GM results into "gl" and "gles"')
BUG=skia:677
NOTREECHECKS=True
NOTRY=True
R=rmistry@google.com
TBR=rmistry
Author: epoger@google.com
Review URL: https://codereview.chromium.org/
398043002
mtklein [Wed, 16 Jul 2014 13:16:43 +0000 (06:16 -0700)]
Revert of Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys. (https://codereview.chromium.org/
379113004/)
Reason for revert:
Most likely candidate for Valgrind failures:
[21:10:08.755668] ==3036== Use of uninitialised value of size 8
[21:10:08.755753] ==3036== at 0x734AB2: GrGpuGL::ProgramCache::getProgram(GrGLProgramDesc const&, GrEffectStage const**, GrEffectStage const**) (GrGpuGL_program.cpp:107)
[21:10:08.755788] ==3036== by 0x734ED2: GrGpuGL::flushGraphicsState(GrGpu::DrawType, GrDeviceCoordTexture const*) (GrGpuGL_program.cpp:253)
[21:10:08.755811] ==3036== by 0x6E81C2: GrGpu::setupClipAndFlushState(GrGpu::DrawType, GrDeviceCoordTexture const*, GrDrawState::AutoRestoreEffects*, SkRect const*) (GrGpu.cpp:350)
[21:10:08.755837] ==3036== by 0x6E9BE8: GrGpu::onDraw(GrDrawTarget::DrawInfo const&) (GrGpu.cpp:390)
[21:10:08.755858] ==3036== by 0x6EEECE: GrInOrderDrawBuffer::flush() (GrDrawTarget.h:506)
[21:10:08.755879] ==3036== by 0x6D0EB4: GrContext::flush(int) (GrContext.cpp:1327)
[21:10:08.755900] ==3036== by 0x6D3F8F: GrContext::writeTexturePixels(GrTexture*, int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrContext.cpp:1349)
[21:10:08.755922] ==3036== by 0x6D39D7: GrContext::writeRenderTargetPixels(GrRenderTarget*, int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrContext.cpp:1632)
[21:10:08.755949] ==3036== by 0x6FFDF3: GrRenderTarget::writePixels(int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrRenderTarget.cpp:45)
[21:10:08.755978] ==3036== by 0x735563: SkGpuDevice::onWritePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkGpuDevice.cpp:280)
[21:10:08.756003] ==3036== by 0x57A048: SkBaseDevice::writePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkDevice.cpp:106)
[21:10:08.756025] ==3036== by 0x56D0AE: SkCanvas::writePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkCanvas.cpp:700)
[21:10:08.756050] ==3036== by 0x56D156: SkCanvas::writePixels(SkBitmap const&, int, int) (SkCanvas.cpp:652)
[21:10:08.756077] ==3036== by 0x5109B6: test_WritePixels(skiatest::Reporter*, GrContextFactory*) (WritePixelsTest.cpp:464)
[21:10:08.756099] ==3036== by 0x51114C: skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (WritePixelsTest.cpp:361)
[21:10:08.756122] ==3036== by 0x406BE8: skiatest::Test::run() (Test.cpp:107)
[21:10:08.756145] ==3036== by 0x4064C2: SkTestRunnable::run() (skia_test.cpp:109)
[21:10:08.756167] ==3036== by 0x405D1A: tool_main(int, char**) (skia_test.cpp:221)
[21:10:08.756189] ==3036== by 0x405F75: main (skia_test.cpp:239)
[21:10:08.756211] ==3036== Uninitialised value was created by a stack allocation
[21:10:08.756233] ==3036== at 0x734CC8: GrGpuGL::flushGraphicsState(GrGpu::DrawType, GrDeviceCoordTexture const*) (GrGpuGL_program.cpp:213)
Original issue's description:
> Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys.
>
> Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF.
>
> Cleans up docs around GrBackendEffectFactory.
>
> Committed: https://skia.googlesource.com/skia/+/
c0ea398aff8254e31152cbb94c9ab6150428e252
R=robertphillips@google.com, jvanverth@google.com, bsalomon@google.com
TBR=bsalomon@google.com, jvanverth@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
394213002
ljagielski [Wed, 16 Jul 2014 03:02:04 +0000 (20:02 -0700)]
Leaking CGBitmapContext in SkFontHost_mac
third_party/skia/src/ports/SkFontHost_mac.cpp: don't increase retain count of
newly assigned CFTypeRef in AutoCFRelease::reset(). Each time CFTypeRef is
assigned to AutoCFRelease, AutoCFRelease becomes its sole owner.
BUG=skia:
R=reed@google.com, bungeman@google.com, rmistry@google.com, sheyang@chromium.org
Author: ljagielski@opera.com
Review URL: https://codereview.chromium.org/
393513003
bungeman [Wed, 16 Jul 2014 03:01:56 +0000 (20:01 -0700)]
Fix some issues with sfnt maxp headers.
The TT version was missing the second to last member,
and the names of the asserts in the CFF version were wrong.
R=mtklein@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/
390203003
reed [Wed, 16 Jul 2014 02:56:55 +0000 (19:56 -0700)]
remove dead code from sample
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
393063002
scroggo [Wed, 16 Jul 2014 02:56:48 +0000 (19:56 -0700)]
Remove kImageIsImmutable_Flag.
This flag was only used when setting or checking SkBitmap's
immutability when it did not have an SkPixelRef. Now that an
SkBitmap *must* have one in order to draw (e.g. you can no
longer have an SkBitmap that owns its pixels directly), its
immutabity without an SkPixelRef makes no sense.
Also, now that the flags are not contiguous starting from
0x01, use a more appropriate check to ensure only meaningful
flags are used.
R=reed@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
387083002
qiankun.miao [Wed, 16 Jul 2014 02:51:41 +0000 (19:51 -0700)]
Use va_list variable safely
va_list variable will be invalid after the first call. Use va_copy to
initialize the va_list for another call.
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/
394763004
halcanary [Wed, 16 Jul 2014 02:51:35 +0000 (19:51 -0700)]
Make SkTextureCompressor compile with Clang 3.5
kR11EACModifierPalettes moved inside #ifdef where it is used
R=mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
391113002
robertphillips [Wed, 16 Jul 2014 02:46:35 +0000 (19:46 -0700)]
Always have GrLayer's rect be valid
This CL just makes atlasing easier/clearer since there is a separate atlased query method. Not using the rect as a signal also simplifies the rendering of the layer in SkGpuDevice.cpp.
This is calved off from (Add atlased layer purging - https://codereview.chromium.org/
367073002/)
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
384233002
dandov [Wed, 16 Jul 2014 02:46:26 +0000 (19:46 -0700)]
Fixed the bug in drawVertices when no colors or texture coordinates are provided by modifying the grprimitive to klines and adjusting the indices.
BUG=skia:2745
Committed: https://skia.googlesource.com/skia/+/
612364de87cb2012239c4f6435e8e11760617fdc
R=jvanverth@google.com, bsalomon@google.com, egdaniel@google.com
Author: dandov@google.com
Review URL: https://codereview.chromium.org/
387113002
bsalomon [Wed, 16 Jul 2014 02:41:17 +0000 (19:41 -0700)]
Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys.
Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF.
Cleans up docs around GrBackendEffectFactory.
R=robertphillips@google.com, jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
379113004
piotaixr [Wed, 16 Jul 2014 02:41:08 +0000 (19:41 -0700)]
Caching the result of readPixelsSupported
The call was calling GR_GL_GetIntegerv 2 times for each readPixels
and thus was causing a loss of performance
(resubmit of issue
344793008)
Benchmark url: http://packages.gkny.fr/tst/index.html
BUG=skia:2681
Committed: https://skia.googlesource.com/skia/+/
753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
R=junov@chromium.org, reed@chromium.org, bsalomon@chromium.org, mtklein@google.com, bsalomon@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/
364193004
Mike Klein [Tue, 15 Jul 2014 23:17:44 +0000 (19:17 -0400)]
revert timer changes
BUG=skia:
Review URL: https://codereview.chromium.org/
397843002
Mike Klein [Tue, 15 Jul 2014 23:04:14 +0000 (19:04 -0400)]
nanobench on Windows: try compiler barriers around timer instead.
BUG=skia:
Review URL: https://codereview.chromium.org/
391193003
Mike Klein [Tue, 15 Jul 2014 22:39:49 +0000 (18:39 -0400)]
Disable LTCG for nanobench.
NOTREECHECKS=true
BUG=skia:
R=mtklein@google.com
Review URL: https://codereview.chromium.org/
393953006
Mike Klein [Tue, 15 Jul 2014 21:56:37 +0000 (17:56 -0400)]
Try to debug Windows infinite loops in nanobench.
NOTREECHECKS=true
BUG=skia:
Review URL: https://codereview.chromium.org/
396753004
mtklein [Tue, 15 Jul 2014 21:38:53 +0000 (14:38 -0700)]
Keep at most one GPU device alive at a time.
NOTREECHECKS=true
BUG=skia:
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
392013004
mtklein [Tue, 15 Jul 2014 20:29:34 +0000 (13:29 -0700)]
SkAutoRef seems lonely. Might as well delete it.
(On the other hand, SkAutoUnref is well-used.)
NOTREECHECKS=true
BUG=skia:
R=bungeman@google.com, mtklein@google.com, reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
393953004
Mike Klein [Tue, 15 Jul 2014 20:10:02 +0000 (16:10 -0400)]
DM: destroy contexts after each GPU task instead of before
This is for consistency with bench/nanobench/GM. Haven't seen it make a difference.
BUG=skia:
Review URL: https://codereview.chromium.org/
397743004
scroggo [Tue, 15 Jul 2014 19:34:26 +0000 (12:34 -0700)]
Change SkCanvasState to use inheritance.
The base class, SkCanvasState, now holds the version, width, and
height. These fields will always be a necessary part of the class.
(Also add in some padding.)
The other fields, which may change, have been moved into the
subclass, SkCanvasState_v1. If/when the version changes, it will
correspond to a new subclass.
In SkCanvasStateUtils::CreateFromCanvasState, check the version on
the base class, then do a static_cast to the version corresponding
to SkCanvasState::version.
Remove CANVAS_STATE_VERSION, which is redundant with the version
specified by the subclass.
Use unambiguous type for rowBytes.
Build Android with SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG. This allows us
to run the full suite of CanvasState tests. It is also representative
of what will be used on Android by WebView.
Fix CanvasStateTest where it was broken inside ifdef'ed out code.
Use SkCanvas::getBaseLayerSize() instead of the deprecated
SkCanvas::getDeviceSize().
Update the comments in the header to be more clear. In particular,
an SkCanvasState can only be used to pass an SkCanvas' state to a
future version of Skia (or the same); not an older version.
NOTREECHECKS=true
BUG=b/
15693384
R=reed@google.com, mtklein@google.com, djsollen@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
372003002
Mike Klein [Tue, 15 Jul 2014 17:40:19 +0000 (13:40 -0400)]
destroyContexts after each bench instead of before
BUG=skia:
Review URL: https://codereview.chromium.org/
394893002
mtklein [Tue, 15 Jul 2014 17:30:31 +0000 (10:30 -0700)]
Give windows boring bars and use 'us' for microseconds.
NOTREECHECKS=true
BUG=skia:
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
393673006
Mike Klein [Tue, 15 Jul 2014 16:01:06 +0000 (12:01 -0400)]
force another build
BUG=skia:
Review URL: https://codereview.chromium.org/
397493008
Mike Klein [Tue, 15 Jul 2014 15:49:58 +0000 (11:49 -0400)]
Force a build for nanobench.
BUG=skia:
Review URL: https://codereview.chromium.org/
391983002
mtklein [Tue, 15 Jul 2014 15:27:06 +0000 (08:27 -0700)]
Add --resetGpuContext to both DM and nanobench.
Defaulting to true to be conservative for now.
BUG=skia:
NOTREECHECKS=true
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
398483005
kozyatinskiy [Tue, 15 Jul 2014 15:08:01 +0000 (11:08 -0400)]
https://chromiumcodereview.appspot.com/
331133004/
patch from issue
331133004
Mike Klein [Tue, 15 Jul 2014 15:00:26 +0000 (11:00 -0400)]
Another forced run for Android bots.
BUG=skia:
Review URL: https://codereview.chromium.org/
388683005
Mike Klein [Tue, 15 Jul 2014 14:37:53 +0000 (10:37 -0400)]
force build
BUG=skia:
Review URL: https://codereview.chromium.org/
391103002
borenet [Tue, 15 Jul 2014 12:30:47 +0000 (05:30 -0700)]
Whitespace change to test failures after https://skia.googlesource.com/buildbot/+/
0e977d0753ecc81fd4e45e088ebc5bc16f0b4b75 and https://skia.googlesource.com/buildbot/+/
0e6fdada778ad14e38b25f8b5827a8b156674045
BUG=skia:
R=mtklein@google.com
TBR=mtklein
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
397613003
bensong [Mon, 14 Jul 2014 23:36:06 +0000 (16:36 -0700)]
manual bench rebase after f459c85, adjusted with
ed458688e284508f17a0408a093d89a8b5966e32
R=robertphillips@google.com
TBR=robertphillips@google.com
Bypassing trybots:
NOTRY=true
Author: bensong@google.com
Review URL: https://codereview.chromium.org/
394673002
dandov [Mon, 14 Jul 2014 21:52:36 +0000 (14:52 -0700)]
Revert of drawVertices bug on gpu side (https://codereview.chromium.org/
387113002/)
Reason for revert:
compare gms failed on 6 images, I will check them and determine if they need a rebaseline or if the output is incorrect.
Original issue's description:
> Fixed the bug in drawVertices when no colors or texture coordinates are provided by modifying the grprimitive to klines and adjusting the indices.
>
> BUG=skia:2745
>
> Committed: https://skia.googlesource.com/skia/+/
612364de87cb2012239c4f6435e8e11760617fdc
R=jvanverth@google.com, bsalomon@google.com, egdaniel@google.com
TBR=bsalomon@google.com, egdaniel@google.com, jvanverth@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2745
Author: dandov@google.com
Review URL: https://codereview.chromium.org/
395613002
reed [Mon, 14 Jul 2014 21:39:15 +0000 (14:39 -0700)]
patch from issue
383923002
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
394603003
dandov [Mon, 14 Jul 2014 21:26:04 +0000 (14:26 -0700)]
Fixed the bug in drawVertices when no colors or texture coordinates are provided by modifying the grprimitive to klines and adjusting the indices.
BUG=skia:2745
R=jvanverth@google.com, bsalomon@google.com, egdaniel@google.com
Author: dandov@google.com
Review URL: https://codereview.chromium.org/
387113002
halcanary [Mon, 14 Jul 2014 19:59:59 +0000 (12:59 -0700)]
Fix memory leak introduced in crrev.com/
387863005
NOTRY=true
R=bungeman@google.com, mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
395543002
tfarina [Mon, 14 Jul 2014 19:32:47 +0000 (12:32 -0700)]
Cleanup: Remove unused/unimplemented SkTextLayout.h.
Nobody uses it in Skia, Chromium and Blink. And it does not have any
implementation either.
BUG=None
TEST=make all
R=mtklein@google.com, reed@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/
385323002
mtklein [Mon, 14 Jul 2014 19:28:47 +0000 (12:28 -0700)]
nanobench: add --runOnce.
BUG=skia:
R=egdaniel@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
392583005
krajcevski [Mon, 14 Jul 2014 19:00:04 +0000 (12:00 -0700)]
Add support for NEON intrinsics to speed up texture compression. We can
now convert the time that we would have spent uploading the texture to
compressing it giving a net 50% memory savings for these things.
Committed: https://skia.googlesource.com/skia/+/
bc9205be0a1094e312da098348601398c210dc5a
R=robertphillips@google.com, mtklein@google.com, kevin.petit@arm.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
390453002
mtklein [Mon, 14 Jul 2014 18:30:37 +0000 (11:30 -0700)]
nanobench: support --outResultsFile
BUG=skia:
R=kelvinly@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
390933002
scroggo [Mon, 14 Jul 2014 17:25:00 +0000 (10:25 -0700)]
Include SkTypes before using ifdefs.
Fixes Android framework build.
When building for the Android framework, we depend on SkUserConfig.h
to define things like SK_SUPPORT_GPU. So we cannot have the first
include inside a guard requring SK_SUPPORT_GPU to be defined. Include
SkTypes first, which will pull in SkUserConfig, define the flag, and
allow us to include GrContextFactory.h.
R=reed@google.com, djsollen@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
394533003
scroggo [Mon, 14 Jul 2014 17:22:02 +0000 (10:22 -0700)]
Alphabetize defines in generated SkUserConfig.
When generating SkUserConfig.h for Android, alphabetize the defines.
This will make one merge much harder to look at, but every following
one much easier.
R=mtklein@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
388693003
senorblanco [Mon, 14 Jul 2014 17:19:54 +0000 (10:19 -0700)]
Fix for saveLayer() with filters vs. the BBox Hierarchy.
When building acceleration structures for SkPicture, we must transform
the primitive's bounds not only by its own SkPaint, but by the paints of
any saveLayer()s currently active above it.
We do this by pushing the SkPaint onto a stack on
saveLayer(), and popping them on restore(). We also push
a NULL paint in save(), so that the pushes and pops are
balanced.
BUG=skia:2734
R=mtklein@google.com, reed@google.com, robertphillips@google.com
Committed: https://skia.googlesource.com/skia/+/
6ca0b6a46cbe9bef3e2b9b9db813ec864efd62de
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
380373003
reed [Mon, 14 Jul 2014 17:13:57 +0000 (10:13 -0700)]
remove unused SkPixelRef constructor
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
390893002
reed [Mon, 14 Jul 2014 16:21:31 +0000 (09:21 -0700)]
remove SK_SUPPORT_LEGACY_PIXELREF_UNFLATTENABLE code
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
387313004
halcanary [Mon, 14 Jul 2014 16:12:12 +0000 (09:12 -0700)]
Move SkPDFStream back to SkStream to save memory.
SkPDFStream stores data as a SkStreamRewindable to minimize
deep duplication and memory overhead.
SkStreamToStreamRewindable function to deal with fact that
SkTypeface returns a SkStream.
BUG=skia:2743
R=djsollen@google.com, mtklein@google.com, bungeman@google.com, reed@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
387863005
halcanary [Mon, 14 Jul 2014 15:32:18 +0000 (08:32 -0700)]
Revert of Enable the SSSE3 compile time check on all platforms. (https://codereview.chromium.org/
391693004/)
Reason for revert:
windows fail
Original issue's description:
> Enable the SSSE3 compile time check on all platforms.
>
> BUG=skia:2746
>
> Committed: https://skia.googlesource.com/skia/+/
ee349531446ae2a8336b0903e05d0b2150d2131f
R=mtklein@google.com, djsollen@google.com
TBR=djsollen@google.com, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2746
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
390063002
senorblanco [Mon, 14 Jul 2014 15:25:33 +0000 (08:25 -0700)]
Revert "Fix for saveLayer() with filters vs. the BBox Hierarchy." and
"resizeimagefiler is ok with a BBH now".
This reverts commits
6ca0b6a46cbe9bef3e2b9b9db813ec864efd62de and
8fa73202eaffbd7591ee218ad452b9afde81f505.
Apparently causing problems in SKP playback.
R=mtklein@google.com, robertphillips@google.com
TBR=mtklein, robertphillips
BUG=skia:
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
381353005
djsollen [Mon, 14 Jul 2014 14:58:41 +0000 (07:58 -0700)]
Enable the SSSE3 compile time check on all platforms.
BUG=skia:2746
R=mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
391693004
scroggo [Mon, 14 Jul 2014 14:58:34 +0000 (07:58 -0700)]
Remove last SK_SUPPORT_LEGACY_SHADER_LOCALMATRIX.
Should have been included in https://codereview.chromium.org/
379323002
but it was overlooked. As of that CL, the flag does not do anything.
BUG=skia:1976
R=reed@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
390033002
robertphillips [Mon, 14 Jul 2014 14:53:26 +0000 (07:53 -0700)]
Make SkPictureShader and SkPictureImageFilter use const SkPictures
R=mtklein@google.com, reed@google.com
TBR=reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
390023002
scroggo [Mon, 14 Jul 2014 14:53:18 +0000 (07:53 -0700)]
Remove unused kImageIsOpaque_Flag.
This flag is never set or read. We now look at the alpha type to
determine opacity.
R=reed@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
385943003
djordje.pesut [Mon, 14 Jul 2014 14:48:11 +0000 (07:48 -0700)]
MIPS: added optimization for SkRGB16_Opaque_Blitter::blitMask
gaint is ~30%
R=djsollen@google.com
Author: djordje.pesut@imgtec.com
Review URL: https://codereview.chromium.org/
357693002
piotaixr [Mon, 14 Jul 2014 14:48:04 +0000 (07:48 -0700)]
Deleted SkImage::newShaderClamp: not used, not implemented.
Implemented SkImage::newShader.
BUG=skia:2701, 344804
R=junov@chromium.org, reed@chromium.org, bsalomon@chromium.org, reed@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/
345463009
Robert Phillips [Mon, 14 Jul 2014 13:28:15 +0000 (09:28 -0400)]
Reallow default SkPicture constructor for Chromium
This is breaking the Chromium build in:
external/chromium_org/android_webview/browser/browser_view_renderer.cc
TBR=reed@google.com
Review URL: https://codereview.chromium.org/
392593002
robertphillips [Sun, 13 Jul 2014 17:09:42 +0000 (10:09 -0700)]
Make GrAtlas::removePlot static
This CL just calves off a small chunk of (Add atlased layer purging - https://codereview.chromium.org/
367073002/).
R=jvanverth@google.com
TBR=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
388103002
Robert Phillips [Sun, 13 Jul 2014 16:00:50 +0000 (12:00 -0400)]
Remove Skia's use of the default SkPicture constructor and multi-clone
This cannot be landed until (Chrome: Switch to one-at-a-time SkPicture::clone interface - https://codereview.chromium.org/
380323002/) has landed.
R=mtklein@google.com
TBR=reed@google.com
Review URL: https://codereview.chromium.org/
388833003
robertphillips [Sun, 13 Jul 2014 14:55:53 +0000 (07:55 -0700)]
Remove SkPicture copy constructor
Given where we're heading with SkPicture why would you need to make a copy?
R=reed@google.com, mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
381133002
reed [Sun, 13 Jul 2014 11:32:32 +0000 (04:32 -0700)]
Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels
This reverts commit
651eaeadeb0b1407f5fe192aeda90db1680fa2b8.
TBR=
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/
390693002
reed [Sun, 13 Jul 2014 04:10:52 +0000 (21:10 -0700)]
don't draw unpremul alpha (yet)
without these early exits, we can treat unpremul colors as premul, generating asserts and wacky colors.
TBR=
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/
386203002
reed [Sat, 12 Jul 2014 20:16:10 +0000 (13:16 -0700)]
Revert of Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels (https://codereview.chromium.org/
388803007/)
Reason for revert:
still failing (randomly?) bench sometimes. need stack dump to diagnose.
Original issue's description:
> Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels
> usning it.
>
> Revert "Revert of add readPixels() to SkBitmap (https://codereview.chromium.org/
377303002/)"
>
> This reverts commit
d08cb905a7cc80d8fb868bbd14fffe1cd68adcce.
>
> TBR=scroggo@google.com
>
> Committed: https://skia.googlesource.com/skia/+/
debba5c3d091159149f8a88ab5dcd44dd72e0dc7
R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/
382543005
reed [Sat, 12 Jul 2014 19:26:36 +0000 (12:26 -0700)]
Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels
usning it.
Revert "Revert of add readPixels() to SkBitmap (https://codereview.chromium.org/
377303002/)"
This reverts commit
d08cb905a7cc80d8fb868bbd14fffe1cd68adcce.
R=reed@chromium.org
TBR=scroggo@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
388803007
halcanary [Sat, 12 Jul 2014 02:45:23 +0000 (19:45 -0700)]
Make SkPDFFont::fFontInfo a const pointer.
BUG=skia:2742
R=djsollen@google.com, scroggo@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
383063007
jvanverth [Sat, 12 Jul 2014 02:45:16 +0000 (19:45 -0700)]
Refactor SkGrFontScaler and SkGrFontKey into non-virtual versions.
This is a pre-cleanup for another change, but has the side benefit of making
the code simpler in general.
No perf increase, despite removing virtual functions.
R=bsalomon@google.com, egdaniel@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
385263002
caryclark [Fri, 11 Jul 2014 20:21:17 +0000 (13:21 -0700)]
fix ios break
R=reed@android.com
TBR=reed
NOTREECHECKS=TRUE
NOTRY=TRUE
BUG=skia:
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/
388933003