mtklein [Wed, 6 Aug 2014 18:57:00 +0000 (11:57 -0700)]
SkPicture: try to no-op away clone().
Will actually enable this by #defining SK_PICTURE_CLONE_NOOP in Chrome's SkUserConfig.h as a separate CL after this rolls in.
BUG=skia:
R=reed@google.com, robertphillips@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
447753003
robertphillips [Wed, 6 Aug 2014 18:26:53 +0000 (11:26 -0700)]
Second pass at rebaselining flaky N4 performance triggers
R=bungeman@google.com
TBR=bungeman@google.com
NOTRY=true
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
444063002
bungeman [Wed, 6 Aug 2014 18:12:20 +0000 (11:12 -0700)]
Implement SkFontMgr_Android::onMatchFamilyStyleCharacter.
This will allow us to replace SkGetFallbackFamilyNameForChar
and also eventually fix issues with it's reliance on names.
R=djsollen@google.com, tomhudson@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/
427293003
krajcevski [Wed, 6 Aug 2014 18:12:14 +0000 (11:12 -0700)]
Allow custom blitters to be passed to SkDraw::drawPath
R=reed@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
444003004
halcanary [Wed, 6 Aug 2014 18:07:11 +0000 (11:07 -0700)]
Roll android/third_party/jpeg DEPS
BUG=skia:2791
R=djsollen@google.com
TBR=djsollen@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
449493004
egdaniel [Wed, 6 Aug 2014 18:07:02 +0000 (11:07 -0700)]
Create struct in GrDrawState to hold key DrawState data.
Eventually this struct will be used to easily set values for a reduced, optimized drawstate
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
448453002
djsollen [Wed, 6 Aug 2014 18:01:58 +0000 (11:01 -0700)]
Remove references to __system_property_get from Skia
BUG=392201
R=tomhudson@chromium.org, bungeman@google.com, tomhudson@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
433163002
bsalomon [Wed, 6 Aug 2014 18:01:44 +0000 (11:01 -0700)]
Fix drawVertices() on GPU when texs=colors=shaders=indices=null
R=reed@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
449433003
epoger [Wed, 6 Aug 2014 17:56:50 +0000 (10:56 -0700)]
rebaseline_server: add "prefetch" directive that just warms the cache without awaiting results
This will allow the buildbots to warn the production rebaseline_server: "I just
generated some new results; here's a comparison that a human might ask for
soon. Download whatever images and generate whatever diffs you would need to
provide those results."
BUG=skia:1942
NOTREECHECKS=true
NOTRY=true
R=rmistry@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/
443013002
bsalomon [Wed, 6 Aug 2014 17:52:33 +0000 (10:52 -0700)]
Add angle config to nanobench and make angle a default config for dm and nanobench.
NOTREECHECKS=true
R=mtklein@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
441333003
mtklein [Wed, 6 Aug 2014 17:08:42 +0000 (10:08 -0700)]
On the bots, there's no need to link GMs into SampleApp.
We build SampleApp on the bots to make sure it's not broken, but we don't run it. So, there's no need to link in all the GMs as samples.
This reduces the number of copies of our GMs from 4 to 3 (gm, dm, and nanobench remain).
NOTREECHECKS=true
BUG=skia:2142
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
447803002
reed [Wed, 6 Aug 2014 16:54:19 +0000 (09:54 -0700)]
parameterize tesselation params
TBR=
NOTREECHECKS=True
Author: reed@google.com
Review URL: https://codereview.chromium.org/
446913002
mtklein [Wed, 6 Aug 2014 15:39:36 +0000 (08:39 -0700)]
Bye bye bench.
NOTREECHECKS=true
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
442343004
epoger [Wed, 6 Aug 2014 15:37:53 +0000 (08:37 -0700)]
rebaseline_server live queries: allow comparison against summary files within the Skia repo
This is a step towards providing SKP comparisons against expectations, not just
other actual results... we still need to allow the user to select
JSONKEY_EXPECTEDRESULTS vs JSONKEY_ACTUALRESULTS within the summary
files found.
BUG=skia:1942
NOTREECHECKS=true
NOTRY=true
R=rmistry@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/
442203002
bungeman [Wed, 6 Aug 2014 15:15:50 +0000 (11:15 -0400)]
Revert "Adds a GrGLPathRendering class that wraps the NV_path_rendering"
This reverts commit
5672da0fa54f31c9727568e9dd5fe82c6e1585bc.
This appears to be blocking the Skia roll by causing failures in the blink layout tests on the canvas-lost-gpu-context.html test.
The bisect for this can be seen at:
https://codereview.chromium.org/
449473002/
Original issue's description:
> Adds a GrGLPathRendering class that wraps the NV_path_rendering
> extension and manages its various API versions. It also provides
> backup implementations when certain NVpr methods from later API
> versions are not present on the current system.
>
> Committed: https://skia.googlesource.com/skia/+/
5672da0fa54f31c9727568e9dd5fe82c6e1585bc
bungeman [Wed, 6 Aug 2014 15:14:31 +0000 (11:14 -0400)]
Revert "Calculate rough approximations for nvpr path sizes"
This reverts commit
61bff7097251755bf9fa9a4ec60cc057c766b4a4.
This is built on
5672da0fa54f31c9727568e9dd5fe82c6e1585bc
which is causing blink test failures on canvas-lost-gpu-context.html.
Robert Phillips [Wed, 6 Aug 2014 14:50:53 +0000 (10:50 -0400)]
Add ASTC resource files
Review URL: https://codereview.chromium.org/
442363003
mtklein [Wed, 6 Aug 2014 14:46:30 +0000 (07:46 -0700)]
DM: expand peak RAM usage to Mac and Android too.
BUG=skia:
NOTREECHECKS=true
R=halcanary@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
445963002
reed [Wed, 6 Aug 2014 14:00:27 +0000 (07:00 -0700)]
fix hittest in Patch sample
TBR=
BUG=skia:
Author: reed@google.com
Review URL: https://codereview.chromium.org/
441373002
djsollen [Wed, 6 Aug 2014 13:58:06 +0000 (06:58 -0700)]
Remove ALL font fallback logic from Skia.
R=reed@google.com, bungeman@google.com, caryclark@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
434623002
mtklein [Wed, 6 Aug 2014 13:55:12 +0000 (06:55 -0700)]
SkThreadPool and co. are not public.
BUG=skia:
R=reed@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
444583006
borenet [Wed, 6 Aug 2014 13:04:00 +0000 (06:04 -0700)]
Remove Mac 10.8 x86 Perf expectations
This is one of the problems with the way the RecreateSKPs bot determines which trybots to run: Rather than use a hard-coded list, it figures out which bots have perf expectations and then runs those bots to generate new expectations. This is problematic when we remove a bot because we have to remove its expectations as well. This is really not that different from maintaining a hard-coded list...
NOTRY=true
BUG=skia:
R=bensong@google.com, rmistry@google.com
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
443093002
robertphillips [Wed, 6 Aug 2014 12:16:29 +0000 (05:16 -0700)]
Rebaseline flaky N4 & N7 performance triggers
R=bungeman@google.com
TBR=bungeman@google.com
NOTRY=true
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
440423002
senorblanco [Tue, 5 Aug 2014 21:27:27 +0000 (14:27 -0700)]
Greenify bench bot Perf-Android-Nexus10-MaliT604-Arm7-Release at build 2563
R=bsalomon@google.com
TBR=bsalomon@google.com
Bypassing trybots:
NOTRY=true
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
442083003
senorblanco [Tue, 5 Aug 2014 21:26:28 +0000 (14:26 -0700)]
Greenify bench bot Perf-Android-GalaxyNexus-SGX540-Arm7-Release at build 1811
R=bsalomon@google.com
TBR=bsalomon@google.com
Bypassing trybots:
NOTRY=true
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
443743002
krajcevski [Tue, 5 Aug 2014 21:13:36 +0000 (14:13 -0700)]
Add support for all compressed formats in KTX file format
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
440783004
tomhudson [Tue, 5 Aug 2014 20:35:00 +0000 (13:35 -0700)]
Parses sample code provided by Android project. Attempts to keep FontFamily data structures produced consistent with expectations of previous versions of Skia.
R=bungeman@google.com, djsollen@google.com, tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
446473003
ch.dumez [Tue, 5 Aug 2014 19:20:19 +0000 (12:20 -0700)]
Expose SkColorTable class
Expose SkColorTable class as it is used in SkBitmap::allocPixels(SkColorTable*)
API, which is already exposed.
R=reed@google.com, ben@chromium.org
Author: ch.dumez@samsung.com
Review URL: https://codereview.chromium.org/
418173011
senorblanco [Tue, 5 Aug 2014 19:05:03 +0000 (12:05 -0700)]
Greenify bench bot Perf-Ubuntu12-ShuttleA-GTX660-x86-Release at build 1551
R=bensong@google.com, bensong@chromium.org
Bypassing trybots:
NOTRY=true
BUG=2794
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
442903002
tomhudson [Tue, 5 Aug 2014 19:01:09 +0000 (12:01 -0700)]
Fix bad gypi
Must not depend directly on ports; depend on skialib!
R=bungeman@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
442883002
cdalton [Tue, 5 Aug 2014 17:58:19 +0000 (10:58 -0700)]
Calculate rough approximations for nvpr path sizes
Calculates a rough approximation of the actual value for gpuMemorySize
in GrGLPath and GrGLPathRange, instead of assuming every path is the
same fixed size.
BUG=skia:
R=bsalomon@google.com, markkilgard@gmail.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
442603002
epoger [Tue, 5 Aug 2014 17:07:22 +0000 (10:07 -0700)]
teach rebaseline_server to generate diffs of rendered SKPs
Creates a new live-view.html page, served by the rebaseline_server, that will display diffs between two sets of rendered SKP images.
BUG=skia:1942
NOTRY=true
R=rmistry@google.com
Author: epoger@google.com
Review URL: https://codereview.chromium.org/
424263005
bsalomon [Tue, 5 Aug 2014 14:50:06 +0000 (07:50 -0700)]
Move functions from GrDrawState.h to GrDrawState.cpp and delete unused functions.
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
427713005
krajcevski [Tue, 5 Aug 2014 14:37:26 +0000 (07:37 -0700)]
Add ETC1 format to SkTextureCompressor
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432143002
bsalomon [Tue, 5 Aug 2014 14:35:56 +0000 (07:35 -0700)]
Don't compare constant color and coverage between GrDrawStates when they are provided by vertex attributes.
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
439273007
mtklein [Tue, 5 Aug 2014 14:19:46 +0000 (07:19 -0700)]
For some reason, starting tests before gms makes DM run much faster.
Must be getting the path ops tests going early helps?
On my desktop,
Release: 50s -> 24s
Debug: 62s -> 40s
BUG=skia:
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
435423003
bsalomon [Tue, 5 Aug 2014 14:15:57 +0000 (07:15 -0700)]
Replace op== with CombineIfPossible in GrDrawState.
R=egdaniel@google.com, robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
439853002
rmistry [Tue, 5 Aug 2014 13:55:14 +0000 (06:55 -0700)]
Test new CQ bot
TBR=
(SkipBuildbotRuns)
BUG=skia:
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
441833004
tomhudson [Tue, 5 Aug 2014 13:36:11 +0000 (06:36 -0700)]
Test and generalize font configuration parser
Add a basic unit test for the Android font configuration parser.
Add a check for the new LMP file format; on detection, switch to a new
(as-yet unwritten) parser.
R=bungeman@google.com, djsollen@google.com, tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
439813002
mtklein [Tue, 5 Aug 2014 10:51:04 +0000 (03:51 -0700)]
Revert of whitespace change to force a build (https://codereview.chromium.org/
432183002/)
Reason for revert:
force
Original issue's description:
> whitespace change to force a build
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
490d49c5dcc4b2242c9b25f082b23ec5e842c4e7
R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
442603005
mtklein [Mon, 4 Aug 2014 21:10:19 +0000 (14:10 -0700)]
Print max memory usage on Linux.
This is meant to help debug http://skbug.com/2793
BUG=skia:2793
R=halcanary@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
433403005
mtklein [Mon, 4 Aug 2014 20:57:39 +0000 (13:57 -0700)]
Fix calibration loop failure condition.
With the old logic, if the last attempt succeeded, we'd say we failed.
We also print two lines for loop calibration failures. Quiet that down.
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
431503004
mtklein [Mon, 4 Aug 2014 20:11:19 +0000 (13:11 -0700)]
disable all warnings from nanomsg
They're annoying.
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
437323002
egdaniel [Mon, 4 Aug 2014 19:54:39 +0000 (12:54 -0700)]
Enable gpu Debug markers if tracing category skia.gpu is enabled
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
438023004
mtklein [Mon, 4 Aug 2014 19:51:19 +0000 (12:51 -0700)]
Force linking as C++ library.
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
420183004
cdalton [Mon, 4 Aug 2014 18:19:11 +0000 (11:19 -0700)]
Adds a GrGLPathRendering class that wraps the NV_path_rendering
extension and manages its various API versions. It also provides
backup implementations when certain NVpr methods from later API
versions are not present on the current system.
R=bsalomon@google.com, kkinnunen@nvidia.com, markkilgard@gmail.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/
437473002
mtklein [Mon, 4 Aug 2014 18:10:14 +0000 (11:10 -0700)]
Don't call out -lstdc++ -lm explicitly.
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
440643004
bsalomon [Mon, 4 Aug 2014 17:56:39 +0000 (10:56 -0700)]
Don't compare coord change matrices to determine effect compatibility when using explicit local coords.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
438053002
mtklein [Mon, 4 Aug 2014 17:18:27 +0000 (10:18 -0700)]
Remove dependency on std::string
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
437253003
dandov [Mon, 4 Aug 2014 17:02:00 +0000 (10:02 -0700)]
SkCanvas interface for drawing a patch.
Added function SkCanvas::drawPatch to the API. This function
receives the patch to draw and the paint.
Added function SkBaseDevice::drawPatch to the API. This function also receives the patch to draw and the paint.
Currently SkGpuDevice and SkBitmapDevice generate the mesh taking into
account the scale factor and call the corresponding device's drawVertices.
BUG=skia:
R=jvanverth@google.com, egdaniel@google.com, bsalomon@google.com
Author: dandov@google.com
Review URL: https://codereview.chromium.org/
424663006
mtklein [Mon, 4 Aug 2014 16:57:37 +0000 (09:57 -0700)]
Stop building tests in the Android tree.
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
440653004
krajcevski [Mon, 4 Aug 2014 16:47:31 +0000 (09:47 -0700)]
Revert of Add ETC1 format to SkTextureCompressor (https://codereview.chromium.org/
432143002/)
Reason for revert:
Breaking Chrome.
Original issue's description:
> Add ETC1 format to SkTextureCompressor
>
> Committed: https://skia.googlesource.com/skia/+/
5d8b1b44ea7636fc8e98247cb311568f277ce3a5
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
438443004
mtklein [Mon, 4 Aug 2014 16:36:45 +0000 (09:36 -0700)]
small skia_shared_lib=1 build fix for cross-process picture demo
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
439333002
mtklein [Mon, 4 Aug 2014 16:36:16 +0000 (09:36 -0700)]
Stop building tests.
BUG=skia:
R=borenet@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
423073011
bsalomon [Mon, 4 Aug 2014 16:21:30 +0000 (09:21 -0700)]
Remove unused matrix param from GrContext/GrDrawTarget rect drawing functions.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
441623005
krajcevski [Mon, 4 Aug 2014 16:08:29 +0000 (09:08 -0700)]
Add ETC1 format to SkTextureCompressor
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432143002
Mike Klein [Mon, 4 Aug 2014 15:50:32 +0000 (11:50 -0400)]
Rename skimage expectations for renamed bot.
BUG=skia:
Review URL: https://codereview.chromium.org/
436253004
bsalomon [Mon, 4 Aug 2014 15:31:39 +0000 (08:31 -0700)]
Exit early when draw can be skipped. Be more robust against abandoned GrContext.
R=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
428103003
humper [Mon, 4 Aug 2014 15:31:34 +0000 (08:31 -0700)]
fix missing return in error case for bitmap scaler
BUG=skia:
R=bsalomon@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/
431613003
kkinnunen [Mon, 4 Aug 2014 06:19:46 +0000 (23:19 -0700)]
Make GrGLProgram be available to GrGLProgramDataManager
GL APIs such as glProgramPathFragmentInputGenNV need the explicit program id in
order to set the program resources. For GrGLProgramDataManager to call the APIs,
the program id needs to be available to the GrGLProgramDataManager.
One GrGLProgramDataManager is used to explicitly manage the resources of one
GrGLProgram. Refactor the classes to reflect this: make GrGLProgram create and
own GrGLProgramDataManager. This way the program id can be made available through
GrGLProgram backpointer.
In order to do this, remove the population of the program link results
information for uniforms in GrGLProgramDataManager during shader generation.
Instead, accumulate the info to the uniform list of GrGLShaderBuilder. After the
generation, compilation and link is successful, this info can be used to
construct both GrGLProgram and GrGLProgramDataManager.
Changes names of functions to create UniformHandles and convert them to list
indices. This tries to highlight that they're different lists, even though at
the moment they match index-wise. E.g the contract is that handles can be
created based on the shader builder state, and the object can later be set with
the handle and the manager that was created with the builder.
This is needed to support NV_path_rendering for GLES.
R=bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
426553011
jvanverth [Sat, 2 Aug 2014 00:15:20 +0000 (17:15 -0700)]
Fix for Chrome Canaries.
R=bsalomon@google.com
TBR=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
434623010
jvanverth [Fri, 1 Aug 2014 21:05:19 +0000 (14:05 -0700)]
Rollback text allocation changes.
This also addresses an inadvertantly introduced distance field bug.
BUG=399125
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
438683006
bungeman [Fri, 1 Aug 2014 19:00:20 +0000 (15:00 -0400)]
No longer ignore and rebaseline fontmgr gms.
george [Fri, 1 Aug 2014 19:02:07 +0000 (12:02 -0700)]
Ensure that SkDebugf is exported from the library.
This was caused by the change to always call SkDebugf() in SkASSERT(). There are many headers in Skia that call SkASSERT and so we were seeing linking issues in Gecko where we were using Skia across DLL boundaries.
R=reed@google.com, bsalomon@google.com, reed1
BUG=skia:
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/
438783002
halcanary [Fri, 1 Aug 2014 18:54:48 +0000 (11:54 -0700)]
Revert of Memory improvements to render_pdfs; better DM pool size defaults (https://codereview.chromium.org/
433063002/)
Reason for revert:
breaking android tests
Original issue's description:
> Memory improvements to render_pdfs; better DM pool size defaults
>
> Make SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE equal to
> skia_resource_cache_mb_limit, if that value is >0 (true for some
> low-memory Android devices).
>
> render_pdfs test program uses lazy decoding (and the discardable
> memory pool).
>
> BUG=skia:2743
>
> Committed: https://skia.googlesource.com/skia/+/
66058b614d9c8cb63c24b1c779dd1a9a80752217
R=djsollen@google.com, mtklein@google.com
TBR=djsollen@google.com, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2743
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
418173012
halcanary [Fri, 1 Aug 2014 17:31:48 +0000 (10:31 -0700)]
add a libjpeg test
This tests for a bug in libjpeg where INT32 is typedefed to long
and memory is written to outside of the array.
BUG=skia:2791
R=djsollen@google.com, mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
435753002
halcanary [Fri, 1 Aug 2014 16:25:11 +0000 (09:25 -0700)]
Memory improvements to render_pdfs; better DM pool size defaults
Make SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE equal to
skia_resource_cache_mb_limit, if that value is >0 (true for some
low-memory Android devices).
render_pdfs test program uses lazy decoding (and the discardable
memory pool).
BUG=skia:2743
R=djsollen@google.com, mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
433063002
mtklein [Fri, 1 Aug 2014 15:23:39 +0000 (08:23 -0700)]
Skip all .skps in 565.
More SKPs are failing with a 565 target on other platforms:
http://108.170.220.120:10117/builders/Test-Win7-ShuttleA-HD2000-x86-Debug/builds/2938/steps/RunNanobench/logs/stdio
BUG=skia:2797
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
431983006
mtklein [Fri, 1 Aug 2014 14:46:52 +0000 (07:46 -0700)]
SKPs-as-benches in nanobench
This is meant to replace bench_pictures.
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Release-iOS-Trybot
BUG=skia:
R=bsalomon@google.com, jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
425393004
Florin Malita [Fri, 1 Aug 2014 14:17:42 +0000 (10:17 -0400)]
Remove SK_IGNORE_QUAD_RR_CORNERS_OPT-related code.
Now that the flag is no longer used in Chromium
(https://codereview.chromium.org/
426593006/), we can remove it.
R=bsalomon@google.com, reed@google.com, robertphillips@google.com
Review URL: https://codereview.chromium.org/
430473012
joshualitt [Fri, 1 Aug 2014 13:44:53 +0000 (06:44 -0700)]
FBFetch refactor + arm support
BUG=skia:
R=krajcevski@google.com, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
433603002
Derek Sollenberger [Fri, 1 Aug 2014 13:21:19 +0000 (09:21 -0400)]
Remove copile time enabling of SK_ARM_HAS_NEON.
We need to know this in our build system so that we can include
the necessary neon CPP files.
R=mtklein@google.com
Review URL: https://codereview.chromium.org/
432453003
djsollen [Fri, 1 Aug 2014 12:32:32 +0000 (05:32 -0700)]
Update NEON compiler defines to use SK_ prefix
BUG=skia:2785
R=mtklein@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/
433513004
mtklein [Fri, 1 Aug 2014 00:36:07 +0000 (17:36 -0700)]
whitespace change to force a build
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
432183002
mtklein [Thu, 31 Jul 2014 22:31:08 +0000 (15:31 -0700)]
Clean up skia_directwrite GYP variable.
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
435553004
krajcevski [Thu, 31 Jul 2014 21:12:50 +0000 (14:12 -0700)]
Add initial pipeline for decompressors
Committed: https://skia.googlesource.com/skia/+/
14a1df0bcd00734e6efbe4a21629fe95118815ef
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432503002
mtklein [Thu, 31 Jul 2014 19:47:37 +0000 (12:47 -0700)]
Add missing source file for iOSShell.
CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Release-iOS-Trybot
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
430273003
mtklein [Thu, 31 Jul 2014 19:13:48 +0000 (12:13 -0700)]
nanobench: support GMs-as-benches
BUG=skia:
R=jcgregorio@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
438683002
mtklein [Thu, 31 Jul 2014 18:26:58 +0000 (11:26 -0700)]
DM: only depend on GpuTest when it's a GPU build.
This seems to fix DM dynamic linking errors on IntelRHB.
Not clear why this device is the only one with this problem. It does set
skia_gpu=0, but I can't reproduce the same failure on my desktop (skia_gpu=0,
skia_shared_lib=1, skia_arch_width=32).
BUG=skia:
R=bsalomon@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
435673002
robertphillips [Thu, 31 Jul 2014 18:02:38 +0000 (11:02 -0700)]
Add CTM to the cached layers' key and reduce render target pingponging in layer pre-rendering
The CTM is required on the key so we will re-render when necessary.
The SkGpuDevice change ensures big layers in the midst of atlas-able layers don't cause a render target switch.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
433553002
mtklein [Thu, 31 Jul 2014 16:34:21 +0000 (09:34 -0700)]
Revert of Add initial pipeline for decompressors (https://codereview.chromium.org/
432503002/)
Reason for revert:
New test is crashing on Android.
http://108.170.220.21:10117/builders/Test-Android-Nexus10-MaliT604-Arm7-Debug/builds/2509/steps/RunTests/logs/stdio
http://108.170.220.21:10117/builders/Test-Android-Nexus4-Adreno320-Arm7-Debug/builds/2313/steps/RunTests/logs/stdio
Original issue's description:
> Add initial pipeline for decompressors
>
> Committed: https://skia.googlesource.com/skia/+/
14a1df0bcd00734e6efbe4a21629fe95118815ef
R=robertphillips@google.com, krajcevski@google.com
TBR=krajcevski@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
425223006
krajcevski [Thu, 31 Jul 2014 15:42:06 +0000 (08:42 -0700)]
Add initial pipeline for decompressors
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
432503002
mtklein [Thu, 31 Jul 2014 15:31:56 +0000 (08:31 -0700)]
sk_tool_utils_flags.cpp depends on GetResourcePath
BUG=skia:
R=caryclark@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
432033002
joshualitt [Thu, 31 Jul 2014 14:26:36 +0000 (07:26 -0700)]
Fix for texture domain on imagination gpus
BUG=skia:
R=bsalomon@chromium.org, bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
421823003
caryclark [Thu, 31 Jul 2014 13:36:45 +0000 (06:36 -0700)]
fix signed mismatch
R=egdaniel@google.com
TBR=egdaniel
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/
433903002
Cary Clark [Thu, 31 Jul 2014 12:58:44 +0000 (08:58 -0400)]
Add standard fonts to all GMs.
Allow GM results to be compared across machines and platforms by
standardizing the fonts used by all tests.
This adds runtime flags to DM to use either the system font context (the
default), the fonts in the resources directory ( --resourceFonts ) or a set
of canonical paths generated from the fonts ( --portableFonts ).
This CL should leave the current DM results unchanged by default.
If the portable font data or resource font is missing when DM is run, it
falls back to using the system font context.
The create_test_font tool generates the paths and metrics read by DM
with the --portableFonts flag set, and generates the font substitution
tables read by DM with the --resourceFonts flag set.
If DM is run in SkDebug mode with the --reportUsedChars flag set, it
generates the corresponding data compiled into the create_test_font tool.
All GM tests set their typeface information by calling either
sk_tool_utils::set_portable_typeface or
sk_tool_utils::portable_typeface .
(The former takes the paint, the latter returns a SkTypeface.) These calls
can be removed in the future when the Font Manager can be superceded.
BUG=skia:2687
R=mtklein@google.com
Review URL: https://codereview.chromium.org/
407183003
dneto [Wed, 30 Jul 2014 22:42:22 +0000 (15:42 -0700)]
Fix end-of-pattern matching for Skia recording optimization.
The recorder optimizer's pattern matcher was accepting command sequences
when it shouldn't have.
In the submitted case, and the pattern matcher was looking for:
saveLayer, drawBitmap, restore
and in the rendering for the submitted case, the sequence of commands
were:
saveLayer, drawBitmap, drawBitmap, restore
This sequence was improperly accepted by the matcher, and the optimizer
reduced the sequence to:
drawBitmap, drawBitmap
where the opacity from the saveLayer paint argument was applied
to the first drawBitmap only.
The user-visible effect in Chrome was a flashing effect on an image
caused by incorrect (too-high) opacity.
The patch adds a Skia test to check for pixel colour values in
a similarly structured recording. All other Skia tests pass.
Blink layout tests also pass with this change.
BUG=chromium:344987
R=robertphillips@google.com, reed@google.com, mtklein@google.com
Author: dneto@chromium.org
Review URL: https://codereview.chromium.org/
430503004
senorblanco [Wed, 30 Jul 2014 21:49:31 +0000 (14:49 -0700)]
Intersect SkPictureImageFilter bounds against clip bounds.
Intersect SkPictureImageFilter bounds against clip bounds
to avoid unnecessary processing. This is how the other
filters work (via applyCropRect()), but SkPictureImageFilter
maintains its own crop.
BUG=skia:
R=bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
428263003
egdaniel [Wed, 30 Jul 2014 20:18:32 +0000 (13:18 -0700)]
Remove kDisableBlend_BlendOptFlag as it is no longer needed
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
425153003
krajcevski [Wed, 30 Jul 2014 20:08:11 +0000 (13:08 -0700)]
Start the process of choosing the correct compression format
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
427093004
mtklein [Wed, 30 Jul 2014 19:37:19 +0000 (12:37 -0700)]
Add some debugging to PremulAlphaRoundTrip test.
BUG=skia:2782
R=bensong@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
429313002
joshualitt [Wed, 30 Jul 2014 18:49:12 +0000 (11:49 -0700)]
Test removal of mesa specific version parse
BUG=skia:
R=bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
430833002
senorblanco [Wed, 30 Jul 2014 18:26:46 +0000 (11:26 -0700)]
Implement a persistent uniqueID-based cache for SkImageFilter.
Add a unique ID to SkImageFilter, and use it as part
of a persistent cache of image-filtered results. This is used for
caching frame-to-frame coherent filters.
We also keep track of which filter subtrees do not reference the
src input, and use a GenID of zero for the src input in that case.
That way, subtrees which are not dependent on the filter input can be
cached independently of it.
This gives approximately a 4X speedup on
letmespellitoutforyou.com/samples/svg/filter_terrain.svg on Z620
and Nexus10. The cache key consists of the uniqueID of the filter, the
clip bounds, the CTM and the genID of the input bitmap.
Since this does not yet handle the case where the input primitives
(and part of the resulting filter tree) are unchanged, we have
to keep around the external cache for that painting case.
When the work to cache unchanging input primitives is done, the
old cache can be removed, and the new UniqueIDCache will be renamed
to Cache.
R=bsalomon@google.com, mtklein@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
414483003
krajcevski [Wed, 30 Jul 2014 18:25:44 +0000 (11:25 -0700)]
Add query for whether or not we have compressedTexSubImage
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
430773004
bungeman [Wed, 30 Jul 2014 18:05:22 +0000 (11:05 -0700)]
Correct Android FontMgr use of ttc index and remove unused code.
R=djsollen@chromium.org, tomhudson@google.com, djsollen@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/
433503003
joshualitt [Wed, 30 Jul 2014 17:31:10 +0000 (10:31 -0700)]
Enabling texture_domain_effect
BUG=skia:
REVIEW=tbr
R=rmistry@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/
425253003
george [Wed, 30 Jul 2014 16:58:17 +0000 (09:58 -0700)]
Explicitly typedef GetUserDefaultLocaleName as WINVER may not be high enough when compiling to allow visibility of the function prototype in windows.h
R=bungeman@google.com, bungeman1
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/
422823008
mtklein [Wed, 30 Jul 2014 16:17:54 +0000 (09:17 -0700)]
Fix way-over-allocation in pipe.
https://codereview.chromium.org/
283093002 fixed some bugs in pipe memory
allocation, but also introduced one of its own: nearly every block requested
from needOpBytes() got its own 16K allocation.
The correct logic is to take the requested size, add four more bytes for a
DrawOp, make sure that's 4-byte aligned, then check to see if there's enough
space for that in the current block. If there's not, allocate at least
MIN_BLOCK_SIZE bytes to fit the request.
The bug is that I moved that round-up-to-MIN_BLOCK_SIZE step before checking
for space in the current block. This means most (all?) blocks will be 16K but
never seem to have room to fit another allocation. You need 8 bytes? You get
16K. You need 8 more bytes? Nope, can't fit that. Here's a new 16K...
This reverts the change to the test I made then, which really should have
tipped me off. It was testing exactly this bug.
BUG=372671
R=tomhudson@chromium.org, tomhudson@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
433463003
jvanverth [Wed, 30 Jul 2014 16:16:33 +0000 (09:16 -0700)]
Add vertex bounds check for distance field rendering.
R=bsalomon@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
432443002
bsalomon [Wed, 30 Jul 2014 15:58:20 +0000 (08:58 -0700)]
Add rotated rects benchmarks
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
425263003