aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* Make SkGr.h private and remove unused functionsGravatar Brian Osman2017-03-08
| | | | | | | | | BUG=skia: Change-Id: I6699d00c5412ed9d9bf14b032a08b06b1c766bce Reviewed-on: https://skia-review.googlesource.com/9398 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add instanced rendering command line flag to viewer.Gravatar Brian Salomon2017-03-08
| | | | | | | | | Previously this could only be turned on at runtime. Change-Id: I1b626584fba17fcf8ff64135dd93f98c7f40821d Reviewed-on: https://skia-review.googlesource.com/9445 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Remove SkChunckAllocGravatar Herb Derby2017-03-08
| | | | | | | Change-Id: Ia400dd2d8aa398cf53852acd71c4a45228752496 Reviewed-on: https://skia-review.googlesource.com/9328 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Use Fibonacci instead of 2^n for block growth.Gravatar Herb Derby2017-03-08
| | | | | | | | | | | | Chrome on android showed an increase of 5% memory use when 2^n block growth was introduced. Use Fibonacci instead. BUG=chromium:699130 Change-Id: I228d66385c63d487e72db46356f44e9efb5fa0f3 Reviewed-on: https://skia-review.googlesource.com/9447 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* remove SkClipVisitorGravatar Mike Reed2017-03-08
| | | | | | | | | | | | With new device clipping, this is unsupported on SkCanvas BUG=skia: Change-Id: I39443f213be1005b8b9208d604e4bfb31cbda424 Reviewed-on: https://skia-review.googlesource.com/9349 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Revert "Optimize mipmap downsample_2_2 in sRGB mode"Gravatar Derek Sollenberger2017-03-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3ea01f72f20d4f58bf0dcd420fa5c2724b67ac8d. Reason for revert: triggering errors on the MSAN bots Original change's description: > Optimize mipmap downsample_2_2 in sRGB mode > > Desktop (HP z620) > Before: > mipmap_build_2048x2048_0_gamma 10.5 ms > mipmap_build_2048x2048_1_gamma 77.1 ms > After: > mipmap_build_2048x2048_0_gamma 10.5 ms > mipmap_build_2048x2048_1_gamma 25.1 ms > > Pixel XL > Before: > mipmap_build_2048x2048_0_gamma 160 ms > mipmap_build_2048x2048_1_gamma 1.5 s > After: > mipmap_build_2048x2048_0_gamma 160 ms > mipmap_build_2048x2048_1_gamma 313 ms > > Also provides marginal performance improvements > for other sRGB downsamples. > > BUG=skia: > > Change-Id: Icfcd2ccd69676ccf3822db8042a4698e4464bb71 > Reviewed-on: https://skia-review.googlesource.com/9386 > Commit-Queue: Matt Sarett <msarett@google.com> > Reviewed-by: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,mtklein@google.com,msarett@google.com,brianosman@google.com,reed@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: I06907fb1691077a03daadc0980e86393bc08d9c5 Reviewed-on: https://skia-review.googlesource.com/9450 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* remove SkPictureUtils.hGravatar Mike Reed2017-03-08
| | | | | | | | | | BUG=skia: Change-Id: Iab6e71f347fa34baf442e38ba7773058695f3e6d Reviewed-on: https://skia-review.googlesource.com/9348 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Add jobs for building for ChromecastGravatar Kevin Lubick2017-03-08
| | | | | | | | | BUG=skia:6345 Change-Id: Iaf09eb7f57ae71687c6804221837a8cc8ef04931 Reviewed-on: https://skia-review.googlesource.com/9419 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Eric Boren <borenet@google.com>
* Revert "Fix SkJumper gcc warning"Gravatar Mike Klein2017-03-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit e353e81a6fdf401310e0643280ec34d9de0019a3. Reason for revert: crashing Original change's description: > Fix SkJumper gcc warning > > TBR=mtklein@google.com > > Change-Id: I1c3201307a1cd74a441d63d505882dc5535e150e > Reviewed-on: https://skia-review.googlesource.com/9416 > Reviewed-by: Florin Malita <fmalita@chromium.org> > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Florin Malita <fmalita@chromium.org> > TBR=mtklein@chromium.org,mtklein@google.com,fmalita@chromium.org,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I937e37be90f951fbbd1307dcc334d955addfec1f Reviewed-on: https://skia-review.googlesource.com/9446 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* clip to elements directly, no need for replay indirectionGravatar Mike Reed2017-03-08
| | | | | | | | | | | | allows us to remove SkCanvas::replayClips in future CL BUG=skia: Change-Id: I20c3700c8a331b4988fc1332702ff0e0565e94bc Reviewed-on: https://skia-review.googlesource.com/9417 Reviewed-by: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Turn on SkJumper all the time."Gravatar Mike Klein2017-03-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 135555101cbde68656f028c41506113374a4026f. Reason for revert: forgot g3, seems to break Chrome NaCl builders? https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20Win/builds/15969/steps/compile/logs/stdio Original change's description: > Turn on SkJumper all the time. > > If the previous CL sticks, it's now easy to turn on SkJumper everywhere: > I was mostly holding back because of build system complexity. > > This has the main effect of turning on SkJumper in Chromium. > It's already been on on our local test bots and on Android framework. > > Change-Id: I7fbfc6aaaa7dace9c3f2cb509583c69b10997dbf > Reviewed-on: https://skia-review.googlesource.com/9380 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,herb@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I69747e9e75b2a8e3d78f6c150c9b6d6453e00632 Reviewed-on: https://skia-review.googlesource.com/9444 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Refactor GrColorSpaceXformHelperGravatar Brian Osman2017-03-08
| | | | | | | | | | | | | | | Nonlinear blending mode is going to (sometimes) require additional uniforms and shader code for color space transformation. This change just alters the usage of the helper struct so that we can hide any new logic (without having to change all the FPs that use it). BUG=skia: Change-Id: I913478a387973f5bad5aa09a29f85d21daacab94 Reviewed-on: https://skia-review.googlesource.com/9414 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Fix SkJumper gcc warningGravatar Florin Malita2017-03-08
| | | | | | | | | | TBR=mtklein@google.com Change-Id: I1c3201307a1cd74a441d63d505882dc5535e150e Reviewed-on: https://skia-review.googlesource.com/9416 Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Add a unique ID to GrOpLists and return it from GrRenderTargetContext::addDrawOpGravatar Robert Phillips2017-03-08
| | | | | | | | | This is to support the preFlush callbacks Change-Id: I8513ea08b6516681566eceafa789b2ee7925ebce Reviewed-on: https://skia-review.googlesource.com/9199 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Make GPU dm sink correctly advertise whether it is multisampledGravatar Brian Salomon2017-03-08
| | | | | | | Change-Id: I46f1611ae6205b1db474c689b6afdc4d84fd63fd Reviewed-on: https://skia-review.googlesource.com/9415 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add gm to compare premuls in dst vs. src color spaceGravatar Matt Sarett2017-03-08
| | | | | | | | | BUG=skia: Change-Id: I36755f4bbc405a8af12990573e1f554df012b30a Reviewed-on: https://skia-review.googlesource.com/9402 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* special device for not drawing -- performs no clippingGravatar Mike Reed2017-03-08
| | | | | | | | | | | | | | | Running nanobench clip_overhead_recording_lite Before : 240us After : 177us BUG=skia:6214 Change-Id: I9ae6f9170c151798ffdc6c584a48b08cc7705d6b Reviewed-on: https://skia-review.googlesource.com/9409 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Derek Sollenberger <djsollen@google.com>
* bin/fetch-clang-formatGravatar Hal Canary2017-03-08
| | | | | | | Change-Id: I7deb9b49b4a3a361888a6afc07b4c6341a4b16cf Reviewed-on: https://skia-review.googlesource.com/9410 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Hal Canary <halcanary@google.com>
* formatting change: FuzzCanvas.cppGravatar Hal Canary2017-03-08
| | | | | | | Change-Id: I55345c193e6a15f650a992053d00bc42ef6a8854 Reviewed-on: https://skia-review.googlesource.com/9412 Reviewed-by: Hal Canary <halcanary@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* DW last resort font default name not necessary.Gravatar Ben Wagner2017-03-08
| | | | | | | | | | | | | | | Currently in SkFontMgr_DirectWrite when trying to find some last resort font SystemParametersInfoW failing is considered a fatal error and so onLegacyCreateTypeface will return nullptr. Instead, treat failure of getDefaultFontFamily as ignorable and continue to the default default. BUG=chromium:697672 Change-Id: I1ea018627487fbd39b1d0eebad4c798346d09c94 Reviewed-on: https://skia-review.googlesource.com/9408 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* SkPDF: Always get advances at unitsPerEm.Gravatar Hal Canary2017-03-08
| | | | | | | | | | | | | * Work around BUG=chromium:696356 * SkTestScalerContext needs a return a em-size. * SkPDFFont::MakeVectorCache which always produces a glyph cache at emsize. Replaces vector_cache(). * Stop looking at fLastGlyphID and fEmSize in TypefaceMetrics. Change-Id: I28d93b8f62d461a60fa046e9aaf7fa6d116a7ee5 Reviewed-on: https://skia-review.googlesource.com/9324 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Remove SK_SUPPORT_LEGACY_AAA flag as chromium now turns it offGravatar Yuqian Li2017-03-08
| | | | | | | | | BUG=skia: Change-Id: I3b385b8aeab08f402f4471637bf641cd456c8c56 Reviewed-on: https://skia-review.googlesource.com/9327 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* Use glXCreateContextAttribsARB in viewer to make it easier to attach RenderDoc.Gravatar Brian Salomon2017-03-08
| | | | | | | Change-Id: I0cc82fe826b81a082b579f60af3d9ef35d5fe351 Reviewed-on: https://skia-review.googlesource.com/9407 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Rename not-fBlendCorrectly to fNonLinearBlendingGravatar Matt Sarett2017-03-08
| | | | | | | | | | | | No policy or behavior changes here, just a rename. BUG=skia: Change-Id: Ieefa5c5bbd40f25d4fef81f07b50b4057ea732b4 Reviewed-on: https://skia-review.googlesource.com/9406 Commit-Queue: Matt Sarett <msarett@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Optimize mipmap downsample_2_2 in sRGB modeGravatar Matt Sarett2017-03-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Desktop (HP z620) Before: mipmap_build_2048x2048_0_gamma 10.5 ms mipmap_build_2048x2048_1_gamma 77.1 ms After: mipmap_build_2048x2048_0_gamma 10.5 ms mipmap_build_2048x2048_1_gamma 25.1 ms Pixel XL Before: mipmap_build_2048x2048_0_gamma 160 ms mipmap_build_2048x2048_1_gamma 1.5 s After: mipmap_build_2048x2048_0_gamma 160 ms mipmap_build_2048x2048_1_gamma 313 ms Also provides marginal performance improvements for other sRGB downsamples. BUG=skia: Change-Id: Icfcd2ccd69676ccf3822db8042a4698e4464bb71 Reviewed-on: https://skia-review.googlesource.com/9386 Commit-Queue: Matt Sarett <msarett@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Turn on SkJumper all the time.Gravatar Mike Klein2017-03-08
| | | | | | | | | | | | | If the previous CL sticks, it's now easy to turn on SkJumper everywhere: I was mostly holding back because of build system complexity. This has the main effect of turning on SkJumper in Chromium. It's already been on on our local test bots and on Android framework. Change-Id: I7fbfc6aaaa7dace9c3f2cb509583c69b10997dbf Reviewed-on: https://skia-review.googlesource.com/9380 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Refactor GrTextBlobCacheGravatar Florin Malita2017-03-08
| | | | | | | | | | | Instead of a single-level cache with blob-id-derived key, refactor GrTextBlobCache as a two-level cache with a direct blob-id key (to support efficient lookup by id in future CLs). Change-Id: Idf29c05224faeb04919610a3935572773d5aba03 Reviewed-on: https://skia-review.googlesource.com/9400 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Add GalaxyS6 bot.Gravatar Ben Wagner2017-03-08
| | | | | | | | | | BUG=skia:6337 NOTRY=true Change-Id: Ibddd57c461d3a1ce62245487dfc0e4eeeba1978a Reviewed-on: https://skia-review.googlesource.com/9397 Commit-Queue: Eric Boren <borenet@google.com> Reviewed-by: Eric Boren <borenet@google.com>
* FuzzCanvas: SkColorFilterGravatar Hal Canary2017-03-07
| | | | | | | | | | | * Also fix SkRRect generation to only make valid RRs.a * drawDRRect only draws if outer contains inner. * Also fix SkComposeColorFilter::toString Change-Id: Ia75da2813555b7714663929d0ec288ae2a86d9f1 Reviewed-on: https://skia-review.googlesource.com/9399 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
* Fuzz Canvas: Remember that nextRange is inclusive.Gravatar Hal Canary2017-03-07
| | | | | | | | BUG=skia:6336 Change-Id: I5ca005f8bf821d5a6f153c3df80d4c7309519cba Reviewed-on: https://skia-review.googlesource.com/9395 Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Add viewer GUI options for desktop and Android to toggle instanced rendering.Gravatar Brian Salomon2017-03-07
| | | | | | | | | BUG=skia: Change-Id: I42674abfb7ee764f676100ac0e84cc0f07620bec Reviewed-on: https://skia-review.googlesource.com/9396 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* optimize intersect, use getType to utilize fast-case in preTranslateGravatar Mike Reed2017-03-07
| | | | | | | | | | | | | | | 10-15% speed up in clip_record_overhead bench Comparing the raw fType field was missing the (maybe deprecatable) IsRectToRect bit (0x10), which is set for identity and translate matrices, so we were never taking the fast case. BUG=skia: Change-Id: I1c73f4bae42f2311454c7568ef8891239c3cae83 Reviewed-on: https://skia-review.googlesource.com/9388 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Herb Derby <herb@google.com>
* SkJumper: constant() embeds constants directly in codeGravatar Mike Klein2017-03-07
| | | | | | | | | | | This is a potential alternative to threading around a constants struct. I've applied it in a smattering of locations to get a feel for it. If we like it and the performance is fine, I'll follow up with the rest. Change-Id: Ief469e17d6da2cb94e4545ae96cf5d2604ffba88 Reviewed-on: https://skia-review.googlesource.com/9393 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Control making of GrSemaphore objects inside of GrResourceProviderGravatar Greg Daniel2017-03-07
| | | | | | | | | | | | This change will help us get to the point of not needing access to the GrGpu object from GrContext. BUG=skia: Change-Id: Icff9815c73f1791d2ce34a4d27c57898a36f2b8f Reviewed-on: https://skia-review.googlesource.com/9391 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* GrTessellator: convert contours to VertexLists.Gravatar Stephen White2017-03-07
| | | | | | | | | | | | | | This is a cleanup patch; should have no user-visible effects. Note that contours are now returned opened, rather than closed. This plays better with VertexList, and makes the code simpler. BUG=skia: Change-Id: I6a422fed0805cdca53cf0697b8427fff7cd77ad3 Reviewed-on: https://skia-review.googlesource.com/9343 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
* Groundwork for nonlinear blending mode in GaneshGravatar Brian Osman2017-03-07
| | | | | | | | | | | | | | Changing a bit of plumbing so we have what we need for one-off color conversion, and fixing the logic in some of our surface validation. Plenty more to come, want to submit this stuff in manageable chunks. BUG=skia:6242 Change-Id: Iac9954c7cc490cc99663db4b9cdf5d6388fc39c7 Reviewed-on: https://skia-review.googlesource.com/9389 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add GrOp::wasRecorded and use in instanced rendering for tracking.Gravatar Brian Salomon2017-03-07
| | | | | | | | | BUG=skia: Change-Id: I4c5cdf47d42b7adae3649c7f96caabe68f45acbf Reviewed-on: https://skia-review.googlesource.com/9308 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* SkJumper: a couple stages used by color filtersGravatar Mike Klein2017-03-07
| | | | | | | | | | | | Nothing too interesting here. - 4x5 matrix is the same as 2x3 and 3x4, but bigger. - luminance to alpha is pretty boring indeed. Change-Id: I24893df15d1e22cbb500d946e1bbb58aa1522c8c Reviewed-on: https://skia-review.googlesource.com/9385 Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Move from SkChunkAlloc to SkArenaAlloc for PathOpsGravatar Herb Derby2017-03-07
| | | | | | | | | Attempt two. Remove ~SkOpContour because it is handled by the SkArenaAlloc. Change-Id: Id3049db97aebcc1009d403a031f2fac219f58f2f Reviewed-on: https://skia-review.googlesource.com/9381 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Be able to compile nanobench for ChromecastGravatar Kevin Lubick2017-03-07
| | | | | | | | | | | | | | | | | | | | | | | | Get toolchain from https://goto.google.com/ncoqy and put in $CAST_TOOLCHAIN gn gen out/chromecast --args='cc="$CAST_TOOLCHAIN/armv7a/bin/armv7a-cros-linux-gnueabi-gcc" cxx="$CAST_TOOLCHAIN/armv7a/bin/armv7a-cros-linux-gnueabi-g++" ar="$CAST_TOOLCHAIN/armv7a/bin/armv7a-cros-linux-gnueabi-ar" is_official_build=true skia_use_fontconfig=false extra_ldflags=["-static-libstdc++","-static-libgcc"] target_cpu="arm" skia_enable_gpu=false skia_use_system_freetype2=false' ninja -C out/chromecast nanobench We go with is_official_build to minimize binary size, as the chromecast does not have much onboard storage. They do not package libstdc++ so we add the link options: -static-libstdc++ -static-libgcc -momit-leaf-frame-pointer is not supported, so we delete it, as it is not important. BUG=skia: Change-Id: I7b0882ab5d6109f07345a2d59df265efef9b9554 Reviewed-on: https://skia-review.googlesource.com/9338 Commit-Queue: Kevin Lubick <kjlubick@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Remove dead links in SampleApp docs.Gravatar Mike Klein2017-03-07
| | | | | | | | | NOTRY=true Change-Id: I503e413a22855301610427743912ccad1f1f8ed9 Reviewed-on: https://skia-review.googlesource.com/9384 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert[6] "Remove SkDraw from device-draw methods, and enable device-centric ↵Gravatar Mike Reed2017-03-07
| | | | | | | | | | | | | | | | | clipping."""""" Previous failure was failure to detect that the clip wasn't wide-open when optimizing for retain-vs-discard in copy-on-write. gm:copy_on_write_retain detected this. Now fixed by adding new method to SkBaseDevice.h This reverts commit 27d07f0acb85eea4062075dfbe9148ce12d92c66. BUG=skia:6214 Change-Id: I532d16ec075a4525c2a550b1157bcec695dd8efd Reviewed-on: https://skia-review.googlesource.com/9341 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>
* Move GrDrawOp pipeline/clip processing to GrRenderTargetContextGravatar Brian Salomon2017-03-07
| | | | | | | | | This is currently done in GrOpList. However, it can trigger resource creation, which in turn can trigger a flush. In the future flushing may destroy the op list. Change-Id: I21cb1e10060bf31c95431c0511fcfff637cd6498 Reviewed-on: https://skia-review.googlesource.com/9304 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Back to code as data arrays, this time in .text.Gravatar Mike Klein2017-03-07
| | | | | | | | | | | | | | | | | This technique lets us generate a single source file, use the C++ preprocessor, and avoid the pain of working with assemblers. By using the section attribute or declspec allocate, we can put these data arrays into the .text section, making them ordinary code. This is like the previous solution, except it should actually run. CQ_INCLUDE_TRYBOTS=skia.primary:Test-Win2k8-MSVC-GCE-CPU-AVX2-x86_64-Debug,Test-Mac-Clang-MacMini6.2-CPU-AVX-x86_64-Debug,Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug,Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug Change-Id: Ide7675f6cf32eb4831ff02906acbdc3faaeaa684 Reviewed-on: https://skia-review.googlesource.com/9336 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Don't run image tests on msaa configs.Gravatar Brian Salomon2017-03-07
| | | | | | | | | | BUG=skia:6331 BUG=skia:4888 Change-Id: I8b66f4662342c2b60ddd2859146839d7cb09bbeb Reviewed-on: https://skia-review.googlesource.com/9339 Reviewed-by: Matt Sarett <msarett@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Revert "Move from SkChunkAlloc to SkArenaAlloc for PathOps"Gravatar Derek Sollenberger2017-03-07
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 38c60180241e335e368fdadbf7856aff114ff668. Reason for revert: breaking ASAN run in TAP build Original change's description: > Move from SkChunkAlloc to SkArenaAlloc for PathOps > > Change-Id: Iab111a4ebcae4e896b1fdfe285def9ef0ae2ab6b > Reviewed-on: https://skia-review.googlesource.com/7314 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Herb Derby <herb@google.com> > TBR=herb@google.com,caryclark@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I6364254571bb1617a9f45ed08f2af4a59f9d5841 Reviewed-on: https://skia-review.googlesource.com/9335 Reviewed-by: Derek Sollenberger <djsollen@google.com> Commit-Queue: Derek Sollenberger <djsollen@google.com>
* fix RecordOptsTest.cpp on Android frameworkGravatar Mike Klein2017-03-07
| | | | | | | Change-Id: Iea45ece603cf0700860f55860b565c73088dca14 Reviewed-on: https://skia-review.googlesource.com/9333 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Revert "Fix new IT blocks ARMv8"Gravatar Mike Klein2017-03-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 90165c2269bc33ca3d6aaa73d528194daf48da4e. Reason for revert: Skia and Chrome iOS builds broken. ../../third_party/skia/include/private/SkFixed.h:106:41: error: invalid output constraint '+t' in asm asm("vcvt.s32.f32 %0, %0, #16": "+t"(x)); Original change's description: > 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: I096759841c972e9300c1d0293bc80d3c3ff2747b > Reviewed-on: https://skia-review.googlesource.com/9340 > Reviewed-by: Mike Klein <mtklein@chromium.org> > Commit-Queue: Mike Klein <mtklein@chromium.org> > TBR=mtklein@chromium.org,amaury.leleyzour@arm.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: Idbcbda88039066153e1c34233d43366ab114fd01 Reviewed-on: https://skia-review.googlesource.com/9332 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* Fix new IT blocks ARMv8Gravatar Amaury Le Leyzour2017-03-06
| | | | | | | | | | | | | | | | | | 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: I096759841c972e9300c1d0293bc80d3c3ff2747b Reviewed-on: https://skia-review.googlesource.com/9340 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Mike Klein <mtklein@chromium.org>
* add test for copy-on-write optimizationGravatar Mike Reed2017-03-06
| | | | | | | | | | exercises a bug in the device-clip CL (hopefully to land soon) BUG=skia: Change-Id: I5a740280e1a3d6a4634338d04d9f1a1f9dc84dbb Reviewed-on: https://skia-review.googlesource.com/9325 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Mike Reed <reed@google.com>