aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
Commit message (Collapse)AuthorAge
* Remove yet-unused 64-bit atomic hooks.Gravatar Mike Klein2014-07-16
| | | | | | | | | | | | For now, I think we'll just be using sk_atomic_inc on 64-bit values, so let's cut out the dead code for now. NOTREECHECKS=true BUG=skia: R=bsalomon@google.com Review URL: https://codereview.chromium.org/398003004
* Revert of Makes GrGLProgramDesc's key store the lengths as well as offsets ↵Gravatar mtklein2014-07-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of the effect keys. (https://codereview.chromium.org/379113004/) Reason for revert: Most likely candidate for Valgrind failures: [21:10:08.755668] ==3036== Use of uninitialised value of size 8 [21:10:08.755753] ==3036== at 0x734AB2: GrGpuGL::ProgramCache::getProgram(GrGLProgramDesc const&, GrEffectStage const**, GrEffectStage const**) (GrGpuGL_program.cpp:107) [21:10:08.755788] ==3036== by 0x734ED2: GrGpuGL::flushGraphicsState(GrGpu::DrawType, GrDeviceCoordTexture const*) (GrGpuGL_program.cpp:253) [21:10:08.755811] ==3036== by 0x6E81C2: GrGpu::setupClipAndFlushState(GrGpu::DrawType, GrDeviceCoordTexture const*, GrDrawState::AutoRestoreEffects*, SkRect const*) (GrGpu.cpp:350) [21:10:08.755837] ==3036== by 0x6E9BE8: GrGpu::onDraw(GrDrawTarget::DrawInfo const&) (GrGpu.cpp:390) [21:10:08.755858] ==3036== by 0x6EEECE: GrInOrderDrawBuffer::flush() (GrDrawTarget.h:506) [21:10:08.755879] ==3036== by 0x6D0EB4: GrContext::flush(int) (GrContext.cpp:1327) [21:10:08.755900] ==3036== by 0x6D3F8F: GrContext::writeTexturePixels(GrTexture*, int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrContext.cpp:1349) [21:10:08.755922] ==3036== by 0x6D39D7: GrContext::writeRenderTargetPixels(GrRenderTarget*, int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrContext.cpp:1632) [21:10:08.755949] ==3036== by 0x6FFDF3: GrRenderTarget::writePixels(int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrRenderTarget.cpp:45) [21:10:08.755978] ==3036== by 0x735563: SkGpuDevice::onWritePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkGpuDevice.cpp:280) [21:10:08.756003] ==3036== by 0x57A048: SkBaseDevice::writePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkDevice.cpp:106) [21:10:08.756025] ==3036== by 0x56D0AE: SkCanvas::writePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkCanvas.cpp:700) [21:10:08.756050] ==3036== by 0x56D156: SkCanvas::writePixels(SkBitmap const&, int, int) (SkCanvas.cpp:652) [21:10:08.756077] ==3036== by 0x5109B6: test_WritePixels(skiatest::Reporter*, GrContextFactory*) (WritePixelsTest.cpp:464) [21:10:08.756099] ==3036== by 0x51114C: skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (WritePixelsTest.cpp:361) [21:10:08.756122] ==3036== by 0x406BE8: skiatest::Test::run() (Test.cpp:107) [21:10:08.756145] ==3036== by 0x4064C2: SkTestRunnable::run() (skia_test.cpp:109) [21:10:08.756167] ==3036== by 0x405D1A: tool_main(int, char**) (skia_test.cpp:221) [21:10:08.756189] ==3036== by 0x405F75: main (skia_test.cpp:239) [21:10:08.756211] ==3036== Uninitialised value was created by a stack allocation [21:10:08.756233] ==3036== at 0x734CC8: GrGpuGL::flushGraphicsState(GrGpu::DrawType, GrDeviceCoordTexture const*) (GrGpuGL_program.cpp:213) Original issue's description: > Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys. > > Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF. > > Cleans up docs around GrBackendEffectFactory. > > Committed: https://skia.googlesource.com/skia/+/c0ea398aff8254e31152cbb94c9ab6150428e252 R=robertphillips@google.com, jvanverth@google.com, bsalomon@google.com TBR=bsalomon@google.com, jvanverth@google.com, robertphillips@google.com NOTREECHECKS=true NOTRY=true Author: mtklein@google.com Review URL: https://codereview.chromium.org/394213002
* Remove kImageIsImmutable_Flag.Gravatar scroggo2014-07-15
| | | | | | | | | | | | | | | | | | This flag was only used when setting or checking SkBitmap's immutability when it did not have an SkPixelRef. Now that an SkBitmap *must* have one in order to draw (e.g. you can no longer have an SkBitmap that owns its pixels directly), its immutabity without an SkPixelRef makes no sense. Also, now that the flags are not contiguous starting from 0x01, use a more appropriate check to ensure only meaningful flags are used. R=reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/387083002
* Makes GrGLProgramDesc's key store the lengths as well as offsets of the ↵Gravatar bsalomon2014-07-15
| | | | | | | | | | | | | | effect keys. Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF. Cleans up docs around GrBackendEffectFactory. R=robertphillips@google.com, jvanverth@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/379113004
* SkAutoRef seems lonely. Might as well delete it.Gravatar mtklein2014-07-15
| | | | | | | | | | | | | (On the other hand, SkAutoUnref is well-used.) NOTREECHECKS=true BUG=skia: R=bungeman@google.com, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/393953004
* Change SkCanvasState to use inheritance.Gravatar scroggo2014-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The base class, SkCanvasState, now holds the version, width, and height. These fields will always be a necessary part of the class. (Also add in some padding.) The other fields, which may change, have been moved into the subclass, SkCanvasState_v1. If/when the version changes, it will correspond to a new subclass. In SkCanvasStateUtils::CreateFromCanvasState, check the version on the base class, then do a static_cast to the version corresponding to SkCanvasState::version. Remove CANVAS_STATE_VERSION, which is redundant with the version specified by the subclass. Use unambiguous type for rowBytes. Build Android with SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG. This allows us to run the full suite of CanvasState tests. It is also representative of what will be used on Android by WebView. Fix CanvasStateTest where it was broken inside ifdef'ed out code. Use SkCanvas::getBaseLayerSize() instead of the deprecated SkCanvas::getDeviceSize(). Update the comments in the header to be more clear. In particular, an SkCanvasState can only be used to pass an SkCanvas' state to a future version of Skia (or the same); not an older version. NOTREECHECKS=true BUG=b/15693384 R=reed@google.com, mtklein@google.com, djsollen@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/372003002
* patch from issue 383923002Gravatar reed2014-07-14
| | | | | | | | TBR= Author: reed@google.com Review URL: https://codereview.chromium.org/394603003
* Cleanup: Remove unused/unimplemented SkTextLayout.h.Gravatar tfarina2014-07-14
| | | | | | | | | | | | | Nobody uses it in Skia, Chromium and Blink. And it does not have any implementation either. BUG=None TEST=make all R=mtklein@google.com, reed@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/385323002
* remove unused SkPixelRef constructorGravatar reed2014-07-14
| | | | | | | | TBR= Author: reed@google.com Review URL: https://codereview.chromium.org/390893002
* remove SK_SUPPORT_LEGACY_PIXELREF_UNFLATTENABLE codeGravatar reed2014-07-14
| | | | | | | | TBR= Author: reed@google.com Review URL: https://codereview.chromium.org/387313004
* Make SkPictureShader and SkPictureImageFilter use const SkPicturesGravatar robertphillips2014-07-14
| | | | | | | | | R=mtklein@google.com, reed@google.com TBR=reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/390023002
* Remove unused kImageIsOpaque_Flag.Gravatar scroggo2014-07-14
| | | | | | | | | | | This flag is never set or read. We now look at the alpha type to determine opacity. R=reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/385943003
* Deleted SkImage::newShaderClamp: not used, not implemented.Gravatar piotaixr2014-07-14
| | | | | | | | | | | Implemented SkImage::newShader. BUG=skia:2701, 344804 R=junov@chromium.org, reed@chromium.org, bsalomon@chromium.org, reed@google.com Author: piotaixr@chromium.org Review URL: https://codereview.chromium.org/345463009
* Remove Skia's use of the default SkPicture constructor and multi-cloneGravatar Robert Phillips2014-07-13
| | | | | | | | | This cannot be landed until (Chrome: Switch to one-at-a-time SkPicture::clone interface - https://codereview.chromium.org/380323002/) has landed. R=mtklein@google.com TBR=reed@google.com Review URL: https://codereview.chromium.org/388833003
* Remove SkPicture copy constructorGravatar robertphillips2014-07-13
| | | | | | | | | | Given where we're heading with SkPicture why would you need to make a copy? R=reed@google.com, mtklein@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/381133002
* Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixelsGravatar reed2014-07-13
| | | | | | | | | | This reverts commit 651eaeadeb0b1407f5fe192aeda90db1680fa2b8. TBR= Author: reed@chromium.org Review URL: https://codereview.chromium.org/390693002
* Revert of Add SkBitmap::readPixels() and reimplement copyTo and ↵Gravatar reed2014-07-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | SkCanvas::readPixels (https://codereview.chromium.org/388803007/) Reason for revert: still failing (randomly?) bench sometimes. need stack dump to diagnose. Original issue's description: > Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels > usning it. > > Revert "Revert of add readPixels() to SkBitmap (https://codereview.chromium.org/377303002/)" > > This reverts commit d08cb905a7cc80d8fb868bbd14fffe1cd68adcce. > > TBR=scroggo@google.com > > Committed: https://skia.googlesource.com/skia/+/debba5c3d091159149f8a88ab5dcd44dd72e0dc7 R=reed@google.com TBR=reed@google.com NOTREECHECKS=true NOTRY=true Author: reed@chromium.org Review URL: https://codereview.chromium.org/382543005
* Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixelsGravatar reed2014-07-12
| | | | | | | | | | | | | | | usning it. Revert "Revert of add readPixels() to SkBitmap (https://codereview.chromium.org/377303002/)" This reverts commit d08cb905a7cc80d8fb868bbd14fffe1cd68adcce. R=reed@chromium.org TBR=scroggo@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/388803007
* Refactor SkGrFontScaler and SkGrFontKey into non-virtual versions.Gravatar jvanverth2014-07-11
| | | | | | | | | | | | | This is a pre-cleanup for another change, but has the side benefit of making the code simpler in general. No perf increase, despite removing virtual functions. R=bsalomon@google.com, egdaniel@google.com Author: jvanverth@google.com Review URL: https://codereview.chromium.org/385263002
* ios fixesGravatar caryclark2014-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | skia_ios.mm Get the app's Documents directory and pass use it to set the resource path. This is a quick hack which will be replaced by a new application that is a tiny shim around a command line tool. SkImageEncoder.h SkForceLinking.cpp SkImageDecoder_CG.cpp Add support for FORCE_LINKING so iOS sees the PNG encoder and others. SkFloatBits.cpp SkPoint.cpp Handle denormalized numbers that are floored by the iOS ARM processor. SkImageDecoder_iOS.mm Remove empty encoder factory. SkTouchGesture.cpp Return early on empty state on touch rather than aborting (crashing) JpegTest.cpp Hal via stackoverflow.com says partial jpegs can be gray as well. skia_test.cpp Remove crash handler call for now to avoid link failure. OverwriteLine.h Remove fancy line overwrite for iOS. Resources.cpp Add interface to set resource directory based on runtime query. BUG=skia:2736 skia:2737 skia:2738 R=reed@google.com, halcanary@google.com, mtklein@google.com, tfarina@chromium.org Author: caryclark@google.com Review URL: https://codereview.chromium.org/373383003
* Remove SK_SUPPORT_LEGACY_SHADER_LOCALMATRIX.Gravatar scroggo2014-07-11
| | | | | | | | | | | This is no longer needed by Android. BUG=skia:1976 R=reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/379323002
* Use SkShader's localMat for SkLocalMatrixShader.Gravatar scroggo2014-07-11
| | | | | | | | | | | | Instead of setting SkShader::fLocalMatrix to Identity and storing a separate SkMatrix inside SkLocalMatrixShader, reuse SkShader::fLocalMatrix. R=reed@google.com Author: scroggo@google.com Review URL: https://codereview.chromium.org/386693003
* This moves us towards variable length effect keys. The overall program key ↵Gravatar bsalomon2014-07-11
| | | | | | | | | | now allows for it. After the header it stores an array of offsets to effect keys. This allows us to grab the effect keys to pass to effects when they generate code. It also ensures that we can't get a collision by sets of keys that are different lengths but are the same when appended together. R=robertphillips@google.com, jvanverth@google.com, egdaniel@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/356513003
* Add support for 64bit atomic inc/dec/casGravatar bsalomon2014-07-11
| | | | | | | | R=mtklein@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/377073002
* Revert of add readPixels() to SkBitmap ↵Gravatar jcgregorio2014-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/377303002/) Reason for revert: Maybe causing crashes in bench. http://108.170.220.120:10117/builders/Test-ChromeOS-Daisy-MaliT604-Arm7-Debug/builds/2608/steps/RunBench/logs/stdio Original issue's description: > add readPixels() to SkBitmap > > BUG=chromium:390782 > > Committed: https://skia.googlesource.com/skia/+/c4f216151b6ade70c35fade09a353052f40236b1 R=scroggo@google.com, bsalomon@google.com, reed@google.com TBR=bsalomon@google.com, reed@google.com, scroggo@google.com NOTREECHECKS=true NOTRY=true BUG=chromium:390782 Author: jcgregorio@google.com Review URL: https://codereview.chromium.org/382243003
* Revert of Add alternate SkPicture::clone ↵Gravatar robertphillips2014-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/381193002/) Reason for revert: Going to try to just remove the many-at-once clone interface Original issue's description: > Add alternate SkPicture::clone > > This adds an alternate version of SkPicture::clone for two reasons: > > 1) Chromium uses the SkPicture copy constructor to unpack the pictures from the old-style clone interface (and I would like to remove the copy ctor) > > 2) This is part of the long term plan to wean Chrome off of cloning. Once pictures are thread safe we will switch the new SkPicture::clone call to just return 'this'. From there it is a small step to removing clone entirely. > > Note that the two versions of clone() is temporary. Once this is landed (and rolled) I will land a Chrome-side patch to remove their use of the old interface (Use new SkPicture::clone interface - https://codereview.chromium.org/380323002/) > > Committed: https://skia.googlesource.com/skia/+/e372e78223a8ce916d276d6e0420d552fb0267e9 R=mtklein@google.com, reed@google.com TBR=mtklein@google.com, reed@google.com NOTREECHECKS=true NOTRY=true Author: robertphillips@google.com Review URL: https://codereview.chromium.org/386933004
* Add file access modes to sk_exists.Gravatar bungeman2014-07-10
| | | | | | | | | | | | Both Windows and Posix 'access' calls take a mode parameter which, in addition to checking existence, checks access modes. This change exposes this functionality. R=mtklein@google.com, reed@google.com Author: bungeman@google.com Review URL: https://codereview.chromium.org/384903002
* add readPixels() to SkBitmapGravatar reed2014-07-10
| | | | | | | | | BUG=chromium:390782 R=scroggo@google.com, bsalomon@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/377303002
* Add alternate SkPicture::cloneGravatar robertphillips2014-07-10
| | | | | | | | | | | | | | | | This adds an alternate version of SkPicture::clone for two reasons: 1) Chromium uses the SkPicture copy constructor to unpack the pictures from the old-style clone interface (and I would like to remove the copy ctor) 2) This is part of the long term plan to wean Chrome off of cloning. Once pictures are thread safe we will switch the new SkPicture::clone call to just return 'this'. From there it is a small step to removing clone entirely. Note that the two versions of clone() is temporary. Once this is landed (and rolled) I will land a Chrome-side patch to remove their use of the old interface (Use new SkPicture::clone interface - https://codereview.chromium.org/380323002/) R=mtklein@google.com, reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/381193002
* Split SkTRacy into SkTRacy and SkTRacyReffable.Gravatar mtklein2014-07-10
| | | | | | | | | | | | | | | | | Looks like TSAN can't always suppress our existing implementation of SkTRacy (what is turning here into SkTRacyReffable). To minimize flakiness, use SkTRacy where possible and SkTRacyReffable where necessary. BUG=skia: Committed: https://skia.googlesource.com/skia/+/497cda3a6b72b9cb390334e8756d38b4ffac044f NOTRY=true R=robertphillips@google.com, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/388503002
* Split SkTRacy into SkTRacy and SkTRacyReffable.Gravatar mtklein2014-07-10
| | | | | | | | | | | | | Looks like TSAN can't always suppress our existing implementation of SkTRacy (what is turning here into SkTRacyReffable). To minimize flakiness, use SkTRacy where possible and SkTRacyReffable where necessary. BUG=skia: R=robertphillips@google.com, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/388503002
* Cleanup SkPicture* classes a bitGravatar robertphillips2014-07-10
| | | | | | | | | | | | This is an attempt to reduce the number of friends the various SkPicture* classes have. Probably the only controversial part is making getBitmap, getPath, getPicture and getPaint public on SkPictureData (and adding a new initIterator entry point). R=mtklein@google.com, reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/384753004
* Delete third_party/harfbuzzGravatar Mike Klein2014-07-10
| | | | | | | BUG=skia: R=bungeman@google.com, reed@google.com Review URL: https://codereview.chromium.org/384503008
* Split SkPictureReplacementPlayback out of SkPicturePlaybackGravatar robertphillips2014-07-10
| | | | | | | | R=mtklein@google.com, reed@google.com Author: robertphillips@google.com Review URL: https://codereview.chromium.org/383733002
* fix typo, had two RGBA instead of RGBA and BGRAGravatar reed2014-07-09
| | | | | | | | | TBR=caryclark@google.com BUG=skia: Author: reed@chromium.org Review URL: https://codereview.chromium.org/382633004
* Do not export SkTDArray when building Skia as a DLLGravatar ehsan.akhgari2014-07-09
| | | | | | | | | | | | | | | | This class has four members (deleteAll, freeAll, unrefAll and safeUnrefAll) which will only compile for certain instantiations of SkTDArray depending on the template argument type. Marking this class as dllexport breaks the build with clang-cl because of http://llvm.org/PR20163. Since this class is header-only, we can just make it non-exported to enable building Skia as a DLL with clang-cl. BUG=skia: R=ctguil@chromium.org, mtklein@google.com, reed@google.com Author: ehsan.akhgari@gmail.com Review URL: https://codereview.chromium.org/368253002
* Cleanup: Remove SkUTF16_Str API.Gravatar tfarina2014-07-09
| | | | | | | | | | | | It does not have any users in Skia, Blink and Chromium. BUG=None TEST=make all R=mtklein@google.com, reed@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/366243004
* Remove ability for Release code to call getRefCnt() or getWeakRefCnt().Gravatar mtklein2014-07-09
| | | | | | | | | | | | | | | | | | | | These getRefCnt() methods are not thread safe, so Skia code should not be calling them. unique() is fine. SkDEBUG code (SkASSERTs) can still call getRefCnt() / getWeakRefCnt(). This adds tools/RefCntIs.{h,cpp}, which lets tests make their assertions in both debug and release modes. BUG=skia:2726 Committed: https://skia.googlesource.com/skia/+/4ae94ffce5ecf1b71cb5e295b68bf4ec9e697443 R=senorblanco@chromium.org, mtklein@google.com, reed@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/378643003
* Add thread safety configuration check.Gravatar henrik.smiding2014-07-09
| | | | | | | | | | | | | | | | | Enables the possibility to set thread model in the configuration files (like Android does). Also adds a warning check to make sure that we have an implementation for the thread safety class. Author: joakim.landberg@intel.com Signed-off-by: Henrik Smiding <henrik.smiding@intel.com> R=reed@google.com, mtklein@google.com, tomhudson@google.com, djsollen@google.com, joakim.landberg@intel.com, torne@chromium.org, scroggo@google.com Author: henrik.smiding@intel.com Review URL: https://codereview.chromium.org/361423003
* Revert "Remove ability for Release code to call getRefCnt() or getWeakRefCnt()."Gravatar Mike Klein2014-07-09
| | | | | | | | This reverts commit 4ae94ffce5ecf1b71cb5e295b68bf4ec9e697443. BUG=skia: Review URL: https://codereview.chromium.org/382523002
* Add SkRacyGravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | | | | | | | SkRacy<T> is a zero-overhead wrapper for a T, except it also silences race warnings when TSAN is running. Here we apply in several classes. In SkMatrix and SkPathRef, we use it to opportunistically cache some idempotent work. In SkPixelRef, we wrap the genIDs. We think the worst that can happen here is we'll increment the global next-genID a few times instead of once when we go to get another ID. BUG=skia: Committed: https://skia.googlesource.com/skia/+/d5e3e6ae1b3434ad1158f441902ff65f1eeaa3a7 CQ_EXTRA_TRYBOTS=tryserver.skia:Canary-Chrome-Ubuntu13.10-Ninja-x86_64-ToT-Trybot,Canary-Chrome-Win7-Ninja-x86-SharedLib_ToT-Trybot,Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/371363004
* Revert of Add SkRacy (https://codereview.chromium.org/371363004/)Gravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reason for revert: hidden symbol 'AnnotateBenignRaceSized' in obj/base/third_party/dynamic_annotations/libdynamic_annotations.a(obj/base/third_party/dynamic_annotations/dynamic_annotations.dynamic_annotations.o) is referenced by DSO lib/libblink_platform.so Original issue's description: > Add SkRacy > > SkRacy<T> is a zero-overhead wrapper for a T, except it also > silences race warnings when TSAN is running. > > Here we apply in several classes. In SkMatrix and SkPathRef, > we use it to opportunistically cache some idempotent work. > > In SkPixelRef, we wrap the genIDs. We think the worst that > can happen here is we'll increment the global next-genID a > few times instead of once when we go to get another ID. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/d5e3e6ae1b3434ad1158f441902ff65f1eeaa3a7 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/377693005
* Revert of Missing volatile in AnnotateBenignRaceSized declaration. ↵Gravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/380473002/) Reason for revert: sdf Original issue's description: > Missing volatile in AnnotateBenignRaceSized declaration. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/f7a180b R=mtklein@chromium.org TBR=mtklein@chromium.org NOTREECHECKS=true NOTRY=true BUG=skia: Author: mtklein@google.com Review URL: https://codereview.chromium.org/379623004
* Missing volatile in AnnotateBenignRaceSized declaration.Gravatar Mike Klein2014-07-08
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/380473002
* Add SkRacyGravatar mtklein2014-07-08
| | | | | | | | | | | | | | | | | | | SkRacy<T> is a zero-overhead wrapper for a T, except it also silences race warnings when TSAN is running. Here we apply in several classes. In SkMatrix and SkPathRef, we use it to opportunistically cache some idempotent work. In SkPixelRef, we wrap the genIDs. We think the worst that can happen here is we'll increment the global next-genID a few times instead of once when we go to get another ID. BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/371363004
* add setPreserveSrcDepth to replace PrefTable API for androidGravatar reed2014-07-08
| | | | | | | | | BUG=skia: R=scroggo@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/371273007
* Fix param name in GrEffect::CastEffectGravatar bsalomon2014-07-08
| | | | | | | | R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/376863006
* Back off from SkPicture API hardening a bitGravatar Robert Phillips2014-07-08
| | | | | | | | Sigh - Chromium still relies on the old clone functionality TBR=reed@google.com Review URL: https://codereview.chromium.org/371273006
* Goodbye GrEffectRef.Gravatar bsalomon2014-07-08
| | | | | | | | | | Also, reworked some var names and comments around SkShader::asNewEffect. R=robertphillips@google.com Author: bsalomon@google.com Review URL: https://codereview.chromium.org/374923002
* Clean up SkImageFilter constructors.Gravatar senorblanco2014-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | Now that all creation of SkImageFilters goes through factory Create() methods, there's no real reason for the convenience constructors. Some SkImageFilter subclasses which actually have zero DAG-able inputs were passing NULL to the superclass constructor. This actually means 1 input, with a NULL value, not zero inputs. This becomes more relevant for the upcoming cache infrastructure, where this indicates that the filter will use its src input, where in fact some of these filters do not (they are image generators only). Limiting SkImageFilter to a single constructor resolves this ambiguity. Along the way, I removed all of the default parameters to the constructors, since the Create methods always call them with the full argument list. BUG=skia: R=reed@google.com Author: senorblanco@chromium.org Review URL: https://codereview.chromium.org/376953003