Commit Graph

27882 Commits

Author SHA1 Message Date
Florin Malita
713b8ef374 Scrub DeviceCM
* remove unused fMatrix, fMatrixStorage
* fPaint  -> std::unique_ptr<>
* fDevice -> sk_sp<>

Change-Id: I790b54bfc4d8154216e620a8c1642f3955fe7be0
Reviewed-on: https://skia-review.googlesource.com/14624
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2017-04-28 15:21:22 +00:00
Ravi Mistry
d596c3f464 Testing permissions
Bug: skia:
Change-Id: I204a0956228de5afde9c5df02dc5afa12ab21bfd
Reviewed-on: https://skia-review.googlesource.com/14609
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2017-04-28 15:12:32 +00:00
Ben Wagner
1e9a30f944 Add non-Valgrind PreAbandonGpuContext bot.
This may help debug timeouts for
Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind_PreAbandonGpuContext

Also stop uploading *AbandonGpuContext results to Gold.

No-Try: true
Change-Id: Ifa10d47cf27f86424d3936f451d190ee34f5637d
Reviewed-on: https://skia-review.googlesource.com/14525
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-04-28 15:07:28 +00:00
Brian Salomon
611572ce3e Remove srgb flags from GrProcessorSet
Bug: skia:
Change-Id: Icbb1b2f39cac70c9d74603514786d76b46d0afd9
Reviewed-on: https://skia-review.googlesource.com/14603
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-04-28 15:07:27 +00:00
Ethan Nicholas
fe53e5828f additional skslc vector optimizations
Bug: skia:
Change-Id: I845d0952c281835a630882ae4026277c93ccf542
Reviewed-on: https://skia-review.googlesource.com/14406
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2017-04-28 15:02:23 +00:00
Mike Reed
93cb252c17 add GM to compare atlas and vertices
Bug: skia:6571
Change-Id: Ic97101c4623c7557eb33f69796232ed51a89af7e
Reviewed-on: https://skia-review.googlesource.com/14621
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-28 15:02:22 +00:00
Forrest Reiling
c04f8450d4 handle GrVkTransferBuffer::Create failure
Change-Id: I713dd7b678bfec6808bd6f57bfdf5748258e8b24
Reviewed-on: https://skia-review.googlesource.com/14420
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-04-27 22:43:06 +00:00
Ben Wagner
988d15effd [infra/bots] Treat extra_config as a list.
Dependency of https://skia-review.googlesource.com/c/14525/

No-Try: true
Change-Id: I7686576aa48865116fe8a593f08d395f901a1d04
Reviewed-on: https://skia-review.googlesource.com/14524
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-04-27 22:10:47 +00:00
Robert Phillips
cd901046ea Disable deferred proxies in Chrome
We will re-enable once the proxy instantiation is moved past the TextureSamplers

Bug: 715488
Change-Id: I4f0dee18fc191d7fffb6a2f4fedd825729ebb057
Reviewed-on: https://skia-review.googlesource.com/14520
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-27 21:26:29 +00:00
Matt Sarett
2cbb6662e3 Only store width and height on SkPixelRef
Bug: skia:6535
Change-Id: Id91e8d1e82f593be7d4b23ca5abde752f2666a77
Reviewed-on: https://skia-review.googlesource.com/14105
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-04-27 21:19:32 +00:00
Matt Sarett
0122af08f6 Revert "Delete copyTo(Allocator), hide copyTo() behind flag"
This reverts commit d4a338f4d0.

Reason for revert: Looks like I missed something I was supposed to delete in Android.

Original change's description:
> Delete copyTo(Allocator), hide copyTo() behind flag
> 
> Replace uses of copyTo() in Skia.
> 
> Bug: skia:6464
> Change-Id: I921dc53a1c29a5176d18f05741f7c0b5a008e548
> Reviewed-on: https://skia-review.googlesource.com/14502
> Commit-Queue: Matt Sarett <msarett@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> 

TBR=msarett@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I4d252940cc6a2462b030007055ea6c229471fc6e
Reviewed-on: https://skia-review.googlesource.com/14602
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-04-27 20:08:45 +00:00
Herb Derby
4b32ab1b7c Add instrumentation into SkArenaAlloc.
Add a parameter to the constructor that will have the dtor print out
stats for setting the initial parameters.

Clean up: Move some function so they are in the same order as .h

Change-Id: I19d87dcc9c3b8dcc3e1d4f2ff078b78bbc490d92
Reviewed-on: https://skia-review.googlesource.com/14600
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Herb Derby <herb@google.com>
2017-04-27 19:47:21 +00:00
Mike Klein
308e62416e jumper, remove C(int)
This finishes off integer constants... they should all be normal now.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win7-MSVC-Golo-CPU-AVX-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE41,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE2

Change-Id: I66ecc6533807fc59bb5ac9d3c5f7ab9e6e1f0d7f
Reviewed-on: https://skia-review.googlesource.com/14528
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-27 19:42:01 +00:00
Greg Daniel
e3bd422faf Revert "Plumb the use of GrBackendRenderTarget throughout Skia"
This reverts commit fdd77daedb.

Reason for revert: Apparently I have a few more build files to update before this can land.

Original change's description:
> Plumb the use of GrBackendRenderTarget throughout Skia
> 
> Bug: skia:
> Change-Id: Ib99a58d9552f5c7b8d77c09dcc72fa88326c26aa
> Reviewed-on: https://skia-review.googlesource.com/14148
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> 

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I984e1909870182474c4c3cce257f01b6a9d8581f
Reviewed-on: https://skia-review.googlesource.com/14531
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-04-27 18:48:19 +00:00
Brian Osman
df7e075c74 Fold SkImageCacherator into SkImage_Lazy
SkImageCacherator still exists, but only as an interface implemented
(solely) by SkImage_Lazy. The only external clients are
GrImageTextureMaker and SkImage_Gpu::getDeferredTextureImageData.

This is probably an improvement, but doesn't go as far as I'd hoped.

Bug: skia:
Change-Id: I6812badfabb6924b025621b21af00cbde9c16cac
Reviewed-on: https://skia-review.googlesource.com/14371
Reviewed-by: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-04-27 18:31:19 +00:00
Mike Klein
0aa742f15a jumper, replace _i with normal constants
So far I only seem to be encountering constant pools with float
constants, so integer constants should be easy to make normal.

This just removes _i.  There might be a couple integer constants
generated with C() too... they'll be the next CL.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win7-MSVC-Golo-CPU-AVX-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE41,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE2

Change-Id: Icc82cbc660d1e33bcdb5282072fb86cb5190d901
Reviewed-on: https://skia-review.googlesource.com/14527
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-27 18:23:58 +00:00
Greg Daniel
fdd77daedb Plumb the use of GrBackendRenderTarget throughout Skia
Bug: skia:
Change-Id: Ib99a58d9552f5c7b8d77c09dcc72fa88326c26aa
Reviewed-on: https://skia-review.googlesource.com/14148
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-04-27 18:15:38 +00:00
Greg Daniel
a41d48b739 Add additional checks when creating vulkan context
Makes sure we get the phsyical devices and queues we expect

Bug: skia:
Change-Id: I13031caa8aa85d680a8e921bee3237d6b53cebf0
Reviewed-on: https://skia-review.googlesource.com/14523
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-04-27 17:40:40 +00:00
Kevin Lubick
13b7dc03dd Don't reboot Pixel C or Nexus Player before task
We reboot this after in swarming with real adb, so this
is unnecessary and could, in fact, be harmful.

Bug: skia:6559
NOTRY=true
Change-Id: Iaf58416994637111c02013fe3c83f4ac92de2a66
Reviewed-on: https://skia-review.googlesource.com/14526
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2017-04-27 17:34:49 +00:00
Matt Sarett
d4a338f4d0 Delete copyTo(Allocator), hide copyTo() behind flag
Replace uses of copyTo() in Skia.

Bug: skia:6464
Change-Id: I921dc53a1c29a5176d18f05741f7c0b5a008e548
Reviewed-on: https://skia-review.googlesource.com/14502
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-04-27 17:18:03 +00:00
Mike Klein
9fa99614ec In ok thread mode, use wait_util instead of wait_for.
wait_for(delta) is wait_until(steady_clock::now() + delta) under the
hood, so using wait_for() like this implies an extra call to now() that
we can avoid by using wait_until().

We can hoist that call out and just do it once...  the past stays the past.

This is not super important.  Just noticed while profiling.  It's nice
to keep the overhead of the ok tool down so the real work can show.  :)

Change-Id: I89d25a800b63ebcfc229b5b3aa3f2dd621f4e7b4
Reviewed-on: https://skia-review.googlesource.com/14480
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2017-04-27 15:30:27 +00:00
Mike Klein
b4bbc64ade clear out C(), _i, and _f constants from SkJumper_vectors.h
I think this is just gonna be a bunch of baby steps for now.
This gets everything in SkJumper_vectors.h.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win7-MSVC-Golo-CPU-AVX-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE41,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE2

Change-Id: Ic87faa9bf6380a4fc9a577936dad8c3a9c48472e
Reviewed-on: https://skia-review.googlesource.com/14441
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2017-04-27 15:30:07 +00:00
Mike Reed
e51125557f remove legacy code
Bug: skia:
Change-Id: I719f68489e9295ec652ccb04de3b10632df534fa
Reviewed-on: https://skia-review.googlesource.com/14226
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-27 14:45:53 +00:00
Greg Daniel
4f7d97c16f Change vulkan image memory allocation back to using sub allocation
Bug: skia:
Change-Id: I8e1352c8d615b5a54ceba42500f0781767a1bd2d
Reviewed-on: https://skia-review.googlesource.com/14401
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-04-27 13:13:12 +00:00
Brian Osman
2feb796929 Finish removing GrContext param from onRefEncodedData
TBR=reed@roogle.com

Bug: skia:5485
Change-Id: Ia4ed45ffc39f2ba9a80d4a1001208079142ae985
Reviewed-on: https://skia-review.googlesource.com/14323
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-04-27 12:54:12 +00:00
Brian Osman
6251771ebc Fix color space handling in SkImage_Gpu::getROPixels
The dstColorSpace is a badly named parameter. It's a hint about where/how
the returned pixels are going to be used. Raster and GPU are meant to
ignore that information, codecs use it to drive our decoding heuristic.

This is a re-land of https://skia-review.googlesource.com/c/10109/

Bug: skia:
Change-Id: Iee006a8e014e028b4f0f2471d7152b6bccd72cb2
Reviewed-on: https://skia-review.googlesource.com/14404
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-04-27 12:50:12 +00:00
Mike Klein
56de05fec3 add #defines to limit SkCpu
I just noticed we don't really have any CPU test bots that have less
than AVX anymore.  I'd like to make sure we're testing each mode of
SkJumper at least, so I've added flags to let us limit to SSE2 or
SSE4.1, the modes currently missing coverage.

Add the bots to test these modes too.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE2,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Release-SK_CPU_LIMIT_SSE41

Change-Id: I7c2b061332e7f037538488260583076c34ae7b1e
Reviewed-on: https://skia-review.googlesource.com/14405
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-27 12:33:32 +00:00
Amaury Le Leyzour
ac0e705af1 Fix new IT blocks ARMv8
ARMv8 specifies that an IT block should be followed by only one 16-bit instruction.
* SkFloatToFix is back to a C implementation that mirrors the assembly code.

* S32A_D565_Opaque_neon switched the usage of the temporary 'ip' register to let
the compiler choose what is best in the context of the IT block. And replaced
'keep_dst' by 'ip' where low register or high register does not matter.

BUG=skia:

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Change-Id: If587110a0c74b637ae99460419d46cf969c694fc
Reviewed-on: https://skia-review.googlesource.com/9346
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-26 22:45:15 +00:00
Brian Osman
b8a1392b02 Fix uncached getROPixels from GPU images
We were allocating a local bitmap, but then attempting to read into an
uninitialized local pixmap. The only public API that funnels the caching
hint to this function is scalePixels, so I added a test (which previously
failed).

Bug: skia:
Change-Id: Ib4370350be664935b4c85e34c70b675e6d82ba64
Reviewed-on: https://skia-review.googlesource.com/14402
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-04-26 20:59:10 +00:00
Robert Phillips
f6d7eb158e Remove pre-allocated clip space from GrRenderTargetOpList
It seems like this should be safe (perf-regression-wise) since the arena allocated clips are used infrequently.

In the following, each GM run has 621 srcs and a total of 81087 ops.
Each skp run has 87 srcs and a total of 14709 ops.
The following table shows how many times the arena allocator is called for each config/src.
Overall, I think is safe to only allocate the arena-allocated space on an as needed basis.

gl-gm:       0
gl-skp:      0

gl-msaa4:    0
gl-msaa4:    0

glinst-gm:   1225
glinst-skp:  579

glnvpr4-gm:  623
glnvpr4-skp: 77

Change-Id: I78e04b060b6ad3b78697519249bb4b9c3193fc85
Reviewed-on: https://skia-review.googlesource.com/14392
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-26 19:28:19 +00:00
Mike Klein
67e617149d prep for more constants
- Add -z to print zero bytes instead of ...
 - avx+hsw will create 32-byte constants in .const,
   so we should disassemble those too, and align to 32 bytes.
 - The default _text section on Windows is 16-byte aligned,
   so we make a new one that's 32-byte aligned.

Change-Id: Icb2a962baa4c3735e98a992f2285eaf5cb1680fd
Reviewed-on: https://skia-review.googlesource.com/14364
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2017-04-26 19:14:19 +00:00
Mike Klein
459c9679a2 add SkLightingColorFilter for makeColorSpace()
This implementation should be identical to the previous one,
except we remember that the inputs to our matrix were colors
and transform them if so requested.

This fixes the GM lightingcolorfilter in gbr-8888 config.

Change-Id: Iea0d1079e1c0f5515019b3a4786fc5387dac92ff
Reviewed-on: https://skia-review.googlesource.com/14378
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-04-26 19:01:14 +00:00
Eric Boren
6ec17e3773 Add releaseAndAbandonGpuContext bot
Bug: skia:5142
Change-Id: I35bd42d1a9da2293092a2f09aaaf523a0f36537a
Reviewed-on: https://skia-review.googlesource.com/14376
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-04-26 18:58:24 +00:00
Mike Klein
4e92b821f0 SkColorFilter::makeColorSpace()
Change-Id: Idea4afac67ef348c2f4e64f4fe6a03704a86652f
Reviewed-on: https://skia-review.googlesource.com/14375
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-26 18:11:19 +00:00
Matt Sarett
d59948a171 SkPngCodec: Do not return kInvalidConversion on corrupt png
In this case, the fuzzer thinks there is a bug because we are
returning kInvalidConversion for a corrupt png file.

Bug: skia:6550
Change-Id: I33f588442f5eaa8a4d642e9328750779f9a9ef5d
Reviewed-on: https://skia-review.googlesource.com/14324
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2017-04-26 17:43:38 +00:00
Robert Phillips
ee683655a9 Remove GrResourceProvider & GrGpu pointers from GrRenderTargetOpList
Additional shrinking of GrRenderTargetOpList since there will soon be more of them.

Change-Id: Ib3e68fdf3462838baf7a5a2644e418be066cf79c
Reviewed-on: https://skia-review.googlesource.com/14363
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-26 16:29:08 +00:00
Matt Sarett
deca5c3af6 Respect cropRect in SkDropShadowImageFilter::onMakeColorSpace()
Bug: skia:6516
Change-Id: Iec940c585654d0c45aa8de7743c270bd54f6af7a
Reviewed-on: https://skia-review.googlesource.com/14370
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-04-26 16:25:10 +00:00
Ethan Nicholas
c81d22f337 broke up SkSLConstantFolding test
Bug: skia:
Change-Id: I496a6d1c82b4d3b6fdb34671de373c34abe90018
Reviewed-on: https://skia-review.googlesource.com/14321
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2017-04-26 15:52:49 +00:00
Mike Klein
39312c8f82 Describe GCC-like asm steps as "assemble ..."
Oddly, the MSVC toolchain already says "assemble ...".

Change-Id: Iabf06afa1b7c05b5699a26813f1469346be439a5
Reviewed-on: https://skia-review.googlesource.com/14367
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-26 14:59:55 +00:00
Robert Phillips
8185f59335 Hardwire opList lookAhead & lookBack parameters
If/when we double check these settings we can either re-add these parameters or change the code manually.
The driving goal here is to shrink GrRenderTargetOpList.

Change-Id: I7819de18f97e8282e8754e3438130f797ebb3c37
Reviewed-on: https://skia-review.googlesource.com/14381
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-26 14:49:55 +00:00
Mike Klein
c7be00366b remove to_2dot2 and from_2dot2
The parametric_{r,g,b} stages are just as good now;
under the hood it's all going through approx_powf.

Change-Id: If7f3ae1e24fcee2ddb201c1d66ce1dd64820c89a
Reviewed-on: https://skia-review.googlesource.com/14320
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-26 14:38:25 +00:00
Ben Wagner
21c131395f Remove SK_IGNORE_GASP_VERSION_CHECK.
All users have now been updated and this define is no longer used.

Change-Id: Ib701b6e31f7c0958eed3d97e033b334e09fa9bb0
Reviewed-on: https://skia-review.googlesource.com/14365
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-04-26 14:29:39 +00:00
Brian Salomon
5db010bfb5 Link to vulkan in tools but not library.
This also now requires an explicit vulkan proc address getter to be used with GrVkBackendContext::Create.

Change-Id: I768ec487398dab68e6e10409419ac7a00ec1822a
Reviewed-on: https://skia-review.googlesource.com/14322
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-04-26 12:50:03 +00:00
Robert Phillips
78de212909 Prevent creation of zero-sized proxies
This wasn't seen locally b.c. it is an assert and I only ran release locally and the CQ also only runs release.

I have added linux_trusty_blink_dbg as a try job.

TBR=bsalomon@google.com
Bug: 715392
Change-Id: I010626cb97e886d2fbfd767f948bc640f0534338
Reviewed-on: https://skia-review.googlesource.com/14361
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-04-26 12:19:31 +00:00
Chris Blume
2b6be207a1 Make SkNoncopyable movable
SkNoncopyable declares (but does not define) its copy constructor and
copy assignment operator. These are also private so the error for misuse
happens at compile-time instead of link-time.

However, this seems to be from before C++11.

Because other constructors were declared, the compiler does not generate
a move constructor or a move assignment operator. The result of this is
perfectly legal non-copying scenarios are also accidentally blocked. An
example of this is returning the non-copyable type. The object being
returned is a candidate for a move, since it is about to be destroyed.
And in C++17 copy elision is actually guaranteed.

Change-Id: Ia31be9091c644f31a45dd18216330a68be3cf456
Reviewed-on: https://skia-review.googlesource.com/14294
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-04-26 01:24:24 +00:00
Mike Klein
101806f452 Inject a dsb into SkAnalyticEdge::setLine() to work around ARMv7 CPU erratum.
BUG=chromium:710131

Change-Id: I4568bc24cc8fabb6f9df3b7645b01a98e11791b8
Reviewed-on: https://skia-review.googlesource.com/14062
Reviewed-by: Doug Anderson <dianders@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-25 22:47:52 +00:00
Mike Klein
0c66640ec8 remove SkOpts::run_pipeline() declaration.
I missed this while removing SkRasterPipeline_opts.h.

It's just a declaration... this won't change any generated code.

Change-Id: I66f6e9fe5341e9ff6a91981da9275c944a63fee9
Reviewed-on: https://skia-review.googlesource.com/14325
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-04-25 22:31:12 +00:00
Ben Wagner
a2fc16e677 Update PixelC to latest build.
Bug: skia:
No-Try: true
Change-Id: I1d9a6a7c1d1e0ca11abac4c3334eafe021fc825f
Reviewed-on: https://skia-review.googlesource.com/14302
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2017-04-25 20:15:40 +00:00
Brian Salomon
290c69052b Add ability to relinquish control of VkDevice and VkInstance lifetime to GrVkBackendContext
Change-Id: I355a8bf573a84b4ba7cbfeed60feec13e251b352
Reviewed-on: https://skia-review.googlesource.com/14303
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-04-25 19:53:53 +00:00
Ethan Nicholas
3deaeb2dc0 sksl can now fold constant vector or matrix equality expressions
Bug: skia:
Change-Id: Icaddae68e53ed3629bcdc04b5f0b541d9e4398e2
Reviewed-on: https://skia-review.googlesource.com/14260
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2017-04-25 19:39:13 +00:00