scroggo [Tue, 1 Jul 2014 15:02:30 +0000 (08:02 -0700)]
Specify the name of tool for creating a makefile.
When generating tool Android.mks from gyp files, specify the name
of the target needed.
This fixes a bug where nanobench was being added to the same
makefile as bench, which would not compile.
TODO: Make gyp_to_android more general, so that it handles this
case better. See http://skbug.com/2709
R=mtklein@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
366653002
mtklein [Tue, 1 Jul 2014 14:46:50 +0000 (07:46 -0700)]
Add multithreaded mode to quilt mode in DM.
Default off for now. Something to work toward.
BUG=skia:
R=robertphillips@google.com, tomhudson@chromium.org, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
360793002
bsalomon [Tue, 1 Jul 2014 14:20:11 +0000 (07:20 -0700)]
When performing offscreen rendering on windows, attempt to use a pbuffer context.
A pbuffer context is less likely to have a blocking SwapBuffers (due to vsync).
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
336863009
scroggo [Tue, 1 Jul 2014 14:08:19 +0000 (07:08 -0700)]
Adjust the alpha type for pixelRefs.
Move SkBitmap's validate_alphaType to SkImageInfo, with the new
name SkColorTypeValidateAlphaType. Use it in SkPixelRef's constructors,
as well as in SkDecodingImageGenerator. This fixes a bug where an
SkPixelRef's SkAlphaType could get out of sync with its SkBitmap,
when both were assigned the same SkAlphaType.
R=reed@google.com, halcanary@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/
346593003
Eric Boren [Tue, 1 Jul 2014 13:39:00 +0000 (09:39 -0400)]
Revert of Update SKP version to 34 (https://codereview.chromium.org/
347303003/)
Reason for revert:
This removed all bench expectations!
Original issue's description:
> Update SKP version to 34
>
> Automatic commit by the RecreateSKPs bot.
>
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/
0808c82e83749c24183af92a43c2e0e69b35d745
TBR=
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
362753002
tomhudson [Tue, 1 Jul 2014 13:26:48 +0000 (06:26 -0700)]
Grant independence to SkBaseMutex on Windows.
Under POSIX, class SkMutex inherits from struct SkBaseMutex.
Since we can't have a POD mutex on Windows, we used to just
typedef SkMutex SkBaseMutex there. However, that makes it
impossible to forward-declare SkBaseMutex consistently across
platforms. With this CL we declare an empty struct SkBaseMutex
on Windows, which should have 0 cost but make the compiler happy.
R=bungeman@google.com, mtklein@google.com, tomhudson@google.com, bungeman, mtklein
BUG=skia:
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
364473002
henrik.smiding [Tue, 1 Jul 2014 13:12:46 +0000 (06:12 -0700)]
Hide symbols in S32A_Opaque_BlitRow32_SSE4
Marks the symbols in the S32A_Opaque_BlitRow32_SSE4 files as hidden,
so Chromium can build.
Also enables the optimizations.
Signed-off-by: Henrik Smiding <henrik.smiding@intel.com>
R=mtklein@google.com, joakim.landberg@intel.com
Author: henrik.smiding@intel.com
Review URL: https://codereview.chromium.org/
368573002
reed [Tue, 1 Jul 2014 09:51:26 +0000 (02:51 -0700)]
remove flags that are now in chrome's SkUserConfig.h
R=reed@google.com
NOTRY=True
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/
367483003
tfarina [Tue, 1 Jul 2014 00:11:33 +0000 (17:11 -0700)]
Cleanup: Delete SkJSON header.
It seems it does not have any implementation so it is unlikely it will
have any user, either internal or external.
BUG=None
TEST=make all
R=bsalomon@google.com, mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/
353183006
reed [Mon, 30 Jun 2014 23:48:23 +0000 (16:48 -0700)]
Revert of Fix race condition in parallel font initialization. (https://codereview.chromium.org/
355573006/)
Reason for revert:
breaks chrome builds
Original issue's description:
> Fix race condition in parallel font initialization.
>
> Uses a mutex to guard construction of the singleton, which initialies
> the non-threadsafe libfontconfig. Without this change, the parallel
> path ops test runner crashes 6/10 and hangs 2/10 on startup; with this
> change, 0/10 problems.
>
> BUG=skia:2693
> R=mtklein@google.com,bungeman@google.com
>
> Committed: https://skia.googlesource.com/skia/+/
df022f5972ae6a2a1d96d15c50eca52cade3abd8
R=mtklein@google.com, bungeman@google.com, reed@google.com, tomhudson@google.com, tomhudson@chromium.org
TBR=bungeman@google.com, mtklein@google.com, reed@google.com, tomhudson@chromium.org, tomhudson@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2693
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/
365503003
tomhudson [Mon, 30 Jun 2014 21:14:01 +0000 (14:14 -0700)]
Fix race condition in parallel font initialization.
Uses a mutex to guard construction of the singleton, which initialies
the non-threadsafe libfontconfig. Without this change, the parallel
path ops test runner crashes 6/10 and hangs 2/10 on startup; with this
change, 0/10 problems.
BUG=skia:2693
R=mtklein@google.com, bungeman@google.com, reed@google.com, tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
355573006
reed [Mon, 30 Jun 2014 21:06:00 +0000 (14:06 -0700)]
force opaque if kCGImageAlpha returns None
BUG=skia:2424
R=caryclark@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
355403003
reed [Mon, 30 Jun 2014 21:00:41 +0000 (14:00 -0700)]
add SK_API to config helpers so chrome can call them
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
359353003
Ben Wagner [Mon, 30 Jun 2014 20:18:24 +0000 (16:18 -0400)]
Expectations updates for DirectWrite change 761b25.
reed [Mon, 30 Jun 2014 19:44:03 +0000 (12:44 -0700)]
update dox
TBR=
NOTRY=True
Author: reed@google.com
Review URL: https://codereview.chromium.org/
352873003
mtklein [Mon, 30 Jun 2014 19:33:11 +0000 (12:33 -0700)]
Have Clang builders build in C++11 mode.
This ought to get us a little ahead on the transition. Only minor fixes
are needed. The one in MemoryBench is the most interesting: what used
to unambiguously be interpreted as concatenating two string literals is
now also ambiguously a user-defined literal; adding a space
disambiguates.
BUG=skia:
R=bungeman@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
361723002
bungeman [Mon, 30 Jun 2014 19:19:41 +0000 (12:19 -0700)]
DirectWrite to detect GDI only fonts.
The exist a number of webfonts which have poor hinting which look very
bad with any vertical subsampling. The fonts often rely on drop out
control to avoid zero coverage in the y direction. As a result, any font
with hints but no 'gasp' table is considered to be poorly hinted in this
way, and will not be rendered with vertical subsampling when hinted.
R=eae@chromium.org, reed@google.com, mtklein@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/
363433002
caseq [Mon, 30 Jun 2014 19:14:52 +0000 (12:14 -0700)]
Fix SkTypeface::serialize() on Mac by properly indicating local fonts
We used to always set isLocalStream to false in SkTypeface_Mac::onGetFontDescriptor(),
which caused SkTypeface::serialize() to never actually serialize fonts.
BUG=skia:2698
R=reed@google.com, bungeman@google.com
Author: caseq@chromium.org
Review URL: https://codereview.chromium.org/
353993003
reed [Mon, 30 Jun 2014 17:59:47 +0000 (10:59 -0700)]
rebaseline srcmode for gpus -- now pass samplecount
TBR=
NOTRY=True
BUG=skia:
Author: reed@google.com
Review URL: https://codereview.chromium.org/
357393002
mtklein [Mon, 30 Jun 2014 17:18:25 +0000 (10:18 -0700)]
Revert of Re-enable SSE4. (https://codereview.chromium.org/
357593003/)
Reason for revert:
Mac Chrome builders still failing.
Original issue's description:
> Re-enable SSE4.
>
> I will roll this into Chrome with https://codereview.chromium.org/
332393003.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
a75b0fadbdec4214afec6dd727fd224d34ed164f
R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/
337093004
bsalomon [Mon, 30 Jun 2014 16:26:52 +0000 (09:26 -0700)]
Fix ANGLE build wrong glGetString being called issue
R=robertphillips@google.com
TBR=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
357343002
krajcevski [Mon, 30 Jun 2014 16:09:22 +0000 (09:09 -0700)]
R11 EAC texture compression is introduced as part of the OpenGL ES 3.0 spec. This is a format that will likely be required on most mobile phones in the upcoming years, making it better to target than LATC, which is only available on NVIDIA GPUs.
R=bsalomon@google.com, robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
330763008
reed [Mon, 30 Jun 2014 16:05:34 +0000 (09:05 -0700)]
stop calling SkCanvas::getDevice
BUG=skia:
R=bsalomon@google.com, robertphillips@google.com, junov@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
355193006
krajcevski [Mon, 30 Jun 2014 15:47:33 +0000 (08:47 -0700)]
Add a preliminary R11 EAC compressor
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/
358973004
robertphillips [Mon, 30 Jun 2014 15:26:50 +0000 (08:26 -0700)]
Begin atlasing
This CL makes it possible for pulled-forward-layers to be atlased. It currently has a couple glaring limitations (which is why it is disabled):
1) the atlased layers cannot be purged nor aged out
2) the texture backing the atlas is not pulled from (or returned to) the resource cache
#1 is on hold until we have a recycling rectanizer
A separate major limitation (the non-atlased layers aren't cached) is blocked until we can transmute entries in the resource cache from scratch to non-scratch while potentially preserving their contents.
Committed: https://skia.googlesource.com/skia/+/
55e61f0ef4e5c8c34ac107deaadc9b4ffef3111b
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
354533004
mtklein [Mon, 30 Jun 2014 15:13:53 +0000 (08:13 -0700)]
Re-enable SSE4.
I will roll this into Chrome with https://codereview.chromium.org/
332393003.
BUG=skia:
R=reed@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
357593003
kevin.petit [Mon, 30 Jun 2014 14:32:19 +0000 (07:32 -0700)]
ARM Skia NEON patches - 41 - arm64: SkXfermode::xfer32
Currently the NEON code for Xfermodes performs well on arm64
targets except for dstout and dstin which are significantly
slower than the C code. This patch fixes this and gives
further improvements on other modes.
Here are some perf results:
+------------+------------+------------+
| mode | Cortex-A53 | Cortex-A57 |
+------------+------------+------------+
| multiply | +24.58% | +23.71% |
+------------+------------+------------+
| exclusion | +22.72% | +22.05% |
+------------+------------+------------+
| difference | +34.67% | +36.82% |
+------------+------------+------------+
| hardlight | +17.07% | +14.74% |
+------------+------------+------------+
| lighten | +38.21% | +32.87% |
+------------+------------+------------+
| darken | +37.59% | +32.99% |
+------------+------------+------------+
| overlay | +17.36% | +16.88% |
+------------+------------+------------+
| screen | +52.56% | +54.43% |
+------------+------------+------------+
| modulate | +62.85% | +61.32% |
+------------+------------+------------+
| plus | +91.52% | +117.41% |
+------------+------------+------------+
| xor | +42.86% | +43.38% |
+------------+------------+------------+
| dstatop | +48.46% | +48.99% |
+------------+------------+------------+
| srcatop | +50.50% | +48.51% |
+------------+------------+------------+
| dstout | +67.83% | +78.09% |
+------------+------------+------------+
| srcout | +69.02% | +78.26% |
+------------+------------+------------+
| dstin | +70.92% | +79.24% |
+------------+------------+------------+
| srcin | +68.90% | +78.23% |
+------------+------------+------------+
| dstover | +73.80% | +68.10% |
+------------+------------+------------+
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=skia
R=mtklein@google.com, djsollen@google.com
Author: kevin.petit@arm.com
Review URL: https://codereview.chromium.org/
350343002
Florin Malita [Mon, 30 Jun 2014 14:13:28 +0000 (10:13 -0400)]
SaveFlags be-gone
Remove the deprecated save(SaveFlags), willSave(SaveFlags) and all
traces of kMatrix_SaveFlags/kClip_SaveFlag.
BUG=skia:2297
R=mtklein@google.com, reed@google.com, robertphillips@google.com
Review URL: https://codereview.chromium.org/
340403003
rmistry [Mon, 30 Jun 2014 13:46:58 +0000 (06:46 -0700)]
Whitespace change to test CQ
TBR=
CQ_EXCLUDE_TRYBOTS=tryserver.skia:Build-Win7-VS2010-x86-Debug-Trybot,Test-Ubuntu13.10-ShuttleA-NoGPU-x86_64-Debug-Trybot,Build-Ubuntu13.10-GCC4.8-x86_64-Release-Trybot,Build-Ubuntu13.10-Clang-x86_64-Debug-Trybot,Build-Mac10.8-Clang-x86_64-Release-Trybot
(SkipBuildbotRuns)
BUG=skia:
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
358393002
kkinnunen [Mon, 30 Jun 2014 13:36:31 +0000 (06:36 -0700)]
Support using OpenGL ES context on desktop
Support using OpenGL ES context on desktop for unix and Android platforms. This
is mainly useful in development.
Add --gpuAPI flag to gm, dm, bench, bench_pictures and render_pictures. The
possible parameters for the flag are "gl" and "gles".
R=bsalomon@google.com, mtklein@google.com, robertphillips@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
319043005
rmistry [Mon, 30 Jun 2014 13:31:46 +0000 (06:31 -0700)]
Whitespace change to test CQ
TBR=
CQ_TRYBOTS=tryserver.skia:Build-Ubuntu13.10-GCC4.8-Arm7-Debug-Android-Trybot,Build-Ubuntu13.10-Clang-x86_64-Debug-Trybot
(SkipBuildbotRuns)
BUG=skia:
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
357313002
qiankun.miao [Mon, 30 Jun 2014 05:38:54 +0000 (22:38 -0700)]
Push resources to Android device
The resources directory is required by some benchmarks. Push it to
device's /data/local/tmp. Add "-i /data/local/tmp/resources" to command
line when using these resources.
BUG=skia:
R=djsollen@google.com, mtklein@google.com, borenet@google.com
Author: qiankun.miao@intel.com
Review URL: https://codereview.chromium.org/
352303003
robertphillips [Mon, 30 Jun 2014 00:16:27 +0000 (17:16 -0700)]
Revert of Begin atlasing (https://codereview.chromium.org/
354533004/)
Reason for revert:
Sigh
Original issue's description:
> Begin atlasing
>
> This CL makes it possible for pulled-forward-layers to be atlased. It currently has a couple glaring limitations (which is why it is disabled):
>
> 1) the atlased layers cannot be purged nor aged out
> 2) the texture backing the atlas is not pulled from (or returned to) the resource cache
>
> #1 is on hold until we have a recycling rectanizer
>
> A separate major limitation (the non-atlased layers aren't cached) is blocked until we can transmute entries in the resource cache from scratch to non-scratch while potentially preserving their contents.
>
> Committed: https://skia.googlesource.com/skia/+/
55e61f0ef4e5c8c34ac107deaadc9b4ffef3111b
R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
359953002
robertphillips [Mon, 30 Jun 2014 00:04:24 +0000 (17:04 -0700)]
Revert of Fix memory leak in "Begin atlasing" (https://codereview.chromium.org/
361663002/)
Reason for revert:
Sigh
Original issue's description:
> Fix memory leak in (Begin atlasing https://codereview.chromium.org/
354533004/)
>
> TBR=bsalomon@google.com
>
> Committed: https://skia.googlesource.com/skia/+/
40d9c0e331fe2b76b4e13ca6cdf1ea50451ba6cc
R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
360663002
robertphillips [Sun, 29 Jun 2014 23:38:58 +0000 (16:38 -0700)]
Fix memory leak in (Begin atlasing https://codereview.chromium.org/
354533004/)
R=bsalomon@google.com
TBR=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
361663002
robertphillips [Sun, 29 Jun 2014 22:08:31 +0000 (15:08 -0700)]
Begin atlasing
This CL makes it possible for pulled-forward-layers to be atlased. It currently has a couple glaring limitations (which is why it is disabled):
1) the atlased layers cannot be purged nor aged out
2) the texture backing the atlas is not pulled from (or returned to) the resource cache
#1 is on hold until we have a recycling rectanizer
A separate major limitation (the non-atlased layers aren't cached) is blocked until we can transmute entries in the resource cache from scratch to non-scratch while potentially preserving their contents.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
354533004
humper [Sun, 29 Jun 2014 03:12:45 +0000 (20:12 -0700)]
add a second interface to the resizer to exactly match what Chrome expects. Will make the migration much cleaner
BUG=skia:
R=mtklein@google.com
Author: humper@google.com
Review URL: https://codereview.chromium.org/
353163005
senorblanco [Sun, 29 Jun 2014 00:42:55 +0000 (17:42 -0700)]
Remove now-nonexistent SkCountdown.h from public_headers.
Seems to be breaking Chrome's GN build.
R=rmistry@google.com
TBR=rmistry
BUG=skia:
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
359183002
reed [Sat, 28 Jun 2014 21:26:35 +0000 (14:26 -0700)]
add rowbytes option to allocPixels
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
345263005
reed [Sat, 28 Jun 2014 20:25:31 +0000 (13:25 -0700)]
remove SK_SUPPORT_LEGACY_INSTALLPIXELSPARAMS code
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
359143002
reed [Sat, 28 Jun 2014 00:47:49 +0000 (17:47 -0700)]
writepixels needs to bump genID
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
352573005
senorblanco [Fri, 27 Jun 2014 23:20:03 +0000 (16:20 -0700)]
Some straggler rebaselines for imagefiltersclipped.
NOTRY=true
NOTREECHECKS=true
R=rmistry@google.com
TBR=rmistry
BUG=skia:
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
348313006
senorblanco [Fri, 27 Jun 2014 21:45:30 +0000 (14:45 -0700)]
New baselines for imagefiltersclipped GM after perlin noise change.
R=rmistry@google.com
TBR=rmistry
NOTRY=true
NOTREECHECKS=true
BUG=skia:
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
361523003
Mike Klein [Fri, 27 Jun 2014 21:09:39 +0000 (17:09 -0400)]
Drop --clone from commands in skia repo.
--clone, and SkPicture::clone(), are no longer.
CQ_EXTRA_TRYBOTS=tryserver.skia:Housekeeper-PerCommit-Trybot
BUG=skia:
R=rmistry@google.com
Review URL: https://codereview.chromium.org/
343813006
senorblanco [Fri, 27 Jun 2014 20:35:52 +0000 (13:35 -0700)]
Make perlin noise do CTM-correct scaling.
When drawing perlin noise, generate noise at the resolution determined
by CTM, not by the resolution at construction time. This required moving
the generation of PaintingData to getContext() and asNewEffect() for the
raster and GPU paths, respectively.
It also required adjusting the matrices used during rendering
to be translate-only.
R=sugoi@chromium.org, bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
358903002
mtklein [Fri, 27 Jun 2014 19:34:44 +0000 (12:34 -0700)]
Deprecate SkPicture::clone().
Chrome will need -DSK_SUPPORT_LEGACY_PICTURE_CLONE.
This removes the modes from our tools that use clone(). No
bots run these. DM used clone() in a way that we can just
share the picture now.
I plan to bring back the ability to test multithreaded
picture rendering soon.
BUG=skia:2378
R=robertphillips@google.com, mtklein@google.com, bsalomon@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
338633011
halcanary [Fri, 27 Jun 2014 18:36:20 +0000 (11:36 -0700)]
Switch SkPDFStream's internal storage from SkStream to SkData
Motivation: This makes SkPDFStream thread-safe for two threads
serializing it at once, since a SkStream has an internal position.
Updated SkPDFFont, SkPDFGraphicState, and SkPDFPage's use of
SkPDFStream to use the SkData constructor rather than the SkStream
constructor (saving a memcpy).
BUG=skia:2683
Committed: https://skia.googlesource.com/skia/+/
c1dfa14b645ae274780f026dd86c9b633fbdad06
R=mtklein@google.com, djsollen@google.com, rmistry@google.com, robertphillips@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
340783013
reed [Fri, 27 Jun 2014 18:34:19 +0000 (11:34 -0700)]
change gpudevice and pdfdevice to inherit from basedevice
BUG=skia:
R=robertphillips@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/
354133002
mtklein [Fri, 27 Jun 2014 18:28:06 +0000 (11:28 -0700)]
Disable SSE4 code.
Chrome canary failing to link chrome:
http://108.170.220.120:10115/builders/Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT/builds/1009/steps/BuildChrome/logs/stdio
BUG=skia:
NOTRY=true
R=mtklein@google.com, rmistry@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
361493002
humper [Fri, 27 Jun 2014 18:27:03 +0000 (11:27 -0700)]
Refactor bitmap scaler to make it easier to migrate rest of chrome to use it
Previously, the set of platform-specific function pointers to do fast convolution (e.g., neon, SSE) were passed in a structure to the scaler.
I refactored this so that the scaler fills in these function pointers after it's called, so the caller doesn't have to worry about it.
R=mtklein@google.com
TBR=mtklein
NOTRY=True
Author: humper@google.com
Review URL: https://codereview.chromium.org/
354193002
halcanary [Fri, 27 Jun 2014 17:37:27 +0000 (10:37 -0700)]
Add lock to SkPDFDict
Add mutex lock to all functions. Remove dictionary iterator, and
replace with new thread-safe functions.
BUG=skia:2683
R=mtklein@google.com, djsollen@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
360473005
robertphillips [Fri, 27 Jun 2014 15:59:26 +0000 (08:59 -0700)]
Fix RRect tranform bug
When a RRect is an oval transforming the rectangle and the radii separately can result in a non-oval result (i.e., due to numerical issues some tiny straight edges may creep in). This CL remedies the situation by computing the new radii directly from the transformed rect.
BUG=skia:2696
R=caryclark@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
354913004
tomhudson [Fri, 27 Jun 2014 15:19:35 +0000 (08:19 -0700)]
Mark SkBBoxHierarchyRecord destructor as virtual
Immediate parent classes have empty virtual destructors, but farther
up the inheritance tree there is complicated destruction going on.
This change may be unnecessary but makes the polymorphism explicit.
BUG=skia:1734
R=mtklein@google.com, tomhudson@google.com, mtklein
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/
359773002
henrik.smiding [Fri, 27 Jun 2014 15:03:17 +0000 (08:03 -0700)]
Add SSE4 optimization of S32A_Opaque_Blitrow
Adds optimization of Skia S32A_Opaque_Blitrow blitter using SSE4.2 SIMD
instruction set. Special case for when alpha is zero or opaque.
Performance increase of 10%-400% compared to the existing SSE2
optimization (measured on Silvermont architecture).
Noticeable in ~25 different skia bench subtests, especially in
bitmap_8888_*, repeatTile_*, and morph_*.
bitmap_8888_A - 100% faster
bitmap_8888_A_source_transparent - 250% faster
bitmap_8888_A_source_opaque - 25% faster
bitmap_8888_A_scale_bicubic - 75% faster
Signed-off-by: Henrik Smiding <henrik.smiding@intel.com>
Committed: https://skia.googlesource.com/skia/+/
e2527b147679b0c43019fae7d59cc3777d2d097e
Committed: https://skia.googlesource.com/skia/+/
b5c281e1e06af3be804309877de1dac6145686b9
R=reed@google.com, mtklein@google.com, tomhudson@google.com, djsollen@google.com, joakim.landberg@intel.com
Author: henrik.smiding@intel.com
Review URL: https://codereview.chromium.org/
289473009
reed [Fri, 27 Jun 2014 13:48:14 +0000 (06:48 -0700)]
add SkSurface::NewRasterDirectReleaseProc
allows for lifetime control of pixel memory on raster surface
BUG=skia:
R=fmalita@google.com, bsalomon@google.com, fmalita@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/
351373005
reed [Fri, 27 Jun 2014 12:49:53 +0000 (05:49 -0700)]
remove unnecessary bitmapdevice references
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
354143004
reed [Fri, 27 Jun 2014 11:49:12 +0000 (04:49 -0700)]
delete code for SK_SUPPORT_LEGACY_GETTOTALCLIP
TBR=
NOTRY=True
Author: reed@google.com
Review URL: https://codereview.chromium.org/
354953008
borenet [Fri, 27 Jun 2014 08:02:30 +0000 (01:02 -0700)]
Update SKP version to 34
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
347303003
reed [Fri, 27 Jun 2014 05:12:09 +0000 (22:12 -0700)]
don't create explicit bitmapdevice when not needed
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/
349213006
reed [Fri, 27 Jun 2014 01:47:08 +0000 (18:47 -0700)]
remove SK_SUPPORT_LEGACY_DEVICE_VIRTUAL_ISOPAQUE for chrome
BUG=skia:
R=robertphillips@google.com, fmalita@google.com, fmalita@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/
355083006
kelvinly [Thu, 26 Jun 2014 22:39:31 +0000 (15:39 -0700)]
Fix scale type in JSON format
BUG=skia:
R=bensong@google.com, jcgregorio@google.com
Author: kelvinly@google.com
Review URL: https://codereview.chromium.org/
354953007
rmistry [Thu, 26 Jun 2014 21:31:06 +0000 (14:31 -0700)]
Revert of Switch SkPDFStream's internal storage from SkStream to SkData (https://codereview.chromium.org/
340783013/)
Reason for revert:
Causes canary failures
Original issue's description:
> Switch SkPDFStream's internal storage from SkStream to SkData
>
> Motivation: This makes SkPDFStream thread-safe for two threads
> serializing it at once, since a SkStream has an internal position.
>
> Updated SkPDFFont, SkPDFGraphicState, and SkPDFPage's use of
> SkPDFStream to use the SkData constructor rather than the SkStream
> constructor (saving a memcpy).
>
> BUG=skia:2683
>
> Committed: https://skia.googlesource.com/skia/+/
c1dfa14b645ae274780f026dd86c9b633fbdad06
R=mtklein@google.com, djsollen@google.com, halcanary@google.com
TBR=djsollen@google.com, halcanary@google.com, mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2683
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
354043005
halcanary [Thu, 26 Jun 2014 21:00:31 +0000 (14:00 -0700)]
Switch SkPDFStream's internal storage from SkStream to SkData
Motivation: This makes SkPDFStream thread-safe for two threads
serializing it at once, since a SkStream has an internal position.
Updated SkPDFFont, SkPDFGraphicState, and SkPDFPage's use of
SkPDFStream to use the SkData constructor rather than the SkStream
constructor (saving a memcpy).
BUG=skia:2683
R=mtklein@google.com, djsollen@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
340783013
tfarina [Thu, 26 Jun 2014 20:07:05 +0000 (13:07 -0700)]
Promote SkInterpolator unit test to our tests driver.
BUG=None
TEST=make tests && out/Debug/tests -m Interpolator
R=mtklein@google.com, bsalomon@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/
351713005
bsalomon [Thu, 26 Jun 2014 19:56:28 +0000 (12:56 -0700)]
Make LTCG optional on windows builds.
R=mtklein@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
335123010
bsalomon [Thu, 26 Jun 2014 19:56:22 +0000 (12:56 -0700)]
Add trace event when GrBufferAllocPool unmaps a buffer indicating what % of the buffer was unwritten.
R=egdaniel@google.com
TBR=egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
339433009
rmistry [Thu, 26 Jun 2014 18:35:33 +0000 (11:35 -0700)]
Rebaseline Test-Android-Logan-Nvidia-Arm7-*
Reviewed both by mtklein and bsalomon in skia:2695.
TBR=
BUG=skia:2695
NOTREECHECKS=true
NOTRY=true
Author: rmistry@google.com
Review URL: https://codereview.chromium.org/
352353004
kelvinly [Thu, 26 Jun 2014 18:26:40 +0000 (11:26 -0700)]
Make SKP bench JSON ouput better
BUG=skia:
NOTREECHECKS=true
R=bensong@google.com, jcgregorio@google.com, bsalomon@google.com, robertphillips@google.com, rmistry@google.com
Author: kelvinly@google.com
Review URL: https://codereview.chromium.org/
329993008
Mike Klein [Thu, 26 Jun 2014 15:04:28 +0000 (11:04 -0400)]
Don't set SK_MALLOC_TEMP in SkAutoTMalloc.
Unlike SkAutoSTMalloc, it doesn't make sense for SkAutoTMalloc to set
SK_MALLOC_TEMP. See SkAutoMalloc/SkAutoSMalloc for similar in the void*
world.(This change is a documentation-only no-op. No code pays any
attention to SK_MALLOC_TEMP.)
BUG=skia:
R=halcanary@google.com
Review URL: https://codereview.chromium.org/
356913003
bsalomon [Thu, 26 Jun 2014 15:01:14 +0000 (08:01 -0700)]
Add SK_API to SkWriter32
R=mtklein@google.com, senorblanco@google.com, senorblanco@chromium.org
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
356053002
kevin.petit [Thu, 26 Jun 2014 09:51:29 +0000 (02:51 -0700)]
ARM Skia NEON patches - 40 - arm64: S32A_D565_Opaque
Here are some perf results:
+-------+------------+------------+
| count | Cortex-A53 | Cortex-A57 |
+-------+------------+------------+
| 1 | -2.54% | -5.39% |
+-------+------------+------------+
| 2 | -0.66% | -2.08% |
+-------+------------+------------+
| 4 | -11.13% | 0.00% |
+-------+------------+------------+
| 8 | -5.79% | -1.30% |
+-------+------------+------------+
| 16 | 71.60% | 93.27% |
+-------+------------+------------+
| 64 | 30.99% | 57.35% |
+-------+------------+------------+
| 256 | 25.41% | 52.59% |
+-------+------------+------------+
| 1024 | 25.56% | 53.76% |
+-------+------------+------------+
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
BUG=skia:
R=mtklein@google.com, djsollen@google.com
Author: kevin.petit@arm.com
Review URL: https://codereview.chromium.org/
346843003
borenet [Thu, 26 Jun 2014 06:53:02 +0000 (23:53 -0700)]
Update SKP version to 33
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
336613005
senorblanco [Wed, 25 Jun 2014 21:39:05 +0000 (14:39 -0700)]
Remove SkBicubicImageFilter, and all related tests.
Now that we have SkResizeImageFilter, and the bicubic
resizing is part of skia proper, there's no need for a
specialized image filter.
BUG=skia:
R=bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/
357793002
mtklein [Wed, 25 Jun 2014 21:08:00 +0000 (14:08 -0700)]
Add nanobench, a fresh look at our microbenchmark harness.
out/Release/nanobench runs 4-5x faster on my Z620 and ~2x faster on my N5 than out/Release/bench with the same configs.
(Debug isn't really comparable. I haven't added the Debug -> single loop check.)
BUG=skia:
R=djsollen@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
347443002
halcanary [Wed, 25 Jun 2014 20:28:29 +0000 (13:28 -0700)]
tools/git-sync-deps is a stand-alone program, not dependent on synced deps.
Motivation: With common repo, we had a chicken-egg problem.
BUG=skia:
R=borenet@google.com, mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/
351063003
mtklein [Wed, 25 Jun 2014 19:40:51 +0000 (12:40 -0700)]
Add noinline for GCC 4.6, which seems to vectorize after inlining.
GCC 4.7 and 4.8 don't need this, but we're not building with them so it doesn't hurt.
BUG=skia:
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
343423003
george [Wed, 25 Jun 2014 19:14:30 +0000 (12:14 -0700)]
"interface" is defined in Windows headers, so undef it in GrGLCaps so we don't have a name collision
R=bsalomon@google.com, mtklein@google.com, bsalomon
BUG=skia:
Author: george@mozilla.com
Review URL: https://codereview.chromium.org/
344253003
mtklein [Wed, 25 Jun 2014 18:38:00 +0000 (11:38 -0700)]
Narrow disabled vectorization further to just ConvolveHorizontally.
BUG=skia:2575
R=mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
352883002
tfarina [Wed, 25 Jun 2014 17:39:00 +0000 (10:39 -0700)]
Rename TestSize.cpp to SizeTest.cpp
It is the only file where Test is the prefix rather than the sufix.
This patch fixes that so it matches with the rest of the files
under tests/ directory.
And separate SkISize test into its own DEF_TEST().
BUG=None
TEST=make tests && out/Debug/tests
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/
337783007
Mike Klein [Wed, 25 Jun 2014 17:21:56 +0000 (13:21 -0400)]
Rebase Test-Ubuntu12-ShuttleA-GTX660-x86-Release.
BUG=skia:2575
Review URL: https://codereview.chromium.org/
353883002
Mike Klein [Wed, 25 Jun 2014 16:35:19 +0000 (12:35 -0400)]
try release only
Mike Klein [Wed, 25 Jun 2014 16:23:53 +0000 (12:23 -0400)]
disable on nacl
mtklein [Wed, 25 Jun 2014 16:14:28 +0000 (09:14 -0700)]
Focus disabled optimizations on just BGRAConvolve2D, and only 32-bit.
Last CL accidentally disabled autovectorization on 64-bit builds too.
This fixes that.
BUG=skia:2575
R=rmistry@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
353823005
borenet [Wed, 25 Jun 2014 15:40:58 +0000 (08:40 -0700)]
Whitespace fixes for Python tools
BUG=skia:
R=rmistry@google.com
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
353853003
mtklein [Wed, 25 Jun 2014 15:27:08 +0000 (08:27 -0700)]
Temporarily disable autovectorization in core for 32-bit Linux builds.
BUG=skia:2575
R=rmistry@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
354833006
bsalomon [Wed, 25 Jun 2014 15:25:30 +0000 (08:25 -0700)]
Add valgrind supp for NV driver.
R=mtklein@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
351053002
Eric Boren [Wed, 25 Jun 2014 15:13:27 +0000 (11:13 -0400)]
Use new common tools in Python scripts
BUG=skia:2682
R=rmistry@google.com
Review URL: https://codereview.chromium.org/
330423004
kkinnunen [Wed, 25 Jun 2014 11:30:38 +0000 (04:30 -0700)]
Ignore degeneratesegments for nvprmsaa4 to unbreak the build
Ignore degeneratesegments for nvprmsaa4 to unbreak the build. The result image
seems to be inconsistent with different Linux GTX660 builds. Ignore the test for
Test-Ubuntu12-ShuttleA-GTX660-x86_64-Release.
BUG=skia:2689
R=rmistry@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/
345423006
borenet [Wed, 25 Jun 2014 07:29:50 +0000 (00:29 -0700)]
Update SKP version to 32
Automatic commit by the RecreateSKPs bot.
TBR=
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
352073002
mtklein [Tue, 24 Jun 2014 22:19:25 +0000 (15:19 -0700)]
Disable bogus _scaled benches until we can figure out why they're bogus.
BUG=skia:
R=halcanary@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
357513006
robertphillips [Tue, 24 Jun 2014 22:08:49 +0000 (15:08 -0700)]
Rename GrAtlasMgr to GrAtlas (and other cleanup)
This CL also renames the old GrAtlas to ClientPlotUsage and moves it into the new GrAtlas.
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
355673002
Brian Salomon [Tue, 24 Jun 2014 22:08:09 +0000 (18:08 -0400)]
rebase GMs
BUG=skia:
Review URL: https://codereview.chromium.org/
351973003
mtklein [Tue, 24 Jun 2014 21:16:50 +0000 (14:16 -0700)]
delete disabled bench
BUG=skia:
R=tomhudson@google.com, mtklein@google.com, junov@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
354693003
egdaniel [Tue, 24 Jun 2014 20:43:12 +0000 (13:43 -0700)]
Remove special case gpu transforms for Identity and Translate
Change will remove some special cases for coord transforms in favor of not needing to compile
a new program if the coord trans changes from one special case to another.
BUG=skia:
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/
344233006
robertphillips [Tue, 24 Jun 2014 20:10:43 +0000 (13:10 -0700)]
Move allocation of texture from SkGpuDevice to GrLayerCache
In order to atlas the layers the GrLayerCache needs to be given more control over where a given layer's texture is allocated (i.e., it could be a raw scratch texture or in the cache).
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/
350183006
borenet [Tue, 24 Jun 2014 19:40:01 +0000 (12:40 -0700)]
Bench: Change default maxMs from 4s to 1s.
Speculative fix for Android crashes.
BUG=skia:2080
R=mtklein@google.com, djsollen@google.com
Author: borenet@google.com
Review URL: https://codereview.chromium.org/
346263011
mtklein [Tue, 24 Jun 2014 19:28:34 +0000 (12:28 -0700)]
Support serialization in SkRecord-backed SkPictures.
Update DM to test SkRecord through SkPictureRecorder API.
BUG=skia:
R=robertphillips@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
345553003
bsalomon [Tue, 24 Jun 2014 18:16:52 +0000 (11:16 -0700)]
Make GrGLShaderBuilder::fragmentPosition() return a vec4, with 1.0 as the zw components when in the y-flip case. This works around an Adreno driver bug.
Revert "Stop referencing gl_FragCoord z and w components."
This reverts commit
160a52ba217012ed73c240f6d67b3bbf2b4879d6.
R=jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/
354663002
jvanverth [Tue, 24 Jun 2014 18:06:02 +0000 (11:06 -0700)]
Another iOS fix for SampleApp.
R=caryclark@google.com
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/
353683003
mtklein [Tue, 24 Jun 2014 17:12:39 +0000 (10:12 -0700)]
Prune some dead code from SkPicture.cpp.
There's no path that makes playback != fPlayback.get() anymore.
BUG=skia:
R=robertphillips@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/
352643002