aboutsummaryrefslogtreecommitdiffhomepage
path: root/gyp
Commit message (Collapse)AuthorAge
...
* Make the Sk GL context class an abstract base classGravatar kkinnunen2014-10-09
| | | | | | | | | | | | | | | | | | | | | | | Make the Sk GL context class, SkGLNativeContext, an abstract base class. Before, it depended on ifdefs to implement the platform dependent polymorphism. Move the logic to subclasses of the various platform implementations. This a step to enable Skia embedders to compile dm and bench_pictures. The concrete goal is to support running these test apps with Chromium command buffer. With this change, Chromium can implement its own version of SkGLNativeContext that uses command buffer, and host the implementation in its own repository. Implements the above by renaming the SkGLContextHelper to SkGLContext and removing the unneeded SkGLNativeContext. Also removes SkGLNativeContext::AutoRestoreContext functionality, it appeared to be unused: no use in Skia code, and no tests. BUG=skia:2992 Committed: https://skia.googlesource.com/skia/+/a90ed4e83897b45d6331ee4c54e1edd4054de9a8 Review URL: https://codereview.chromium.org/630843002
* Implement C path functionsGravatar robertphillips2014-10-08
| | | | | | Mainly just to familiarize myself with this code. Review URL: https://codereview.chromium.org/633183002
* Add SkCachedData and use it for SkMipMapGravatar reed2014-10-08
| | | | | | | | This reverts commit 37c5a815d8ea33247968212ef4cc83394ceee1bc. TBR=mtklein Review URL: https://codereview.chromium.org/635333002
* Revert of Make the Sk GL context class an abstract base class (patchset #4 ↵Gravatar bsalomon2014-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | id:60001 of https://codereview.chromium.org/630843002/) Reason for revert: nanobech failing on Android Original issue's description: > Make the Sk GL context class an abstract base class > > Make the Sk GL context class, SkGLNativeContext, an abstract base class. Before, > it depended on ifdefs to implement the platform dependent polymorphism. Move > the logic to subclasses of the various platform implementations. > > This a step to enable Skia embedders to compile dm and bench_pictures. The > concrete goal is to support running these test apps with Chromium command buffer. > > With this change, Chromium can implement its own version of SkGLNativeContext > that uses command buffer, and host the implementation in its own repository. > > Implements the above by renaming the SkGLContextHelper to SkGLContext and > removing the unneeded SkGLNativeContext. Also removes > SkGLNativeContext::AutoRestoreContext functionality, it appeared to be unused: > no use in Skia code, and no tests. > > BUG=skia:2992 > > Committed: https://skia.googlesource.com/skia/+/a90ed4e83897b45d6331ee4c54e1edd4054de9a8 TBR=kkinnunen@nvidia.com NOTREECHECKS=true NOTRY=true BUG=skia:2992 Review URL: https://codereview.chromium.org/639793002
* Make the Sk GL context class an abstract base classGravatar kkinnunen2014-10-08
| | | | | | | | | | | | | | | | | | | | | Make the Sk GL context class, SkGLNativeContext, an abstract base class. Before, it depended on ifdefs to implement the platform dependent polymorphism. Move the logic to subclasses of the various platform implementations. This a step to enable Skia embedders to compile dm and bench_pictures. The concrete goal is to support running these test apps with Chromium command buffer. With this change, Chromium can implement its own version of SkGLNativeContext that uses command buffer, and host the implementation in its own repository. Implements the above by renaming the SkGLContextHelper to SkGLContext and removing the unneeded SkGLNativeContext. Also removes SkGLNativeContext::AutoRestoreContext functionality, it appeared to be unused: no use in Skia code, and no tests. BUG=skia:2992 Review URL: https://codereview.chromium.org/630843002
* Cleanup of shader building systemGravatar joshualitt2014-10-07
| | | | | | | | | | | | | | | | | this is a huge refactor and cleanup of the gl shader building system in Skia. The entire shader building pipeline is now part of GrGLProgramCreator, which takes a gp, and some fps, and creates a program. I added some subclasses of GrGLProgram to handle the eccentricities of Nvpr/Nvpres. Outside of the builders folder and GrGLPrograms, this change is basically just a rename solo gp BUG=skia: Committed: https://skia.googlesource.com/skia/+/fe1233c3f12f81bb675718516bbb32f72af726ec Review URL: https://codereview.chromium.org/611653002
* Revert of Cleanup of shader building system (patchset #25 id:470001 of ↵Gravatar joshualitt2014-10-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/611653002/) Reason for revert: Seems to have messed up windows 7 gms Original issue's description: > Cleanup of shader building system > > this is a huge refactor and cleanup of the gl shader building system in > Skia. The entire shader building pipeline is now part of > GrGLProgramCreator, which takes a gp, and some fps, and creates a > program. I added some subclasses of GrGLProgram to handle the > eccentricities of Nvpr/Nvpres. Outside of the builders folder > and GrGLPrograms, this change is basically just a rename > > > solo gp > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/fe1233c3f12f81bb675718516bbb32f72af726ec TBR=bsalomon@google.com NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/635533005
* Cleanup of shader building systemGravatar joshualitt2014-10-07
| | | | | | | | | | | | | | | this is a huge refactor and cleanup of the gl shader building system in Skia. The entire shader building pipeline is now part of GrGLProgramCreator, which takes a gp, and some fps, and creates a program. I added some subclasses of GrGLProgram to handle the eccentricities of Nvpr/Nvpres. Outside of the builders folder and GrGLPrograms, this change is basically just a rename solo gp BUG=skia: Review URL: https://codereview.chromium.org/611653002
* Add -Wno-invalid-offsetof to Mac and iOS builds too.Gravatar mtklein2014-10-07
| | | | | | | | | | | | We use this on Linux already, but for whatever reason wasn't a problem on iOS until using it in SkPaint. Mac 10.7 and 10.8 are showing this warning too, but seems -Werror is not enabled. CQ_EXTRA_TRYBOTS=tryserver.skia:Build-Mac10.7-Clang-Arm7-Release-iOS-Trybot BUG=skia: Review URL: https://codereview.chromium.org/637593002
* Add GrAASmallPathRenderer.Gravatar jvanverth2014-10-06
| | | | | | | | | Uses cached signed distance fields to render scaled and rotated versions of small paths. BUG=skia:2935 Review URL: https://codereview.chromium.org/589103004
* Speculative revert to diagnose crash in chrome. Revert "Add SkCachedData and ↵Gravatar reed2014-10-03
| | | | | | | | | | | use it for SkMipMap" This reverts commit 92561a0b99ad6c08ab7a11dd1872f028199392e9. crasher in question: https://code.google.com/p/chromium/issues/detail?id=420178 Review URL: https://codereview.chromium.org/617613003
* Add SkCachedData and use it for SkMipMapGravatar reed2014-10-02
| | | | Review URL: https://codereview.chromium.org/592843003
* Caching the result of readPixelsSupportedGravatar piotaixr2014-10-02
| | | | | | | | | | | | | | | | | The call was calling GR_GL_GetIntegerv 2 times for each readPixels and thus was causing a loss of performance (resubmit of issue 344793008) Benchmark url: http://packages.gkny.fr/tst/index.html BUG=skia:2681 Committed: https://skia.googlesource.com/skia/+/753a2964afe5661ce9b2a8ca77ca9d0aabd3173c Committed: https://skia.googlesource.com/skia/+/8339371f1ec3c57a0741932fd96bff32c53d4e54 Review URL: https://codereview.chromium.org/364193004
* Archive more dead code.Gravatar mtklein2014-10-02
| | | | | | | | These classes were used by QuadTree, which has been archived (with prejudice). BUG=skia: Review URL: https://codereview.chromium.org/616963006
* BBHs: void* data -> unsigned dataGravatar mtklein2014-10-02
| | | | | | | | | | | | | | Now that the old backend's not using BBHs, we can specialize them for SkRecord's needs. The only thing we really want to store is op index, which should always be small enough to fit into an unsigned (unsigned also helps keep it straight from other ints floating around). This means we'll need half (32-bit) or a quarter (64-bit) the bytes in SkTileGrid, because we don't have to store an extra int for ordering. BUG=skia:2834 Review URL: https://codereview.chromium.org/617393004
* Add support for EGL on linuxGravatar derekf2014-10-01
| | | | | | Allow setting skia_egl=1 to build skia against EGL instead of GLX on unix Review URL: https://codereview.chromium.org/604853003
* Archive more dead code.Gravatar mtklein2014-09-30
| | | | | | | | | BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/617003004
* Strip old backend recording down to essentialsGravatar mtklein2014-09-30
| | | | | | | | | | | | | | | | | | | | | | | | | Feature-wise, this removes: 1) BBH support; 2) peephole optimizations; 3) record-time text op specializations; 4) the guarantee that SkPaints are flattened. This deletes the optimizations GM, which only exists to test the peepholes of the old backend. SkRecord optimizations are unit tested, and if that ever fails we can think about adding another GM like this, but they're different enough we'd want to start from scratch anyway. We need to keep the code that plays back the specialized text ops around for a while for compatibility with existing .SKPs that have those ops recorded. BUG=skia: CQ_EXTRA_TRYBOTS=tryserver.skia:Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT-Trybot R=robertphillips@google.com, reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/617953002
* Make "priv" classes for GrTexure and GrSurface.Gravatar bsalomon2014-09-30
| | | | | | | | R=robertphillips@google.com, egdaniel@google.com, joshualitt@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/596053002
* Clean up SK_PICTURE_USE_SK_RECORD and SK_PICTURE_OPTIMIZE_SK_RECORD.Gravatar mtklein2014-09-30
| | | | | | | | | | | | | | | | | This folds the code through as if they were defined, which is the explicit state in both our build and Chrome's. This leaves the EXPERIMENTAL_ and DEPRECATED_ hooks in to be cleaned up or privatized later. CQ_EXTRA_TRYBOTS=tryserver.skia:Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT-Trybot BUG=skia: R=reed@google.com, robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/616033002
* Archive SkFloatGravatar mtklein2014-09-30
| | | | | | | | | | | | https://crrev.com/610153002/ reminded me that it existed, but it's entirely unused and made moot by hardware FP. Might as well trim a few K off libskia. BUG=skia: R=reed@google.com, mtklein@google.com, tfarina@chromium.org Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/619563003
* Revert of Make "priv" classes for GrTexure and GrSurface. (patchset #9 ↵Gravatar robertphillips2014-09-30
| | | | | | | | | | | | | | | | | | | | | | | id:260001 of https://codereview.chromium.org/596053002/) Reason for revert: Breaking the Chrome builds with: lib/libcc.so: error: undefined reference to 'GrAutoScratchTexture::detach()' (http://108.170.220.120:10117/builders/Canary-Chrome-Ubuntu13.10-Ninja-x86_64-DRT/builds/2990/steps/Retry_BuildContentShell_1/logs/stdio) Original issue's description: > Make "priv" classes for GrTexure and GrSurface. R=egdaniel@google.com, joshualitt@google.com, bsalomon@google.com TBR=bsalomon@google.com, egdaniel@google.com, joshualitt@google.com NOTREECHECKS=true NOTRY=true Author: robertphillips@google.com Review URL: https://codereview.chromium.org/618733002
* Make "priv" classes for GrTexure and GrSurface.Gravatar bsalomon2014-09-29
| | | | | | | | R=robertphillips@google.com, egdaniel@google.com, joshualitt@google.com, joshualitt@chromium.org Author: bsalomon@google.com Review URL: https://codereview.chromium.org/596053002
* Split GrDrawState and GrOptDrawState into separate classes and remove base ↵Gravatar egdaniel2014-09-26
| | | | | | | | | | | | | class. Besides splitting the two classes, there are no logical changes here and mostly moving code around. BUG=skia: R=bsalomon@google.com Author: egdaniel@google.com Review URL: https://codereview.chromium.org/597323002
* Revert "Add support for EGL on linux"Gravatar borenet2014-09-24
| | | | | | | | | | | | | | | This reverts commit 1cea736c3280b6f0553e3eaa598e41370b305b57. Caused segfaults on all Android devices R=bsalomon@google.com, djsollen@google.com TBR=bsalomon, djsollen NOTRY=true BUG=skia: Author: borenet@google.com Review URL: https://codereview.chromium.org/599493003
* Add support for EGL on linuxGravatar derekf2014-09-23
| | | | | | | | | | Allow setting skia_egl=1 to build skia against EGL instead of GLX on unix R=bsalomon@google.com, djsollen@google.com Author: derekf@osg.samsung.com Review URL: https://codereview.chromium.org/543363004
* Patch to create a distinct geometry processor. The vast majority of this patchGravatar joshualitt2014-09-23
| | | | | | | | | | | | | is just a rename. The meat is in GrGeometryProcessor, GrProcessor, GrGL*Processor, GrProcessorStage, Gr*BackendProcessorFactory, GrProcessUnitTestFactory, and the builders BUG=skia: R=bsalomon@google.com Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/582963002
* remove flags that now live in chrome's SkUserConfig.hGravatar reed2014-09-22
| | | | | | | | | NOTRY=True TBR=robertphilips@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/591133003
* Introduce Props to surface (patchset #27 id:520001 of ↵Gravatar reed2014-09-22
| | | | | | | | | | | | https://codereview.chromium.org/551463004/)" This reverts commit 29c857d0f3a1cb837f73406eeb6ba9771879b5e7. TBR= Author: reed@google.com Review URL: https://codereview.chromium.org/588143004
* Revert of introduce Props to surface (patchset #27 id:520001 of ↵Gravatar reed2014-09-21
| | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/551463004/) Reason for revert: Broke call site in WebKit Original issue's description: > introduce Props to surface (work in progress) > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/3716fd067a5621bb94a6cb08d72afec8bf3aceda R=robertphillips@google.com, bsalomon@google.com, jvanverth@google.com, bungeman@google.com, fmalita@google.com, vangelis@chromium.org, reed@google.com TBR=bsalomon@google.com, bungeman@google.com, fmalita@google.com, jvanverth@google.com, reed@google.com, robertphillips@google.com, vangelis@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Author: reed@chromium.org Review URL: https://codereview.chromium.org/583773004
* introduce Props to surface (work in progress)Gravatar reed2014-09-21
| | | | | | | | | BUG=skia: R=robertphillips@google.com, bsalomon@google.com, jvanverth@google.com, bungeman@google.com, fmalita@google.com, vangelis@chromium.org, reed@chromium.org Author: reed@google.com Review URL: https://codereview.chromium.org/551463004
* Get rid of SkImage_CodecGravatar piotaixr2014-09-19
| | | | | | | | | | | Use SkImage_Raster with an ImageGenerator instead. BUG=skia:2948 R=junov@chromium.org, reed@google.com, bsalomon@chromium.org Author: piotaixr@chromium.org Review URL: https://codereview.chromium.org/589713002
* SkTextBlob shader space workaround.Gravatar fmalita2014-09-19
| | | | | | | | | | | | | | | Blink would like drawTextBlob(x,y) to behave the same as drawText(x,y) WRT shader space. Due to the current generic device base impl, that is not the case. This is a transitional workaround, pending proper drawTextBlob impls in SkDevice classes. R=reed@google.com, robertphillips@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/586743002
* Uses a single pre-baked set of paths for drawing nvpr text of a givenGravatar cdalton2014-09-18
| | | | | | | | | | | | | | | | | | | | | | | | | typeface. Loads the paths using the driver's glyph loading routines. Refactors GrPathRange to accept a PathGenerator class that it uses to lazily initialize its paths. The client code is no longer expected to initialize the paths in a GrPathRange; instead it must provide a PathGenerator* instance to createPathRange(). Adds a new createGlyphs() method to GrPathRendering that creates a range of glyph paths, indexed by glyph id. GrPathRendering implements createGlyphs() with a PathGenerator that loads glyph paths using the skia frameworks. GrGLPathRendering uses glMemoryGlyphIndexArrayNV() instead, when possible, to load the glyph paths. Removes all GlyphPathRange logic from GrStencilAndCoverTextContext. It instead uses createGlyphs(). BUG=skia:2939 R=bsalomon@google.com, jvanverth@google.com Author: cdalton@nvidia.com Review URL: https://codereview.chromium.org/563283004
* fix battlefield website by disallowing very small coordinatesGravatar caryclark2014-09-18
| | | | | | | | | | | also add and remove comments to document other attempts to fix this that had drawbacks R=fmalita@chromium.org BUG=414409 Author: caryclark@google.com Review URL: https://codereview.chromium.org/575553003
* Add SkMiniData.Gravatar mtklein2014-09-17
| | | | | | | | | | | | | | | This is a bit like a limited SkData, geared to store really tiny byte strings. This is not hooked up anywhere beyond the new unit test. I did experimentally plumb it into SkRecord for drawPosTextH: just over 40% of drawPosTextH calls in our repo can fit into ShortData. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/573323002
* declare to gypi where SkDeviceProperties.h moved toGravatar reed2014-09-17
| | | | | | | | | | NOTRY=True NOTREECHECKS=True TBR= Author: reed@google.com Review URL: https://codereview.chromium.org/574383002
* hide deviceproperties, prepare the way for surfacepropsGravatar reed2014-09-17
| | | | | | | | | | BUG=skia: NOTRY=True R=bungeman@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/577023002
* Rename GrProgramResource to GrGpuResourceRefGravatar bsalomon2014-09-17
| | | | | | | | | BUG=skia:2889 R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/574333003
* Revert "Revert "Move SkGpuDevice.h to src/gpu""Gravatar bsalomon2014-09-17
| | | | | | | | | | | This reverts commit b0a35f7c5d2c4bfeb601e3ac43f412d202a25292. R=borenet@google.com TBR=borenet@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/575783003
* Breaking out full program and frag onlyGravatar joshualitt2014-09-17
| | | | | | | | | BUG=skia: R=bsalomon@google.com Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/576543005
* Revert of nanobench: lazily decode bitmaps from SKPs (patchset #1 id:1 of ↵Gravatar mtklein2014-09-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/572933006/) Reason for revert: skia:2944 Original issue's description: > nanobench: lazily decode bitmaps from SKPs > > This makes it considerably cheaper to run SKP recording benchmarks, without > affecting their measurements and without really affecting SKP playback > benchmarks at all. > > On my machine, running out/Release/nanobench --match skp --config nondrendering > drops in run time from 6.7s to 2.5s, and the peak RAM usage drops from 129M to 50M. > > I'm strongly considering making this lazy decoding the default. > > BUG=skia:2944 > > Committed: https://skia.googlesource.com/skia/+/d664c21a38de98d8db210c46f7a8c4187f1534da R=robertphillips@google.com, mtklein@chromium.org TBR=mtklein@chromium.org, robertphillips@google.com NOTREECHECKS=true NOTRY=true BUG=skia:2944 Author: mtklein@google.com Review URL: https://codereview.chromium.org/554583004
* Revert "Move SkGpuDevice.h to src/gpu"Gravatar borenet2014-09-17
| | | | | | | | | | | | | | | This reverts commit d99bbb61e58e8bd34db3954147ce1c9166fe4637. Causing Chrome canary failures as well as failures of Chrome trybots due to not cleaning up properly after failed DEPS roll attempts. BUG=skia: R=bsalomon@google.com, reed@google.com TBR=bsalomon, reed Author: borenet@google.com Review URL: https://codereview.chromium.org/579733003
* Move SkGpuDevice.h to src/gpuGravatar bsalomon2014-09-16
| | | | | | | | R=reed@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/545193006
* nanobench: lazily decode bitmaps from SKPsGravatar mtklein2014-09-16
| | | | | | | | | | | | | | | | | | This makes it considerably cheaper to run SKP recording benchmarks, without affecting their measurements and without really affecting SKP playback benchmarks at all. On my machine, running out/Release/nanobench --match skp --config nondrendering drops in run time from 6.7s to 2.5s, and the peak RAM usage drops from 129M to 50M. I'm strongly considering making this lazy decoding the default. BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/572933006
* Fix scaling issue with distance field text.Gravatar jvanverth2014-09-16
| | | | | | | | | | | | | Picks the correct distance field size based on both the text size and the max matrix scale. Adjusts the matrix scale if non-unity. Also adds GM for verifying proper distance field scaling. BUG=skia:2928 R=bsalomon@google.com, joshualitt@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/568843002
* Nested picture nanobenchGravatar fmalita2014-09-15
| | | | | | | | | | Measure picture overhead for recording & playback using a Sierpinski fractal (http://skfiddle.com/c/a2b6e60d775543b7c29a5d45d0371c02) with various picture nesting levels. R=mtklein@google.com, reed@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/566393002
* BUG=skia:Gravatar joshualitt2014-09-15
| | | | | | | | R=bsalomon@google.com, egdaniel@google.com, jvanverth@google.com, robertphillips@google.com Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/543623004
* Fix recording of saveLayout with unusual Xfermodes.Gravatar dneto2014-09-15
| | | | | | | | | | | | This is the root cause of a Chrome rendering bug when it tiles layers with masks. BUG=skia:1291,chromium:401593 R=reed@google.com, mtklein@google.com, junov@chromium.org Author: dneto@chromium.org Review URL: https://codereview.chromium.org/568073004
* Add flag to call SkRecordOptimize on new pictures.Gravatar mtklein2014-09-15
| | | | | | | | | | | As usual it's enabled by default in the Skia tree. Will flip in Chrome after this rolls. BUG=skia: R=robertphillips@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/573773002