milko.leporis
401e77cfe1
MIPS32r2: Fix Chromium runtime crash
...
Crash is caused by ldxc1 instruction, which traps when double values are
not aligned on 8-byte boundaries. Problem was tracked to SkChunkAlloc which
produces pointers aligned on 4-byte boundaries leading to misalignment.
This change makes sure that SkChunkAlloc will produce pointers that are
aligned to 8 bytes.
Appropriate tests are added to tests/MemsetTest.cpp
TEST=Build Chromium with Clang and run on MIPS32r2 platform
TEST=./out/Debug/dm --match Memset
BUG=130022
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1849183004
Review-Url: https://codereview.chromium.org/1849183004
2016-06-05 13:14:21 -07:00
cblume
44e09ec810
SkMipMap::ComputeLevelSize to return SkISize
...
This previously returned SkSize, which had scalar components.
That doesn't make sense for a mipmap size.
R=bsalomon@google.com
BUG=578304
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2036313002
Review-Url: https://codereview.chromium.org/2036313002
2016-06-03 11:59:50 -07:00
robertphillips
976f5f0dc5
Make GrClipMaskManager stateless and push GrPipelineBuilder construction downstack
...
This will be followed up with a CL to remove the GrRenderTarget from the GrPipelineBuilder.
Split out of:
https://codereview.chromium.org/1988923002/ (Declassify GrClipMaskManager and Remove GrRenderTarget and GrDrawTarget from GrPipelineBuilder)
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2035823002
Review-Url: https://codereview.chromium.org/2035823002
2016-06-03 10:59:20 -07:00
scroggo
6fb2391b2c
Make SkPngCodec decode progressively.
...
This is a step towards using SkCodec in Chromium, where progressive
decoding is necessary.
Switch from using png_read_row (which expects all the data to be
available) to png_process_data, which uses callbacks when rows are
available.
Create a new API for SkCodec, which supports progressive decoding and
scanline decoding. Future changes will switch the other clients off of
startScanlineDecode and get/skip-Scanlines to the new API.
Remove SkCodec::kNone_ScanlineOrder, which was only used for interlaced
PNG images. In the new API, interlaced PNG fits kTopDown. Also remove
updateCurrScanline(), which was only used by the old implementation for
interlaced PNG.
DMSrcSink:
- In CodecSrc::kScanline_Mode, use the new method for scanline decoding
for the supported formats (just PNG and PNG-in-ICO for now).
fuzz.cpp:
- Remove reference to kNone_ScanlineOrder
SkCodec:
- Add new APIs:
- startIncrementalDecode
- incrementalDecode
- Remove kNone_SkScanlineOrder and updateCurrScanline()
SkPngCodec:
- Implement new APIs
- Switch from sk_read_fn/png_read_row etc to png_process_data
- Expand AutoCleanPng's role to decode the header and create the
SkPngCodec
- Make the interlaced PNG decoder report how many lines were
initialized during an incomplete decode
- Make initializeSwizzler return a bool instead of an SkCodec::Result
(It only returned kSuccess or kInvalidInput anyway)
SkIcoCodec:
- Implement the new APIs; supported for PNG in ICO
SkSampledCodec:
- Call the new method for decoding scanlines, and fall back to the old
method if the new version is unimplemented
- Remove references to kNone_SkScanlineOrder
tests/CodecPartial:
- Add a test which decodes part of an image, then finishes the decode,
and compares it to the straightforward method
tests/CodecTest:
- Add a test which decodes all scanlines using the new method
- Repurpose the Codec_stripes test to decode using the new method in
sections rather than all at once
- In the method check(), add a parameter for whether the image supports
the new method of scanline decoding, and be explicit about whether an
image supports incomplete
- Test incomplete PNG decodes. We should have been doing it anyway for
non-interlaced (except for an image that is too small - one row), but
the new method supports interlaced incomplete as well
- Make test_invalid_parameters test the new method
- Add a test to ensure that it's safe to fall back to scanline decoding without
rewinding
BUG=skia:4211
The new version was generally faster than the old version (but not significantly so).
Some raw performance differences can be found at https://docs.google.com/a/google.com/spreadsheets/d/1Gis3aRCEa72qBNDRMgGDg3jD-pMgO-FXldlNF9ejo4o/
Design doc can be found at https://docs.google.com/a/google.com/document/d/11Mn8-ePDKwVEMCjs3nWwSjxcSpJ_Cu8DF57KNtUmgLM/
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997703003
Committed: https://skia.googlesource.com/skia/+/a4b09a117d4d1ba5dda372e6a2323e653766539e
Committed: https://skia.googlesource.com/skia/+/30e78c9737ff4861dc4e3fa1e4cd010680ed6965
Review-Url: https://codereview.chromium.org/1997703003
2016-06-02 14:16:43 -07:00
reed
fbce71f1ae
add MakeS32 helper to SkImageInfo, fix named-gamma constructor bug
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2035813003
Review-Url: https://codereview.chromium.org/2035813003
2016-06-02 12:40:22 -07:00
cblume
f95ff4a37a
Add getting the size of a given mipmap level.
...
When allocating memory for mipmaps, it would be very handy to know the
dimensions of a given mipmap level.
R=bsalomon@google.com
BUG=578304
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2018283002
Review-Url: https://codereview.chromium.org/2018283002
2016-06-02 09:01:48 -07:00
brianosman
33f6b3f6ee
Manually generated sRGB mipmaps, with successively smaller draws.
...
Dirty GL-generated mipmaps whenever an sRGB texture is used with a new
value for TEXTURE_SRGB_DECODE. Add a new test rectangle to the gamma GM
that tests that textures are correctly converted to linear before
filtering when generating mipmaps.
Added a new unit test that alternates how a texture is interpreted (sRGB
or not), to verify that we rebuild mipmaps when needed, and that we get
the correct results out in both modes.
This test originally failed on four of our bots producing incorrect mips
in three different ways. I'm not real surprised, but it looks like
we can't rely on glGenerateMipmap to do the right thing, in conjunction
with TEXTURE_SRGB_DECODE.
Instead, actually create mip-chains using a series of draw calls.
(My first attempt used glBlitFramebuffer, and that still had bugs on
several bots). This approach appears to work correctly on any device
that fully supports sRGB.
Because the mipmap draws are fairly destructive to state, I had to
hoist them out of bindTexture. That means adding a second pass over
the texture accesses in the processor, at the very beginning of flush.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1840473002
Review-Url: https://codereview.chromium.org/2007973002
2016-06-02 05:49:21 -07:00
mbarbella
99600d0a15
Add a test to ensure that a case where SkCubicClipper::ChopMonoAtY returns false is handled properly.
...
Also fixes a style issue in the fix for the issue being tested.
BUG=chromium:613918
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2021343004
Review-Url: https://codereview.chromium.org/2021343004
2016-06-01 15:39:48 -07:00
scroggo
26694c32d2
Revert of Make SkPngCodec decode progressively. (patchset #24 id:480001 of https://codereview.chromium.org/1997703003/ )
...
Reason for revert:
Still breaking Google3 e.g.:
https://sponge.corp.google.com/target?id=9261d31b-34fc-4f0f-981e-f92f7c5cea2c&target=//third_party/skia/HEAD:dm#shard=1 |run=1|attempt=1|page=-1
https://test.corp.google.com/ui#cl=123773095&flags=CAMQBQ==&id=OCL:123773095:BASE:123773415:1464804876959:b0ea9b1c&t=//third_party/skia/HEAD:dm
Original issue's description:
> Make SkPngCodec decode progressively.
>
> This is a step towards using SkCodec in Chromium, where progressive
> decoding is necessary.
>
> Switch from using png_read_row (which expects all the data to be
> available) to png_process_data, which uses callbacks when rows are
> available.
>
> Create a new API for SkCodec, which supports progressive decoding and
> scanline decoding. Future changes will switch the other clients off of
> startScanlineDecode and get/skip-Scanlines to the new API.
>
> Remove SkCodec::kNone_ScanlineOrder, which was only used for interlaced
> PNG images. In the new API, interlaced PNG fits kTopDown. Also remove
> updateCurrScanline(), which was only used by the old implementation for
> interlaced PNG.
>
> DMSrcSink:
> - In CodecSrc::kScanline_Mode, use the new method for scanline decoding
> for the supported formats (just PNG and PNG-in-ICO for now).
>
> fuzz.cpp:
> - Remove reference to kNone_ScanlineOrder
>
> SkCodec:
> - Add new APIs:
> - startIncrementalDecode
> - incrementalDecode
> - Remove kNone_SkScanlineOrder and updateCurrScanline()
>
> SkPngCodec:
> - Implement new APIs
> - Switch from sk_read_fn/png_read_row etc to png_process_data
> - Expand AutoCleanPng's role to decode the header and create the
> SkPngCodec
> - Make the interlaced PNG decoder report how many lines were
> initialized during an incomplete decode
> - Make initializeSwizzler return a bool instead of an SkCodec::Result
> (It only returned kSuccess or kInvalidInput anyway)
>
> SkIcoCodec:
> - Implement the new APIs; supported for PNG in ICO
>
> SkSampledCodec:
> - Call the new method for decoding scanlines, and fall back to the old
> method if the new version is unimplemented
> - Remove references to kNone_SkScanlineOrder
>
> tests/CodecPartial:
> - Add a test which decodes part of an image, then finishes the decode,
> and compares it to the straightforward method
>
> tests/CodecTest:
> - Add a test which decodes all scanlines using the new method
> - Repurpose the Codec_stripes test to decode using the new method in
> sections rather than all at once
> - In the method check(), add a parameter for whether the image supports
> the new method of scanline decoding, and be explicit about whether an
> image supports incomplete
> - Test incomplete PNG decodes. We should have been doing it anyway for
> non-interlaced (except for an image that is too small - one row), but
> the new method supports interlaced incomplete as well
> - Make test_invalid_parameters test the new method
> - Add a test to ensure that it's safe to fall back to scanline decoding without
> rewinding
>
> BUG=skia:4211
>
> The new version was generally faster than the old version (but not significantly so).
>
> Some raw performance differences can be found at https://docs.google.com/a/google.com/spreadsheets/d/1Gis3aRCEa72qBNDRMgGDg3jD-pMgO-FXldlNF9ejo4o/
>
> Design doc can be found at https://docs.google.com/a/google.com/document/d/11Mn8-ePDKwVEMCjs3nWwSjxcSpJ_Cu8DF57KNtUmgLM/
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997703003
>
> Committed: https://skia.googlesource.com/skia/+/a4b09a117d4d1ba5dda372e6a2323e653766539e
>
> Committed: https://skia.googlesource.com/skia/+/30e78c9737ff4861dc4e3fa1e4cd010680ed6965
TBR=reed@google.com ,msarett@google.com,scroggo@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4211
Review-Url: https://codereview.chromium.org/2026383002
2016-06-01 12:08:23 -07:00
bsalomon
edc743a576
Add SkPathPriv::IsSimpleClosedRect
...
This function looks for "simple" rect paths. Simple here means begins and ends at a corner and is closed (either manually or with a close verb). Unlike SkPath::isRect this returns the starting point index (using the same start indexing scheme as SkPath::addRect).
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2017313002
Review-Url: https://codereview.chromium.org/2017313002
2016-06-01 09:42:31 -07:00
jvanverth
1e305ba0d6
Add offset to memory allocations
...
This is setting up for suballocations within one large
allocation
BUG=skia:5031
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2018933004
TBR=bsalomon@google.com
Review-Url: https://codereview.chromium.org/2018933004
2016-06-01 09:39:15 -07:00
scroggo
30e78c9737
Make SkPngCodec decode progressively.
...
This is a step towards using SkCodec in Chromium, where progressive
decoding is necessary.
Switch from using png_read_row (which expects all the data to be
available) to png_process_data, which uses callbacks when rows are
available.
Create a new API for SkCodec, which supports progressive decoding and
scanline decoding. Future changes will switch the other clients off of
startScanlineDecode and get/skip-Scanlines to the new API.
Remove SkCodec::kNone_ScanlineOrder, which was only used for interlaced
PNG images. In the new API, interlaced PNG fits kTopDown. Also remove
updateCurrScanline(), which was only used by the old implementation for
interlaced PNG.
DMSrcSink:
- In CodecSrc::kScanline_Mode, use the new method for scanline decoding
for the supported formats (just PNG and PNG-in-ICO for now).
fuzz.cpp:
- Remove reference to kNone_ScanlineOrder
SkCodec:
- Add new APIs:
- startIncrementalDecode
- incrementalDecode
- Remove kNone_SkScanlineOrder and updateCurrScanline()
SkPngCodec:
- Implement new APIs
- Switch from sk_read_fn/png_read_row etc to png_process_data
- Expand AutoCleanPng's role to decode the header and create the
SkPngCodec
- Make the interlaced PNG decoder report how many lines were
initialized during an incomplete decode
- Make initializeSwizzler return a bool instead of an SkCodec::Result
(It only returned kSuccess or kInvalidInput anyway)
SkIcoCodec:
- Implement the new APIs; supported for PNG in ICO
SkSampledCodec:
- Call the new method for decoding scanlines, and fall back to the old
method if the new version is unimplemented
- Remove references to kNone_SkScanlineOrder
tests/CodecPartial:
- Add a test which decodes part of an image, then finishes the decode,
and compares it to the straightforward method
tests/CodecTest:
- Add a test which decodes all scanlines using the new method
- Repurpose the Codec_stripes test to decode using the new method in
sections rather than all at once
- In the method check(), add a parameter for whether the image supports
the new method of scanline decoding, and be explicit about whether an
image supports incomplete
- Test incomplete PNG decodes. We should have been doing it anyway for
non-interlaced (except for an image that is too small - one row), but
the new method supports interlaced incomplete as well
- Make test_invalid_parameters test the new method
- Add a test to ensure that it's safe to fall back to scanline decoding without
rewinding
BUG=skia:4211
The new version was generally faster than the old version (but not significantly so).
Some raw performance differences can be found at https://docs.google.com/a/google.com/spreadsheets/d/1Gis3aRCEa72qBNDRMgGDg3jD-pMgO-FXldlNF9ejo4o/
Design doc can be found at https://docs.google.com/a/google.com/document/d/11Mn8-ePDKwVEMCjs3nWwSjxcSpJ_Cu8DF57KNtUmgLM/
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997703003
Committed: https://skia.googlesource.com/skia/+/a4b09a117d4d1ba5dda372e6a2323e653766539e
Review-Url: https://codereview.chromium.org/1997703003
2016-06-01 07:31:28 -07:00
sdefresne
e3fa811657
[GN] Add support for disabling opts via SK_BUILD_NO_OPTS define.
...
When targetting iOS and using gyp to generate the build files, it is not
possible to select files to build depending on the architecture. Due to
that, the skia code was disabling all optimisation when SK_BUILD_FOR_IOS
was defined.
Since it is possible to select the correct optimised version when using
gn, this pessimisation is hurting the build. Introduce a new define to
disable the optimisation SK_BUILD_NO_OPTS. It will be used by Chromium
when building skia for iOS with gyp but not gn.
Define SK_BUILD_NO_OPTS along-side SK_BUILD_FOR_IOS for all files that
look like build configuration (Xcode projects, gyp configuration files,
public.bzl) in order to avoid introducing breakage on those builds.
BUG=607933
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2002423002
Review-Url: https://codereview.chromium.org/2002423002
2016-06-01 07:08:56 -07:00
scroggo
9a89a0966b
Revert of Make SkPngCodec decode progressively. (patchset #18 id:340001 of https://codereview.chromium.org/1997703003/ )
...
Reason for revert:
This is failing tests and then crashing on Google3 [1]. The crashes are fixed by crrev.com/2026873002, but to fix the builder we'll need to upgrade its version of libpng.
[1] https://sponge.corp.google.com/target?id=e545ef55-4da4-4931-9524-1ac92acb61b1&target=//third_party/skia/HEAD:dm#shard=1 |run=1|attempt=1|page=-1
Original issue's description:
> Make SkPngCodec decode progressively.
>
> This is a step towards using SkCodec in Chromium, where progressive
> decoding is necessary.
>
> Switch from using png_read_row (which expects all the data to be
> available) to png_process_data, which uses callbacks when rows are
> available.
>
> Create a new API for SkCodec, which supports progressive decoding and
> scanline decoding. Future changes will switch the other clients off of
> startScanlineDecode and get/skip-Scanlines to the new API.
>
> Remove SkCodec::kNone_ScanlineOrder, which was only used for interlaced
> PNG images. In the new API, interlaced PNG fits kTopDown. Also remove
> updateCurrScanline(), which was only used by the old implementation for
> interlaced PNG.
>
> DMSrcSink:
> - In CodecSrc::kScanline_Mode, use the new method for scanline decoding
> for the supported formats (just PNG and PNG-in-ICO for now).
>
> fuzz.cpp:
> - Remove reference to kNone_ScanlineOrder
>
> SkCodec:
> - Add new APIs:
> - startIncrementalDecode
> - incrementalDecode
> - Remove kNone_SkScanlineOrder and updateCurrScanline()
>
> SkPngCodec:
> - Implement new APIs
> - Switch from sk_read_fn/png_read_row etc to png_process_data
> - Expand AutoCleanPng's role to decode the header and create the
> SkPngCodec
> - Make the interlaced PNG decoder report how many lines were
> initialized during an incomplete decode
> - Make initializeSwizzler return a bool instead of an SkCodec::Result
> (It only returned kSuccess or kInvalidInput anyway)
>
> SkIcoCodec:
> - Implement the new APIs; supported for PNG in ICO
>
> SkSampledCodec:
> - Call the new method for decoding scanlines, and fall back to the old
> method if the new version is unimplemented
> - Remove references to kNone_SkScanlineOrder
>
> tests/CodecPartial:
> - Add a test which decodes part of an image, then finishes the decode,
> and compares it to the straightforward method
>
> tests/CodecTest:
> - Add a test which decodes all scanlines using the new method
> - Repurpose the Codec_stripes test to decode using the new method in
> sections rather than all at once
> - In the method check(), add a parameter for whether the image supports
> the new method of scanline decoding, and be explicit about whether an
> image supports incomplete
> - Test incomplete PNG decodes. We should have been doing it anyway for
> non-interlaced (except for an image that is too small - one row), but
> the new method supports interlaced incomplete as well
> - Make test_invalid_parameters test the new method
> - Add a test to ensure that it's safe to fall back to scanline decoding without
> rewinding
>
> BUG=skia:4211
>
> The new version was generally faster than the old version (but not significantly so).
>
> Some raw performance differences can be found at https://docs.google.com/a/google.com/spreadsheets/d/1Gis3aRCEa72qBNDRMgGDg3jD-pMgO-FXldlNF9ejo4o/
>
> Design doc can be found at https://docs.google.com/a/google.com/document/d/11Mn8-ePDKwVEMCjs3nWwSjxcSpJ_Cu8DF57KNtUmgLM/
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997703003
>
> Committed: https://skia.googlesource.com/skia/+/a4b09a117d4d1ba5dda372e6a2323e653766539e
TBR=reed@google.com ,msarett@google.com,scroggo@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4211
Review-Url: https://codereview.chromium.org/2023103002
2016-05-31 13:52:48 -07:00
scroggo
4b42134456
Fix build error
...
TBR=herb@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2021393002
Review-Url: https://codereview.chromium.org/2021393002
2016-05-31 11:47:39 -07:00
mboc
ee6a9919a3
SkTypeface::MakeFromName to take SkFontStyle.
...
SkTypeface::MakeFromName currently takes SkTypeface::Style,
which is quite limited. This starts the transition to this
function taking SkFontStyle instead.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1818043002
TBR=reed
He said it sounded like a good idea.
Review-Url: https://codereview.chromium.org/1818043002
2016-05-31 11:42:37 -07:00
bsalomon
1978ce22eb
Fix bug where SkPath will convert an arc to an oval and change the starting point.
...
Adds unit tests to test the behavior of addArc to oval conversions.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2017743002
Review-Url: https://codereview.chromium.org/2017743002
2016-05-31 10:42:16 -07:00
fmalita
019db3fe88
Remove unused SkPictureGpuAnalyzer::analyze()
...
After https://crrev.com/c64bd21780da13051846ae45b54a1e6c6bf6ac52 ,
Chromium no longer uses analyze().
R=mtklein@google.com ,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2014983002
Review-Url: https://codereview.chromium.org/2014983002
2016-05-31 06:32:57 -07:00
scroggo
a4b09a117d
Make SkPngCodec decode progressively.
...
This is a step towards using SkCodec in Chromium, where progressive
decoding is necessary.
Switch from using png_read_row (which expects all the data to be
available) to png_process_data, which uses callbacks when rows are
available.
Create a new API for SkCodec, which supports progressive decoding and
scanline decoding. Future changes will switch the other clients off of
startScanlineDecode and get/skip-Scanlines to the new API.
Remove SkCodec::kNone_ScanlineOrder, which was only used for interlaced
PNG images. In the new API, interlaced PNG fits kTopDown. Also remove
updateCurrScanline(), which was only used by the old implementation for
interlaced PNG.
DMSrcSink:
- In CodecSrc::kScanline_Mode, use the new method for scanline decoding
for the supported formats (just PNG and PNG-in-ICO for now).
fuzz.cpp:
- Remove reference to kNone_ScanlineOrder
SkCodec:
- Add new APIs:
- startIncrementalDecode
- incrementalDecode
- Remove kNone_SkScanlineOrder and updateCurrScanline()
SkPngCodec:
- Implement new APIs
- Switch from sk_read_fn/png_read_row etc to png_process_data
- Expand AutoCleanPng's role to decode the header and create the
SkPngCodec
- Make the interlaced PNG decoder report how many lines were
initialized during an incomplete decode
- Make initializeSwizzler return a bool instead of an SkCodec::Result
(It only returned kSuccess or kInvalidInput anyway)
SkIcoCodec:
- Implement the new APIs; supported for PNG in ICO
SkSampledCodec:
- Call the new method for decoding scanlines, and fall back to the old
method if the new version is unimplemented
- Remove references to kNone_SkScanlineOrder
tests/CodecPartial:
- Add a test which decodes part of an image, then finishes the decode,
and compares it to the straightforward method
tests/CodecTest:
- Add a test which decodes all scanlines using the new method
- Repurpose the Codec_stripes test to decode using the new method in
sections rather than all at once
- In the method check(), add a parameter for whether the image supports
the new method of scanline decoding, and be explicit about whether an
image supports incomplete
- Test incomplete PNG decodes. We should have been doing it anyway for
non-interlaced (except for an image that is too small - one row), but
the new method supports interlaced incomplete as well
- Make test_invalid_parameters test the new method
- Add a test to ensure that it's safe to fall back to scanline decoding without
rewinding
BUG=skia:4211
The new version was generally faster than the old version (but not significantly so).
Some raw performance differences can be found at https://docs.google.com/a/google.com/spreadsheets/d/1Gis3aRCEa72qBNDRMgGDg3jD-pMgO-FXldlNF9ejo4o/
Design doc can be found at https://docs.google.com/a/google.com/document/d/11Mn8-ePDKwVEMCjs3nWwSjxcSpJ_Cu8DF57KNtUmgLM/
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997703003
Review-Url: https://codereview.chromium.org/1997703003
2016-05-31 06:30:14 -07:00
mtklein
785a5b941a
Clean up SkFloatBits
...
- remove dead code
- rewrite float -> int converters
The strategy for the new converters is:
- convert input to double
- floor/ceil/round in double space
- pin that double to [SK_MinS32, SK_MaxS32]
- truncate that double to int32_t
This simpler strategy does not work:
- floor/ceil/round in float space
- pin that float to [SK_MinS32, SK_MaxS32]
- truncate that float to int32_t
SK_MinS32 and SK_MaxS32 are not representable as floats:
they round to the nearest float, ±2^31, which makes the
pin insufficient for floats near SK_MinS32 (-2^31+1) or
SK_MaxS32 (+2^31-1).
float only has 24 bits of precision, and we need 31.
double can represent all integers up to 50-something bits.
An alternative is to pin in float to ±2147483520, the last
exactly representable float before SK_MaxS32 (127 too small).
Our tests test that we round as floor(x+0.5), which can
return different numbers than round(x) for negative x.
So this CL explicitly uses floor(x+0.5).
I've updated the tests with ±inf and ±NaN, and tried to
make them a little clearer, especially using SK_MinS32
instead of -SK_MaxS32.
I have not timed anything here. I have never seen any of these
methods in a profile.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012333003
Review-Url: https://codereview.chromium.org/2012333003
2016-05-27 10:47:32 -07:00
bsalomon
78d58d1084
Make SkPath::isOval() and SkPath::isRRect return the orientation and starting index.
...
These are tracked in SkPathRef.
Unit tests are updated to test that the returned values are correct.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012233002
Review-Url: https://codereview.chromium.org/2012233002
2016-05-27 09:17:04 -07:00
msarett
23c5110ba2
Add SkColorSpace to SkImageInfo
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=2000713003
Review-Url: https://codereview.chromium.org/2000713003
2016-05-27 07:39:02 -07:00
fmalita
7b38e3cf75
Fix int32 overflow in LinearGradientContext::shade4_dx_clamp
...
The unconditional increment in shade4_dx_clamp can overflow int32
=> n == SK_MinS32
=> count ~= SK_MinS32
=> we skip the main shader loop 'cause count < 0
R=reed@google.com ,mtklein@google.com
BUG=chromium:599458
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2010843002
Review-Url: https://codereview.chromium.org/2010843002
2016-05-26 11:13:52 -07:00
caryclark
2bec26a716
fix security bug
...
This fix is a tradeoff. It changes intersection to
treat a case where one coincident run is intersected at one point
and the other edge is not as continuing to be a span.
The old code tried to treat this as a single point.
The old code is probably right, but this change alone
made the data structures inconsistent. Later, extending
the coincident runs would fail by incorrectly discarding
the single point intersection.
As a result, this fixes the security test and one other, but
makes a different test fail. Isolating the failure uncovered
a reduced case that fails with and without the change, so
there are more serious problems here. Those problems are
addressed in a separate CL.
Many of the test edits below remove ill-thought out debugging
messaging that fire off global state, which isn't usable
in a multi-threaded test environment.
In the end, with this fix, all existing tests (modulo one
new failure and one new non-failure) pass in debug and
in the extended release test suites.
TBR=reed@google.com
BUG=614248
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2018513003
Review-Url: https://codereview.chromium.org/2018513003
2016-05-26 09:01:47 -07:00
fmalita
b5fc58e1de
Complex clipPath accounting
...
Add a clipPath heuristic to SkPathCounter, and extend
SkPictureGpuAnalyzer to support external clipPath() op accounting.
BUG=skia:5347
R=reed@google.com ,mtklein@google.com,senorblanco@chromium.org,bsalomon@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2000423005
Review-Url: https://codereview.chromium.org/2000423005
2016-05-25 11:31:04 -07:00
msarett
ab926f0a1b
Write ICC profiles from SkColorSpace object
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2001203003
Review-Url: https://codereview.chromium.org/2001203003
2016-05-25 08:53:40 -07:00
msarett
e077e0683a
SkColorSpace tweaks
...
***Move includes to the correct file
***Add "const"
***Use std::move for more efficient refs and unrefs
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2005263002
Review-Url: https://codereview.chromium.org/2005263002
2016-05-24 10:16:53 -07:00
msarett
8cc2091118
Make SkColorSpace a public API
...
I've trimmed uniqueID for now, and added some comments.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996973002
Review-Url: https://codereview.chromium.org/1996973002
2016-05-23 09:29:29 -07:00
halcanary
a0af771612
SkTypes: use constexpr when appropriate
...
motivation: https://codereview.chromium.org/2000853003
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2004073002
Review-Url: https://codereview.chromium.org/2004073002
2016-05-23 09:11:59 -07:00
scroggo
ba5848953e
Finish supporting decoding opaque to non-opaque
...
When decoding to 565 or Gray, allow the client to incorrectly ask for premul.
When checking whether it's possible to decode to 565, return whether the
source is opaque.
In DM, allow decoding to 565 or Gray, even if the client also asked for premul.
This fixes a bug introduced in crrev.com/1999593003 when we stopped ever
requesting Opaque, resulting in us not testing 565 or Gray.
BUG=skia:4616
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=1996993003
Review-Url: https://codereview.chromium.org/1996993003
2016-05-20 13:56:13 -07:00
robertphillips
87f15c8ff1
Retract GrRenderTarget from GrTestTarget
...
Split out of: https://codereview.chromium.org/1988923002/ (Declassify GrClipMaskManager and Remove GrRenderTarget and GrDrawTarget from GrPipelineBuilder)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=2004433002
Review-Url: https://codereview.chromium.org/2004433002
2016-05-20 11:14:33 -07:00
halcanary
e76ca8b9c2
gyp (third_party) warning changes for ccache
...
Also fix a broken unit test in MatrixTest.cpp.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2002663002
Review-Url: https://codereview.chromium.org/2002663002
2016-05-20 10:36:50 -07:00
senorblanco
5878dbdf1b
Image filters: implement SkImage::makeWithFilter().
...
This API provides a way to directly filter a subregion of an SkImage
(usually texture-backed), and returns an SkImage which may include
extra padding, along with a size to indicate the active region.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1964043002
Review-Url: https://codereview.chromium.org/1964043002
2016-05-19 14:50:29 -07:00
robertphillips
82ec6e59b8
Retract GrRenderTarget from GLProgramsTest
...
Split out of https://codereview.chromium.org/1988923002/ (Declassify GrClipMaskManager and Remove GrRenderTarget and GrDrawTarget from GrPipelineBuilder)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997773002
Review-Url: https://codereview.chromium.org/1997773002
2016-05-19 14:01:05 -07:00
tomhudson
cb3bd18a4b
SkCanvas::adjustToTopLayer()
...
Given a matrix and a clip bounds, offsets them to reflect the difference
between device coordinates and global coordinates. Useful when a client
wants an OS-specific backing for a canvas.
R=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1986383002
Review-Url: https://codereview.chromium.org/1986383002
2016-05-18 07:24:16 -07:00
bsalomon
037655f4dc
Make SkBlend_optsTests fail rather than crash when resources are missing
...
BUG=skia:5314
TBR=herb@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1987143002
Review-Url: https://codereview.chromium.org/1987143002
2016-05-17 18:36:23 -07:00
herb
cc49e5950d
Add tests and benches to support the sRGB blitter for SkOpts
...
1,370.85 LinearSrcOvericonstrip.pngVSkOptsSSE41
2,359.69 LinearSrcOvericonstrip.pngVSkOptsDefault
1,828.72 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore
3,277.40 LinearSrcOvericonstrip.pngVSkOptsTrivial
9,862.34 LinearSrcOvericonstrip.pngVSkOptsBruteForce
633.55 LinearSrcOvermandrill_512.pngVSkOptsSSE41
684.29 LinearSrcOvermandrill_512.pngVSkOptsDefault
1,201.88 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore
2,382.63 LinearSrcOvermandrill_512.pngVSkOptsTrivial
10,888.74 LinearSrcOvermandrill_512.pngVSkOptsBruteForce
209.14 LinearSrcOverplane.pngVSkOptsSSE41
562.24 LinearSrcOverplane.pngVSkOptsDefault
272.64 LinearSrcOverplane.pngVSkOptsNonSimdCore
436.46 LinearSrcOverplane.pngVSkOptsTrivial
1,327.23 LinearSrcOverplane.pngVSkOptsBruteForce
318.01 LinearSrcOverbaby_tux.pngVSkOptsSSE41
529.05 LinearSrcOverbaby_tux.pngVSkOptsDefault
441.33 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore
720.50 LinearSrcOverbaby_tux.pngVSkOptsTrivial
2,191.10 LinearSrcOverbaby_tux.pngVSkOptsBruteForce
479.68 LinearSrcOveryellow_rose.pngVSkOptsSSE41
1,095.03 LinearSrcOveryellow_rose.pngVSkOptsDefault
668.60 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore
1,257.19 LinearSrcOveryellow_rose.pngVSkOptsTrivial
4,970.25 LinearSrcOveryellow_rose.pngVSkOptsBruteForce
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939513002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Committed: https://skia.googlesource.com/skia/+/554784cd85029c05d9ed04b1aeb71520d196153a
Committed: https://skia.googlesource.com/skia/+/bc927548db17accec2195af6e15053f7918bb3f5
Review-Url: https://codereview.chromium.org/1939513002
2016-05-17 09:57:34 -07:00
msarett
bb9f77437d
Prepare SkColorSpace to be a public API
...
Moves implementation details into SkColorSpacePriv.h
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1985903002
Review-Url: https://codereview.chromium.org/1985903002
2016-05-17 09:31:20 -07:00
reed
4933d0baad
Revert of Add specialized sRGB blitter for SkOpts (patchset #21 id:400001 of https://codereview.chromium.org/1939513002/ )
...
Reason for revert:
broke some debug bots:
Running LinearSrcOvericonstrip.pngVSkOptsSSE41 nonrendering
../../../bench/SkBlend_optsBench.cpp:118: fatal error: ""fPixmap.colorType() == kRGBA_8888_SkColorType""
Original issue's description:
> Add tests and benches to support the sRGB blitter for SkOpts
>
> 1,370.85 LinearSrcOvericonstrip.pngVSkOptsSSE41
> 2,359.69 LinearSrcOvericonstrip.pngVSkOptsDefault
> 1,828.72 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore
> 3,277.40 LinearSrcOvericonstrip.pngVSkOptsTrivial
> 9,862.34 LinearSrcOvericonstrip.pngVSkOptsBruteForce
>
> 633.55 LinearSrcOvermandrill_512.pngVSkOptsSSE41
> 684.29 LinearSrcOvermandrill_512.pngVSkOptsDefault
> 1,201.88 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore
> 2,382.63 LinearSrcOvermandrill_512.pngVSkOptsTrivial
> 10,888.74 LinearSrcOvermandrill_512.pngVSkOptsBruteForce
>
> 209.14 LinearSrcOverplane.pngVSkOptsSSE41
> 562.24 LinearSrcOverplane.pngVSkOptsDefault
> 272.64 LinearSrcOverplane.pngVSkOptsNonSimdCore
> 436.46 LinearSrcOverplane.pngVSkOptsTrivial
> 1,327.23 LinearSrcOverplane.pngVSkOptsBruteForce
>
> 318.01 LinearSrcOverbaby_tux.pngVSkOptsSSE41
> 529.05 LinearSrcOverbaby_tux.pngVSkOptsDefault
> 441.33 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore
> 720.50 LinearSrcOverbaby_tux.pngVSkOptsTrivial
> 2,191.10 LinearSrcOverbaby_tux.pngVSkOptsBruteForce
>
> 479.68 LinearSrcOveryellow_rose.pngVSkOptsSSE41
> 1,095.03 LinearSrcOveryellow_rose.pngVSkOptsDefault
> 668.60 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore
> 1,257.19 LinearSrcOveryellow_rose.pngVSkOptsTrivial
> 4,970.25 LinearSrcOveryellow_rose.pngVSkOptsBruteForce
>
>
>
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939513002
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/554784cd85029c05d9ed04b1aeb71520d196153a
>
> Committed: https://skia.googlesource.com/skia/+/bc927548db17accec2195af6e15053f7918bb3f5
TBR=mtklein@google.com ,fmalita@chromium.org,herb@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1986763002
2016-05-17 03:07:01 -07:00
herb
bc927548db
Add tests and benches to support the sRGB blitter for SkOpts
...
1,370.85 LinearSrcOvericonstrip.pngVSkOptsSSE41
2,359.69 LinearSrcOvericonstrip.pngVSkOptsDefault
1,828.72 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore
3,277.40 LinearSrcOvericonstrip.pngVSkOptsTrivial
9,862.34 LinearSrcOvericonstrip.pngVSkOptsBruteForce
633.55 LinearSrcOvermandrill_512.pngVSkOptsSSE41
684.29 LinearSrcOvermandrill_512.pngVSkOptsDefault
1,201.88 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore
2,382.63 LinearSrcOvermandrill_512.pngVSkOptsTrivial
10,888.74 LinearSrcOvermandrill_512.pngVSkOptsBruteForce
209.14 LinearSrcOverplane.pngVSkOptsSSE41
562.24 LinearSrcOverplane.pngVSkOptsDefault
272.64 LinearSrcOverplane.pngVSkOptsNonSimdCore
436.46 LinearSrcOverplane.pngVSkOptsTrivial
1,327.23 LinearSrcOverplane.pngVSkOptsBruteForce
318.01 LinearSrcOverbaby_tux.pngVSkOptsSSE41
529.05 LinearSrcOverbaby_tux.pngVSkOptsDefault
441.33 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore
720.50 LinearSrcOverbaby_tux.pngVSkOptsTrivial
2,191.10 LinearSrcOverbaby_tux.pngVSkOptsBruteForce
479.68 LinearSrcOveryellow_rose.pngVSkOptsSSE41
1,095.03 LinearSrcOveryellow_rose.pngVSkOptsDefault
668.60 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore
1,257.19 LinearSrcOveryellow_rose.pngVSkOptsTrivial
4,970.25 LinearSrcOveryellow_rose.pngVSkOptsBruteForce
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939513002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Committed: https://skia.googlesource.com/skia/+/554784cd85029c05d9ed04b1aeb71520d196153a
Review-Url: https://codereview.chromium.org/1939513002
2016-05-16 14:27:51 -07:00
fmalita
796e365999
SkPictureGpuAnalyzer
...
Stateful helper for gathering multi-picture GPU stats.
Exposes the existing SkPicture GPU veto semantics, while preserving
the SKP impl (which has some nice properties: lazy, hierarchical,
cached per pic).
R=reed@google.com ,bsalomon@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974833003
Review-Url: https://codereview.chromium.org/1974833003
2016-05-13 11:40:07 -07:00
egdaniel
b2df0c2702
Refactor Vulkan image, texture, RTs so that create and getter handles match.
...
This allows allows us to track and notify clients when either side changes
and image layout.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974983002
Review-Url: https://codereview.chromium.org/1974983002
2016-05-13 11:30:37 -07:00
cdalton
846c051a48
Convert GrClip to an abstract base class
...
Converts GrClip to an abstract base class and adds a "GrFixedClip"
implementation. GrFixedClip denotes a clip implemented with fixed-
function hardware. GrFixedClip allows us to remove the stateful
"fClipMode" member from GrClipMaskManager, and in the future will
be able to nicely encapsulate window rectangles.
After this change GrClipMaskManager is just a wrapper around
GrDrawTarget. We may want to consider removing it altogether.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971343002
Review-Url: https://codereview.chromium.org/1971343002
2016-05-13 10:25:00 -07:00
bsalomon
9fb420393e
Add bounds to GrShape
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1970003003
Review-Url: https://codereview.chromium.org/1970003003
2016-05-13 09:23:38 -07:00
cdalton
862cff30ea
Remove clip from GrPipelineBuilder
...
This eliminates a copy and will allow us to make the GrClip class
virutal.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1966903004
Review-Url: https://codereview.chromium.org/1966903004
2016-05-12 15:09:48 -07:00
fmalita
1e2e33a74d
Remove SkPicture::hasText()
...
No longer used in Chromium.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978533002
Review-Url: https://codereview.chromium.org/1978533002
2016-05-12 10:53:49 -07:00
bungeman
13b9c95295
Move SkTypeface to sk_sp.
...
Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1933393002
Review-Url: https://codereview.chromium.org/1933393002
2016-05-12 10:09:31 -07:00
scroggo
9a9a7b29e5
Revert of Move SkTypeface to sk_sp. (patchset #5 id:80001 of https://codereview.chromium.org/1933393002/ )
...
Reason for revert:
fontmgr_iterAndroid failing to draw emoji. E.g. https://gold.skia.org/search2?blame=6296da736fbf40aae881650c239420f64e576c3f&unt=true&head=true&query=source_type%3Dgm
Original issue's description:
> Move SkTypeface to sk_sp.
>
> Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f
TBR=reed@google.com ,fmalita@chromium.org,tomhudson@google.com,bungeman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1974783002
2016-05-12 06:22:30 -07:00
bsalomon
7c73a53894
Add isEmpty() query to GrShape and improve comments.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971613004
Review-Url: https://codereview.chromium.org/1971613004
2016-05-11 15:15:56 -07:00
cdalton
93a379bd4d
Separate user and raw stencil settings
...
Adds a new GrUserStencilSettings class that describes in abstract terms
how a draw will use the stencil (e.g. kAlwaysIfInClip, kSetClipBit,
etc.). GrPipelineBuilder now only defines the GrUserStencilSettings.
When the GrPipeline is finalized, the user stencil settings are then
translated into concrete GrStencilSettings.
At this point, GrClipMaskManager only needs to tell the GrAppliedClip
whether or not there is a stencil clip. It does not need to modify
stencil settings and GrPipelineBuilder does not need
AutoRestoreStencil.
This is one step of the stencil overhaul. In the future it will also
allow us to clean up the special case handling for nvpr and the
stateful fClipMode member of GrClipMaskManager.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962243002
Committed: https://skia.googlesource.com/skia/+/12dbb3947e1aaf205b4fcf13b40e54e50650eb37
Review-Url: https://codereview.chromium.org/1962243002
2016-05-11 13:58:09 -07:00
bungeman
6296da736f
Move SkTypeface to sk_sp.
...
Review-Url: https://codereview.chromium.org/1933393002
2016-05-11 12:38:18 -07:00
bsalomon
0fd3c81861
Make unit tests use generic testcontext rather than glcontext
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1971613003
Review-Url: https://codereview.chromium.org/1971613003
2016-05-11 10:38:06 -07:00
scroggo
fbb3102d0e
Revert "Add tests and benches to support the sRGB blitter for SkOpts"
...
This reverts commit 554784cd85
and
1956b4ae1c
Reason for revert - ASAN failures, e.g. from https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-MSAN/builds/2233/steps/perf_skia%20on%20Ubuntu/logs/stdio :
Uninitialized value was created by a heap allocation
0 0x7f69aa96f799 in operator new[](unsigned long) /b/work/skia/third_party/externals/llvm/out/../projects/compiler-rt/lib/msan/msan_new_delete.cc:37
1 0x7f69aaa315c1 in SkAutoTArray<unsigned int>::reset(int) /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../include/private/../private/SkTemplates.h:137:22
2 0x7f69aaa34ee9 in LinearSrcOverBench<SrcOverVSkOptsSSE41>::LinearSrcOverBench(char const*) /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/SkBlend_optsBench.cpp:108:9
3 0x7f69aaa30cf2 in $_24::operator()(void*) const /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/SkBlend_optsBench.cpp:167:1
4 0x7f69aaa30c87 in $_24::__invoke(void*) /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/SkBlend_optsBench.cpp:167:1
5 0x7f69aaa68856 in BenchmarkStream::rawNext() /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:653:32
6 0x7f69aaa61467 in BenchmarkStream::next() /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:642:25
7 0x7f69aaa5b703 in nanobench_main() /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:1119:27
8 0x7f69aaa5e10d in main /b/work/skia/out/Build-Ubuntu-GCC-x86_64-Debug-MSAN/Debug/../../../bench/nanobench.cpp:1290:12
9 0x7f69a8c95ec4 in __libc_start_main /build/buildd/eglibc-2.19/csu/libc-start.c:287
TBR=herb@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1969803002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/1969803002
2016-05-11 06:40:32 -07:00
bsalomon
8b7451aaf6
Turn ContextInfos returned by GrContextFactory into structs.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1966013002
Review-Url: https://codereview.chromium.org/1966013002
2016-05-11 06:33:06 -07:00
robertphillips
e19aecdd13
Revert of Separate user and raw stencil settings (patchset #8 id:140001 of https://codereview.chromium.org/1962243002/ )
...
Reason for revert:
This seems to be breaking nanobench on the Windows bots with:
Caught exception 3221225477 EXCEPTION_ACCESS_VIOLATION
GrDrawTarget::stencilPath +c7
GrStencilAndCoverPathRenderer::onDrawPath +fd
GrDrawContext::internalDrawPath +509
GrDrawContext::drawPath +223
GrBlurUtils::drawPathWithMaskFilter +250
SkGpuDevice::drawPath +2ea
SkCanvas::onDrawPath +2e3
SkRecordDraw +2e6
SkBigPicture::playback +e5
SkCanvas::onDrawPicture +12c
SkCanvas::drawPicture +145
SkRecordDraw +2e6
SkBigPicture::playback +e5
SkCanvas::onDrawPicture +12c
SkCanvas::drawPicture +145
SkRecordDraw +261
SkBigPicture::playback +e5
SkCanvas::onDrawPicture +12c
SkCanvas::drawPicture +145
SkMultiPictureDraw::draw +bf
SKPBench::drawMPDPicture +1e0
SKPBench::onDraw +34
Benchmark::draw +32
time +92
setup_gpu_bench +6e
nanobench_main +77b
Original issue's description:
> Separate user and raw stencil settings
>
> Adds a new GrUserStencilSettings class that describes in abstract terms
> how a draw will use the stencil (e.g. kAlwaysIfInClip, kSetClipBit,
> etc.). GrPipelineBuilder now only defines the GrUserStencilSettings.
> When the GrPipeline is finalized, the user stencil settings are then
> translated into concrete GrStencilSettings.
>
> At this point, GrClipMaskManager only needs to tell the GrAppliedClip
> whether or not there is a stencil clip. It does not need to modify
> stencil settings and GrPipelineBuilder does not need
> AutoRestoreStencil.
>
> This is one step of the stencil overhaul. In the future it will also
> allow us to clean up the special case handling for nvpr and the
> stateful fClipMode member of GrClipMaskManager.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962243002
>
> Committed: https://skia.googlesource.com/skia/+/12dbb3947e1aaf205b4fcf13b40e54e50650eb37
TBR=bsalomon@google.com ,cdalton@nvidia.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1969693003
2016-05-11 05:21:56 -07:00
cdalton
12dbb3947e
Separate user and raw stencil settings
...
Adds a new GrUserStencilSettings class that describes in abstract terms
how a draw will use the stencil (e.g. kAlwaysIfInClip, kSetClipBit,
etc.). GrPipelineBuilder now only defines the GrUserStencilSettings.
When the GrPipeline is finalized, the user stencil settings are then
translated into concrete GrStencilSettings.
At this point, GrClipMaskManager only needs to tell the GrAppliedClip
whether or not there is a stencil clip. It does not need to modify
stencil settings and GrPipelineBuilder does not need
AutoRestoreStencil.
This is one step of the stencil overhaul. In the future it will also
allow us to clean up the special case handling for nvpr and the
stateful fClipMode member of GrClipMaskManager.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1962243002
Review-Url: https://codereview.chromium.org/1962243002
2016-05-10 14:23:01 -07:00
herb
554784cd85
Add tests and benches to support the sRGB blitter for SkOpts
...
1,370.85 LinearSrcOvericonstrip.pngVSkOptsSSE41
2,359.69 LinearSrcOvericonstrip.pngVSkOptsDefault
1,828.72 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore
3,277.40 LinearSrcOvericonstrip.pngVSkOptsTrivial
9,862.34 LinearSrcOvericonstrip.pngVSkOptsBruteForce
633.55 LinearSrcOvermandrill_512.pngVSkOptsSSE41
684.29 LinearSrcOvermandrill_512.pngVSkOptsDefault
1,201.88 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore
2,382.63 LinearSrcOvermandrill_512.pngVSkOptsTrivial
10,888.74 LinearSrcOvermandrill_512.pngVSkOptsBruteForce
209.14 LinearSrcOverplane.pngVSkOptsSSE41
562.24 LinearSrcOverplane.pngVSkOptsDefault
272.64 LinearSrcOverplane.pngVSkOptsNonSimdCore
436.46 LinearSrcOverplane.pngVSkOptsTrivial
1,327.23 LinearSrcOverplane.pngVSkOptsBruteForce
318.01 LinearSrcOverbaby_tux.pngVSkOptsSSE41
529.05 LinearSrcOverbaby_tux.pngVSkOptsDefault
441.33 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore
720.50 LinearSrcOverbaby_tux.pngVSkOptsTrivial
2,191.10 LinearSrcOverbaby_tux.pngVSkOptsBruteForce
479.68 LinearSrcOveryellow_rose.pngVSkOptsSSE41
1,095.03 LinearSrcOveryellow_rose.pngVSkOptsDefault
668.60 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore
1,257.19 LinearSrcOveryellow_rose.pngVSkOptsTrivial
4,970.25 LinearSrcOveryellow_rose.pngVSkOptsBruteForce
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939513002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/1939513002
2016-05-10 13:33:47 -07:00
robertphillips
d0e36a92de
Fix AllocedProxyTest on Mesa
...
Mesa is handing us a context that supports MSAA but has 0 as the max number of color samples
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1967503004
Review-Url: https://codereview.chromium.org/1967503004
2016-05-10 10:23:31 -07:00
bsalomon
6663acff01
Replace GrStrokeInfo with GrStyle.
...
A side effect is that arbitrary path effects can no be pushed deeper into the Ganesh flow for paths. They may be applied by path renderers.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957363002
Committed: https://skia.googlesource.com/skia/+/33595bdf4b64a745f6340338d307e806e96c587f
Review-Url: https://codereview.chromium.org/1957363002
2016-05-10 09:14:17 -07:00
bsalomon
85d9667f59
Revert of Replace GrStrokeInfo with GrStyle. (patchset #4 id:160001 of https://codereview.chromium.org/1957363002/ )
...
Reason for revert:
Breaking some bots
Original issue's description:
> Replace GrStrokeInfo with GrStyle.
>
> A side effect is that arbitrary path effects can no be pushed deeper into the Ganesh flow for paths. They may be applied by path renderers.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957363002
>
> Committed: https://skia.googlesource.com/skia/+/33595bdf4b64a745f6340338d307e806e96c587f
TBR=egdaniel@google.com ,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1967513002
2016-05-10 06:19:21 -07:00
bsalomon
33595bdf4b
Replace GrStrokeInfo with GrStyle.
...
A side effect is that arbitrary path effects can no be pushed deeper into the Ganesh flow for paths. They may be applied by path renderers.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1957363002
Review-Url: https://codereview.chromium.org/1957363002
2016-05-10 05:57:27 -07:00
msarett
2c3eca38c9
Approximate common gamma tables as single values
...
This should improve performance of gamma conversion in
software (we can use vector math instead of table look
ups).
Additionally this allows us to quickly and easily
identify sRGB-like gammas.
On gpu, identifying sRGB gamma improves performance/memory,
because the hardware may support gamma conversion.
This will help us identify situations where gamma
conversion is not necessary.
Ex: sRGB input -> sRGB display
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1950183006
Review-Url: https://codereview.chromium.org/1950183006
2016-05-09 14:27:49 -07:00
bsalomon
97fd2d42b9
Incorporate scale into GrStyle and GrShape
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1952383003
Review-Url: https://codereview.chromium.org/1952383003
2016-05-09 13:02:01 -07:00
halcanary
57cd94a9de
SkAdvancedTypefaceMetrics: getAdvanceData uses std::function
...
Reduce templatedness.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1955053002
Review-Url: https://codereview.chromium.org/1955053002
2016-05-09 06:34:39 -07:00
halcanary
e20a875170
SkAdvancedTypefaceMetrics: abstract out linked list
...
+ use SkSinglyLinkedList<T>
+ move SkSinglyLinkedList.h to core
+ remove SkHackyAutoTDelete
+ getAdvanceData() -> setGlyphWidths()
+ finishRange no longer templated
+ remove unused templated functions
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953153004
Review-Url: https://codereview.chromium.org/1953153004
2016-05-08 18:47:16 -07:00
brianosman
14f850abfe
Remove Sk(Float|Double)PinToFixed functions, only used in tests.
...
These were triggering compile-time floating point overflow for one user,
and we don't use them.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1952303005
Review-Url: https://codereview.chromium.org/1952303005
2016-05-06 11:45:55 -07:00
bsalomon
1a0b9ed7d8
Fix issue where GrStyle::applyToPath exited before applying stroke
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1954123002
Review-Url: https://codereview.chromium.org/1954123002
2016-05-06 11:07:04 -07:00
cdalton
3ccf2e75ed
Remove hasMixedSamples() from GrPipelineBuilder
...
This info is unknown until after any clip has been applied to the
stencil settings, so it's misleading to include in the builder.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1952323002
Review-Url: https://codereview.chromium.org/1952323002
2016-05-06 09:41:16 -07:00
mtklein
ffa4a9213b
SkOncePtr -> SkOnce
...
It's always nice to kill off a synchronization primitive.
And while less terse, I think this new code reads more clearly.
... and, SkOncePtr's tests were the only thing now using sk_num_cores()
outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02
Review-Url: https://codereview.chromium.org/1953533002
2016-05-05 16:05:56 -07:00
brianosman
2d1ee7936e
Added --deepColor option to SampleApp, triggers creation of a ten-bit/channel
...
buffer. (Only on Windows at the moment). Uses new effect to do the final
gamma adjustment
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1919993002
Review-Url: https://codereview.chromium.org/1919993002
2016-05-05 12:24:31 -07:00
bsalomon
f0cf355b55
Stop banning stroke-and-fill for GrStyle and add tests
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1949943003
Review-Url: https://codereview.chromium.org/1949943003
2016-05-05 08:28:30 -07:00
reed
959a2937d5
Revert of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1949313003/ )
...
Reason for revert:
ok, I have no idea what's going on
Original issue's description:
> Reland of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1945293004/ )
>
> Reason for revert:
> previous revert unneeded (I think)
>
> Original issue's description:
> > Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ )
> >
> > Reason for revert:
> > broken the Mac and Linux builders, e.g.:
> >
> > https://build.chromium.org/p/chromium/builders/Mac/builds/15151
> > https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052
> >
> > Original issue's description:
> > > SkOncePtr -> SkOnce
> > >
> > > It's always nice to kill off a synchronization primitive.
> > > And while less terse, I think this new code reads more clearly.
> > >
> > > ... and, SkOncePtr's tests were the only thing now using sk_num_cores()
> > > outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
> > >
> > > BUG=skia:
> > > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
> > > CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
> > >
> > > Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02
> >
> > TBR=herb@google.com ,mtklein@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/7eb33da7eede34c050b865dbb1b60c3dcea7191b
>
> TBR=herb@google.com ,mtklein@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/82da9a8aa0ce648f36882830765b42e0ada6c0fa
TBR=herb@google.com ,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1948313002
2016-05-05 01:36:43 -07:00
reed
82da9a8aa0
Reland of SkOncePtr -> SkOnce (patchset #1 id:1 of https://codereview.chromium.org/1945293004/ )
...
Reason for revert:
previous revert unneeded (I think)
Original issue's description:
> Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ )
>
> Reason for revert:
> broken the Mac and Linux builders, e.g.:
>
> https://build.chromium.org/p/chromium/builders/Mac/builds/15151
> https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052
>
> Original issue's description:
> > SkOncePtr -> SkOnce
> >
> > It's always nice to kill off a synchronization primitive.
> > And while less terse, I think this new code reads more clearly.
> >
> > ... and, SkOncePtr's tests were the only thing now using sk_num_cores()
> > outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
> >
> > BUG=skia:
> > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
> > CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
> >
> > Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02
>
> TBR=herb@google.com ,mtklein@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/7eb33da7eede34c050b865dbb1b60c3dcea7191b
TBR=herb@google.com ,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1949313003
2016-05-05 01:28:56 -07:00
reed
7eb33da7ee
Revert of SkOncePtr -> SkOnce (patchset #4 id:60001 of https://codereview.chromium.org/1953533002/ )
...
Reason for revert:
broken the Mac and Linux builders, e.g.:
https://build.chromium.org/p/chromium/builders/Mac/builds/15151
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052
Original issue's description:
> SkOncePtr -> SkOnce
>
> It's always nice to kill off a synchronization primitive.
> And while less terse, I think this new code reads more clearly.
>
> ... and, SkOncePtr's tests were the only thing now using sk_num_cores()
> outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
> CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/9bd3fc7fa9bb7cad050bd619aa93d4c48ebb5c02
TBR=herb@google.com ,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1945293004
2016-05-04 17:14:44 -07:00
reed
086eea93b1
Revert of SK_DECLARE_STATIC_MUTEX -> static SkMutex (patchset #1 id:1 of https://codereview.chromium.org/1948193002/ )
...
Reason for revert:
broken the Mac and Linux builders, e.g.:
https://build.chromium.org/p/chromium/builders/Mac/builds/15151
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052
Original issue's description:
> SK_DECLARE_STATIC_MUTEX -> static SkMutex
>
> There's no need to use a macro to declare static SkMutexes any more
> (and there's likewise no need to restrict them to global scope).
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1948193002
>
> Committed: https://skia.googlesource.com/skia/+/5e56cfd3fa1041dbb83899844fb92fa9a2ef1009
TBR=mtklein@google.com ,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1945353003
2016-05-04 17:12:46 -07:00
mtklein
5e56cfd3fa
SK_DECLARE_STATIC_MUTEX -> static SkMutex
...
There's no need to use a macro to declare static SkMutexes any more
(and there's likewise no need to restrict them to global scope).
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1948193002
Review-Url: https://codereview.chromium.org/1948193002
2016-05-04 15:21:12 -07:00
mtklein
9bd3fc7fa9
SkOncePtr -> SkOnce
...
It's always nice to kill off a synchronization primitive.
And while less terse, I think this new code reads more clearly.
... and, SkOncePtr's tests were the only thing now using sk_num_cores()
outside of SkTaskGroup, so I've hidden it as static inside SkTaskGroup.cpp.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1953533002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review-Url: https://codereview.chromium.org/1953533002
2016-05-04 14:40:18 -07:00
bsalomon
06077565b1
Make cap only affect the keys of GrShapes that are possibly-open
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1949193002
Review-Url: https://codereview.chromium.org/1949193002
2016-05-04 13:50:29 -07:00
benjaminwagner
9b92ebdf41
Remove executable bit from source code files.
...
TBR=reed
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1952773002
Review-Url: https://codereview.chromium.org/1952773002
2016-05-04 13:45:06 -07:00
robertphillips
76948d4faa
Add Gr*Proxy classes
...
This isn't wired in anywhere yet.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937553002
Committed: https://skia.googlesource.com/skia/+/de5bf0cfeca908b81a28cc50065f7bc2da3d2fd1
Committed: https://skia.googlesource.com/skia/+/92605b35efa0155c44d24bd8415b4cc1db8831db
Review-Url: https://codereview.chromium.org/1937553002
2016-05-04 12:47:41 -07:00
ericrk
c4025189d3
Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
...
This is a regression from "Refactor to separate backend object lifecycle
and GpuResource budget decision".
GrGLRenderer::canAttemptStencilAttachment was incorrectly returning false
for all wrapped render targets. This function should return false only if
the FBO is wrapped (unowned). If the FBO is owned by Skia, we can attach
stencils.
BUG=608238
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
Review-Url: https://codereview.chromium.org/1941353003
2016-05-04 12:01:58 -07:00
brianosman
fad98562d8
Prototype code that turns any/every flattenable into JSON
...
This makes inspecting things in SkDebugger far more useful - any filter
or other complex object on the paint is ultimately visible. You still
have to do some guess work to figure out what the fields actually mean,
but you can at least cross-reference with the code in flatten().
Screenshots:
Before: https://screenshot.googleplex.com/a6JM5HBBe6G.png
After : https://screenshot.googleplex.com/XQfr4YJ6mnH.png
Changes to public API are just removals and changes to make
some functions virtual.
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1920423002
Review-Url: https://codereview.chromium.org/1920423002
2016-05-04 11:06:28 -07:00
jvanverth
31f25a037d
Revert of Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRend… (patchset #1 id:60001 of https://codereview.chromium.org/1941353003/ )
...
Reason for revert:
Breaking the ANGLE bots. Message is:
Caught exception 3221225477 EXCEPTION_ACCESS_VIOLATION
8.59m elapsed, 1 active, 82 queued, 315MB RAM, 1442MB peak
unit test SurfaceAttachStencil_Gpu
step returned non-zero exit code: -1073741819
Original issue's description:
> Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
>
> This is a regression from "Refactor to separate backend object lifecycle
> and GpuResource budget decision".
>
> GrGLRenderer::canAttemptStencilAttachment was incorrectly returning false
> for all wrapped render targets. This function should return false only if
> the FBO is wrapped (unowned). If the FBO is owned by Skia, we can attach
> stencils.
>
> BUG=608238
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
>
> Committed: https://skia.googlesource.com/skia/+/0736f3386820f19c0fe90b5dda2094e253780071
TBR=bsalomon@google.com ,kkinnunen@nvidia.com,ericrk@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=608238
Review-Url: https://codereview.chromium.org/1947143002
2016-05-04 10:08:12 -07:00
bsalomon
9ad5d7c84b
Add some more testing around hairline GrShapes
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1949903002
Review-Url: https://codereview.chromium.org/1949903002
2016-05-04 08:44:15 -07:00
bsalomon
fb08327e59
Expand GrStyle's interface.
...
Adds some basic getters on GrStyle as well as static const instances for fill and hairline.
Adds the ability to apply a GrStyle to a SkPath to produce an output SkPath.
Moves style key functions from GrShape to GrStyle.
Also fixes some issues with SkPath creation when applying style to GrShapes.
Adds tests that GrShape produces the correct SkPath when its GrStyle is applied.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1951613002
Review-Url: https://codereview.chromium.org/1951613002
2016-05-04 08:27:42 -07:00
ericrk
0736f33868
Allow stencils to be attached to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
...
This is a regression from "Refactor to separate backend object lifecycle
and GpuResource budget decision".
GrGLRenderer::canAttemptStencilAttachment was incorrectly returning false
for all wrapped render targets. This function should return false only if
the FBO is wrapped (unowned). If the FBO is owned by Skia, we can attach
stencils.
BUG=608238
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
Review-Url: https://codereview.chromium.org/1941353003
2016-05-03 17:14:07 -07:00
msarett
02125d10d5
Create a single, unique pointer to sRGB color space
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1945693002
Review-Url: https://codereview.chromium.org/1945693002
2016-05-03 14:24:47 -07:00
robertphillips
4f16e6361d
Revert of Add Gr*Proxy classes (patchset #10 id:220001 of https://codereview.chromium.org/1937553002/ )
...
Reason for revert:
ASAN
Original issue's description:
> Add Gr*Proxy classes
>
> This isn't wired in anywhere yet.
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937553002
>
> Committed: https://skia.googlesource.com/skia/+/de5bf0cfeca908b81a28cc50065f7bc2da3d2fd1
>
> Committed: https://skia.googlesource.com/skia/+/92605b35efa0155c44d24bd8415b4cc1db8831db
TBR=bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1944953002
2016-05-03 12:56:04 -07:00
reed
50d3b57c8a
return 4x4 matrix from SkColorSpace
...
move SkMatrix44 into core (with alias in utils to transition chrome)
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1943833002
Review-Url: https://codereview.chromium.org/1943833002
2016-05-03 12:13:21 -07:00
robertphillips
b4511344b6
Minor refactor of GrLayerHoister
...
The main point of this CL is to make sure using the rect bounds (rather than the underlying texture's bounds) is acceptable in GrLayerHoister::FilterLayer.
This is split out of https://codereview.chromium.org/1943913002/ (Retract GrRenderTarget from GrLayerHoister)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1947593002
Review-Url: https://codereview.chromium.org/1947593002
2016-05-03 09:37:08 -07:00
robertphillips
92605b35ef
Add Gr*Proxy classes
...
This isn't wired in anywhere yet.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937553002
Committed: https://skia.googlesource.com/skia/+/de5bf0cfeca908b81a28cc50065f7bc2da3d2fd1
Review-Url: https://codereview.chromium.org/1937553002
2016-05-03 08:47:01 -07:00
robertphillips
89d09a1f70
Revert of Add Gr*Proxy classes (patchset #9 id:160001 of https://codereview.chromium.org/1937553002/ )
...
Reason for revert:
Seems to be breaking N7 & ANGLE bots
Original issue's description:
> Add Gr*Proxy classes
>
> This isn't wired in anywhere yet.
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937553002
>
> Committed: https://skia.googlesource.com/skia/+/de5bf0cfeca908b81a28cc50065f7bc2da3d2fd1
TBR=bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1949463002
2016-05-03 06:44:50 -07:00
jvanverth
db1adf5989
Revert of Make stencils be attachable to render targets created via SkSurface::MakeFromBackendTextureAsRender… (patchset #9 id:150001 of https://codereview.chromium.org/1924183003/ )
...
Reason for revert:
Appears to be breaking the roll.
Original issue's description:
> Make stencils be attachable to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
>
> This is a regression from "Refactor to separate backend object lifecycle
> and GpuResource budget decision".
>
> GrGLRenderTarget::CreateWrapped creates only render targets that wrap
> the FBO.
> GrGLRenderTargetTexture::CreateWrapped creates render targets that
> wrap the texture.
>
> Use the latter as the implementation for
> SkSurface::MakeFromBackendTextureAsRenderTarget.
>
>
> BUG=608238
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
>
> Committed: https://skia.googlesource.com/skia/+/fe635fd76bbc375d527d1884af23cc617ca364ee
>
> Committed: https://skia.googlesource.com/skia/+/1cb00e42bff455e23f6883bf09680438fa631224
TBR=bsalomon@google.com ,kkinnunen@nvidia.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=608238
Review-Url: https://codereview.chromium.org/1943843002
2016-05-03 05:37:46 -07:00
robertphillips
de5bf0cfec
Add Gr*Proxy classes
...
This isn't wired in anywhere yet.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937553002
Review-Url: https://codereview.chromium.org/1937553002
2016-05-03 05:06:29 -07:00
kkinnunen
1cb00e42bf
Make stencils be attachable to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
...
This is a regression from "Refactor to separate backend object lifecycle
and GpuResource budget decision".
GrGLRenderTarget::CreateWrapped creates only render targets that wrap
the FBO.
GrGLRenderTargetTexture::CreateWrapped creates render targets that
wrap the texture.
Use the latter as the implementation for
SkSurface::MakeFromBackendTextureAsRenderTarget.
BUG=608238
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
Committed: https://skia.googlesource.com/skia/+/fe635fd76bbc375d527d1884af23cc617ca364ee
Review-Url: https://codereview.chromium.org/1924183003
2016-05-02 23:16:42 -07:00
bsalomon
40ef48580b
When filling nested rect path check for empty inner and empty outer rects
...
BUG=skia:5221
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1936073003
Review-Url: https://codereview.chromium.org/1936073003
2016-05-02 13:22:13 -07:00
msarett
ffc2aea3cb
Introduce SkGammas type to represent ICC gamma curves
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1928123002
Committed: https://skia.googlesource.com/skia/+/7b2c6dd8c918209cb92e1338905d511c68da3eb2
Review-Url: https://codereview.chromium.org/1928123002
2016-05-02 11:12:14 -07:00
brianosman
18f13f3673
Remove (almost) unused read/writeFunctionPtr API.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1937053002
Review-Url: https://codereview.chromium.org/1937053002
2016-05-02 07:51:08 -07:00
mtklein
59c12e3f00
remove non-static uses of SkOncePtr
...
Still slowly working through all the SK_DECLARE_STATIC_FOO macros.
SkOncePtr is complicating things by having SkOncePtr delete its pointer
and SkBaseOncePtr not. Simplify things by removing SkOncePtr, leaving
only the leaky SkBaseOncePtr.
We replace SkOncePtr<T> instead with SkOnce and T. In most cases this
did not need to be a pointer, and in some cases here we're even saving
a few bytes by replacing SkOncePtr<T> with SkOnce and a T.
The dependency map of SK_DECLARE_STATIC_FOO is:
SkBaseMutex -> SkBaseSemaphore -> SkBaseOncePtr
They're intertwined enough that I think I've got to do all three in one
next CL.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1939503002
Review-Url: https://codereview.chromium.org/1939503002
2016-05-02 07:19:41 -07:00
mtklein
4d9ff62fa2
Remove SkWriter32::contiguousArray().
...
This method requires SkWriter32 have a contiguous array.
It does, and I plan to keep it that way (last time we checked
it's faster), but this turns that feature back into an
implementation detail.
This feature is only used by another unused feature, deep copies of
ops arrays in SkPictureData. Kill that, kill this.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1932223003
Depends on https://codereview.chromium.org/1936563002/
Only deleting API
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/1932223003
2016-04-29 14:45:36 -07:00
mtklein
b4c899d48d
remove SkWriteBuffer::getWriter32().
...
SkWriteBuffer exposes its lower-level implementation SkWriter32 through
this one call. It's not currently used in any interesting way:
- write_encoded_bitmap() uses it to manually re-create writeDataAsByteArray();
- unit tests use it incidentally as a quick way to read the serialized bytes.
This should be SkWriteBuffer no longer necessarily needs to have an SkWriter32.
Landing this will let us then remove SkWriter32::contiguousArray().
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1936563002
TBR=reed@google.com
Just deleting API
Review-Url: https://codereview.chromium.org/1936563002
2016-04-29 13:58:09 -07:00
benjaminwagner
817fed3cb7
Revert of Make stencils be attachable to render targets created via SkSurface::MakeFromBackendTextureAsRender… (patchset #5 id:80001 of https://codereview.chromium.org/1924183003/ )
...
Reason for revert:
Breaking the DEPS roll.
Also seems to be causing failure in DM on some Windows bots:
c:\0\build\slave\workdir\build\skia\tests\surfacetest.cpp:963 kShapeColor == bitmap.getColor(kW / 2, kH / 2)
Original issue's description:
> Make stencils be attachable to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
>
> This is a regression from "Refactor to separate backend object lifecycle
> and GpuResource budget decision".
>
> GrGLRenderTarget::CreateWrapped creates only render targets that wrap
> the FBO.
> GrGLRenderTargetTexture::CreateWrapped creates render targets that
> wrap the texture.
>
> Use the latter as the implementation for
> SkSurface::MakeFromBackendTextureAsRenderTarget.
>
> The test contains disabled code. The
> MakeFromBackendTextureAsRenderTarget does not copy the existing texture
> contents to the FBO render buffer.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
>
> Committed: https://skia.googlesource.com/skia/+/fe635fd76bbc375d527d1884af23cc617ca364ee
TBR=bsalomon@google.com ,kkinnunen@nvidia.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1931293003
2016-04-29 11:17:08 -07:00
msarett
a2ffa98323
Revert of Introduce SkGammas type to represent ICC gamma curves (patchset #7 id:40002 of https://codereview.chromium.org/1928123002/ )
...
Reason for revert:
Breaks TSAN
https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN/builds/6387/steps/dm/logs/stdio
Original issue's description:
> Introduce SkGammas type to represent ICC gamma curves
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1928123002
>
> Committed: https://skia.googlesource.com/skia/+/7b2c6dd8c918209cb92e1338905d511c68da3eb2
TBR=scroggo@google.com ,reed@google.com,brianosman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1933863002
2016-04-29 11:12:22 -07:00
msarett
7b2c6dd8c9
Introduce SkGammas type to represent ICC gamma curves
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1928123002
Review-Url: https://codereview.chromium.org/1928123002
2016-04-29 10:01:26 -07:00
mtklein
1b5dd88454
remove SkWriteBuffer::reserve()
...
We're not using it for anything that we can't do using the clearer writeFoo()/readFoo() methods.
The deletions in SkPictureFlat.{h,cpp} and BitmapHeapTest.cpp clean up dead code.
This code has not been used for a long time. I happened to notice it because it
was another caller of reserve() (in a terrifyingly hacking/interesting way that
I bet we'll find I authored...)
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1930103003
Deleting APIs unused publicly.
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/1930103003
2016-04-29 08:46:41 -07:00
bsalomon
3de75da6d2
Use constexpr constructors of GrStencilSettings rather than hacky macro system.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1933053002
Review-Url: https://codereview.chromium.org/1933053002
2016-04-29 08:44:16 -07:00
djsollen
efe46d2094
Repurpose Release_Developer BUILDTYPE and remove SK_DEVELOPER.
...
The Release_Developer build type is now used to build Skia with
release level optimizations but still enable SK_DEBUG. This in turn
means that SkASSERTS and SkRTConf are available in this mode.
Further we can then remove SK_DEVELOPER as a define as it is true
iff SK_DEBUG is true.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1931903002
DOCS_PREVIEW= https://skia.org/?cl=1931903002
Review-Url: https://codereview.chromium.org/1931903002
2016-04-29 06:41:35 -07:00
kkinnunen
fe635fd76b
Make stencils be attachable to render targets created via SkSurface::MakeFromBackendTextureAsRenderTarget
...
This is a regression from "Refactor to separate backend object lifecycle
and GpuResource budget decision".
GrGLRenderTarget::CreateWrapped creates only render targets that wrap
the FBO.
GrGLRenderTargetTexture::CreateWrapped creates render targets that
wrap the texture.
Use the latter as the implementation for
SkSurface::MakeFromBackendTextureAsRenderTarget.
The test contains disabled code. The
MakeFromBackendTextureAsRenderTarget does not copy the existing texture
contents to the FBO render buffer.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1924183003
Review-Url: https://codereview.chromium.org/1924183003
2016-04-29 06:41:29 -07:00
robertphillips
4df1656f0f
Tighten up SkSpecialSurface factory functions
...
This is split out of https://codereview.chromium.org/1930013002/ ((Mostly) Retract GrRenderTarget from SkGpuDevice)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1925313002
Review-Url: https://codereview.chromium.org/1925313002
2016-04-28 15:09:34 -07:00
robertphillips
175dd9b5e3
Clean up test drawContext usage
...
The general idea is to provide access to SkGpuDevice's drawContext rather than its GrRenderTarget. That is usually what the testing framework actually wants.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1930623003
Review-Url: https://codereview.chromium.org/1930623003
2016-04-28 14:32:04 -07:00
robertphillips
d4c741e3d0
Refactor drawContext/RenderTarget creation
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1914883002
Committed: https://skia.googlesource.com/skia/+/2f1c42e8448bbbadeb3df1c626faa90aa33f8907
Review-Url: https://codereview.chromium.org/1914883002
2016-04-28 09:55:15 -07:00
bsalomon
5e410b4a68
Detect empty (r)rects in GrShape.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1929643002
Review-Url: https://codereview.chromium.org/1929643002
2016-04-28 09:30:46 -07:00
reed
28d5bdd97e
Revert of Repurpose Release_Developer BUILDTYPE and remove SK_DEVELOPER. (patchset #2 id:20001 of https://codereview.chromium.org/1927583002/ )
...
Reason for revert:
still blocking DEPS roll
Original issue's description:
> Repurpose Release_Developer BUILDTYPE and remove SK_DEVELOPER.
>
> The Release_Developer build type is now used to build Skia with
> release level optimizations but still enable SK_DEBUG. This in turn
> means that SkASSERTS and SkRTConf are available in this mode.
>
> Further we can then remove SK_DEVELOPER as a define as it is true
> iff SK_DEBUG is true.
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1927583002
> DOCS_PREVIEW= https://skia.org/?cl=1927583002
>
> Committed: https://skia.googlesource.com/skia/+/48d6f88479e72efaf9b9d8f9c0769acb1ba773db
TBR=bungeman@gmail.com ,bungeman@google.com,benjaminwagner@google.com,djsollen@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1918253006
2016-04-28 08:12:55 -07:00
robertphillips
aa19a5fbc5
Revert of Refactor drawContext/RenderTarget creation (patchset #8 id:140001 of https://codereview.chromium.org/1914883002/ )
...
Reason for revert:
Experimental revert to see if this is blocking the DEPS roll.
Original issue's description:
> Refactor drawContext/RenderTarget creation
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1914883002
>
> Committed: https://skia.googlesource.com/skia/+/2f1c42e8448bbbadeb3df1c626faa90aa33f8907
TBR=bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1929833004
2016-04-28 06:21:55 -07:00
msarett
95416f477d
Enable flattening of SkRecordedDrawable
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1913843002
Committed: https://skia.googlesource.com/skia/+/d636950e8ecba89c0021ce4e76037c67aa6ee2cd
Review-Url: https://codereview.chromium.org/1913843002
2016-04-27 13:51:20 -07:00
djsollen
48d6f88479
Repurpose Release_Developer BUILDTYPE and remove SK_DEVELOPER.
...
The Release_Developer build type is now used to build Skia with
release level optimizations but still enable SK_DEBUG. This in turn
means that SkASSERTS and SkRTConf are available in this mode.
Further we can then remove SK_DEVELOPER as a define as it is true
iff SK_DEBUG is true.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1927583002
DOCS_PREVIEW= https://skia.org/?cl=1927583002
Review-Url: https://codereview.chromium.org/1927583002
2016-04-27 13:37:23 -07:00
robertphillips
2f1c42e844
Refactor drawContext/RenderTarget creation
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1914883002
Review-Url: https://codereview.chromium.org/1914883002
2016-04-27 13:34:01 -07:00
bsalomon
4eeccc9de7
Add tests for volatile paths to GrShapeTest
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1923403003
Review-Url: https://codereview.chromium.org/1923403003
2016-04-27 13:30:25 -07:00
bsalomon
409ed73237
Add tests for empty GrShapes.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1927673002
Review-Url: https://codereview.chromium.org/1927673002
2016-04-27 12:36:02 -07:00
senorblanco
900c367796
Image filters: de-nest SkImageFilter::Cache and Cache::Key.
...
This reduces the public header, and also allows us to foward-
declare them, so we can remove an #include from all the
SkDevice subclass headers.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1919063002
Review-Url: https://codereview.chromium.org/1919063002
2016-04-27 11:31:23 -07:00
robertphillips
6c7e325236
Bring sk_sp to GrDrawContext
...
This is split out of: https://codereview.chromium.org/1914883002/ (Refactor drawContext/RenderTarget creation)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1918003003
Review-Url: https://codereview.chromium.org/1918003003
2016-04-27 10:47:51 -07:00
bungeman
b4bb7d8255
Add oblique as a slant.
...
Some fonts have italic and oblique in the same family, see
http://lucidafonts.com/fonts/family/lucida-sans
http://www.gust.org.pl/projects/e-foundry/latin-modern
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1921903002
Chromium side change at https://crrev.com/1921503006/ .
Review-Url: https://codereview.chromium.org/1921903002
2016-04-27 10:21:05 -07:00
mtklein
569b02151f
Revert of Enable flattening of SkRecordedDrawable (patchset #8 id:140001 of https://codereview.chromium.org/1913843002/ )
...
Reason for revert:
Release mode bots appear to be crashing while loading .skp files in nanobench.
Original issue's description:
> Enable flattening of SkRecordedDrawable
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1913843002
>
> Committed: https://skia.googlesource.com/skia/+/d636950e8ecba89c0021ce4e76037c67aa6ee2cd
TBR=djsollen@google.com ,reed@google.com,msarett@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review-Url: https://codereview.chromium.org/1923393002
2016-04-27 09:29:34 -07:00
msarett
d636950e8e
Enable flattening of SkRecordedDrawable
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1913843002
Review-Url: https://codereview.chromium.org/1913843002
2016-04-27 09:03:17 -07:00
reed
1e7f5e708e
remove 'deprecated' region from SkDraw
...
Most call-sites that used it just took its bounds, so it was trivial to convert them
to get the bounds of the RasterClip. Two clients wanted the actual region:
1. layeriter for android
2. pdf
Android already only has BW clips, so should be safe.
PDF now overrides its clip methods to ensure that all clips are BW.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1925693002
Review URL: https://codereview.chromium.org/1925693002
2016-04-27 07:49:17 -07:00
halcanary
4b6566644f
SkDocument/PDF: new API
...
has a pdf/a switch.
sets metadata in factory.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1916093002
Review URL: https://codereview.chromium.org/1916093002
2016-04-27 07:45:18 -07:00
bsalomon
72dc51c288
Add support for building GrShape from SkPath and more tests
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1922713002
Review URL: https://codereview.chromium.org/1922713002
2016-04-27 06:46:23 -07:00
robertphillips
ed086cae88
Revert of Remove gpu-specialization of SkSpecialImage (patchset #5 id:80001 of https://codereview.chromium.org/1918993002/ )
...
Reason for revert:
N6 bot has gone red
Original issue's description:
> Remove gpu-specialization of SkSpecialImage
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1918993002
>
> Committed: https://skia.googlesource.com/skia/+/0533d6e4142c2787d6d3c325ef0d8d1962292cad
TBR=reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1921393003
2016-04-26 15:02:25 -07:00
robertphillips
0533d6e414
Remove gpu-specialization of SkSpecialImage
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1918993002
Review URL: https://codereview.chromium.org/1918993002
2016-04-26 14:33:36 -07:00
msarett
c5db972fce
Remove redundant test
...
FlattenDrawable test now exercises the use of custom unflatten procs.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1917183002
Review URL: https://codereview.chromium.org/1917183002
2016-04-26 12:59:47 -07:00
bsalomon
47cc769118
Add initial implementation of GrShape and GrStyle classes and tests
...
The initial intent is to use GrShape to simplify the mask blur code paths. However, I also want to use this to explore a more unified drawing code flow for different geometry types. The goal is to have a single representation for geometries+styling that attempts to always keep the geometry in the simplest form (e.g. preferring rrects to paths). It also allows for converting styling information into modified geometry and for computing consistent keys.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822723003
Committed: https://skia.googlesource.com/skia/+/c885dacfe4625af8b0e2e5c6e8a8ae8dc2d620a8
Committed: https://skia.googlesource.com/skia/+/824e58fc6df8fc149d9675f577f7deeaba698b09
Review URL: https://codereview.chromium.org/1822723003
2016-04-26 12:56:00 -07:00
bsalomon
82ecc5773f
Revert of Add initial implementation of GrShape and GrStyle classes and tests (patchset #11 id:280001 of https://codereview.chromium.org/1822723003/ )
...
Reason for revert:
test failing
Original issue's description:
> Add initial implementation of GrShape and GrStyle classes and tests
>
> The initial intent is to use GrShape to simplify the mask blur code paths. However, I also want to use this to explore a more unified drawing code flow for different geometry types. The goal is to have a single representation for geometries+styling that attempts to always keep the geometry in the simplest form (e.g. preferring rrects to paths). It also allows for converting styling information into modified geometry and for computing consistent keys.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822723003
>
> Committed: https://skia.googlesource.com/skia/+/c885dacfe4625af8b0e2e5c6e8a8ae8dc2d620a8
>
> Committed: https://skia.googlesource.com/skia/+/824e58fc6df8fc149d9675f577f7deeaba698b09
TBR=robertphillips@google.com ,egdaniel@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1919243002
2016-04-26 08:41:47 -07:00
msarett
002c92bcbf
Do not globally register drawables in test code
...
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1922853003
Review URL: https://codereview.chromium.org/1922853003
2016-04-26 08:20:14 -07:00
bsalomon
824e58fc6d
Add initial implementation of GrShape and GrStyle classes and tests
...
The initial intent is to use GrShape to simplify the mask blur code paths. However, I also want to use this to explore a more unified drawing code flow for different geometry types. The goal is to have a single representation for geometries+styling that attempts to always keep the geometry in the simplest form (e.g. preferring rrects to paths). It also allows for converting styling information into modified geometry and for computing consistent keys.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822723003
Committed: https://skia.googlesource.com/skia/+/c885dacfe4625af8b0e2e5c6e8a8ae8dc2d620a8
Review URL: https://codereview.chromium.org/1822723003
2016-04-26 06:53:45 -07:00
robertphillips
83af0a63b1
Revert of Add initial implementation of GrShape and GrStyle classes and tests (patchset #10 id:260001 of https://codereview.chromium.org/1822723003/ )
...
Reason for revert:
From what I can tell, this compiles on 2015 but not 2013.
Original issue's description:
> Add initial implementation of GrShape and GrStyle classes and tests
>
> The initial intent is to use GrShape to simplify the mask blur code paths. However, I also want to use this to explore a more unified drawing code flow for different geometry types. The goal is to have a single representation for geometries+styling that attempts to always keep the geometry in the simplest form (e.g. preferring rrects to paths). It also allows for converting styling information into modified geometry and for computing consistent keys.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822723003
>
> Committed: https://skia.googlesource.com/skia/+/c885dacfe4625af8b0e2e5c6e8a8ae8dc2d620a8
TBR=egdaniel@google.com ,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1918203002
2016-04-26 05:07:23 -07:00
bsalomon
c885dacfe4
Add initial implementation of GrShape and GrStyle classes and tests
...
The initial intent is to use GrShape to simplify the mask blur code paths. However, I also want to use this to explore a more unified drawing code flow for different geometry types. The goal is to have a single representation for geometries+styling that attempts to always keep the geometry in the simplest form (e.g. preferring rrects to paths). It also allows for converting styling information into modified geometry and for computing consistent keys.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822723003
Review URL: https://codereview.chromium.org/1822723003
2016-04-25 13:37:22 -07:00
robertphillips
c91fd3447e
Add another dollop of sk_sp to SkSpecialImage and SkSpecialSurface
...
This is split out of https://codereview.chromium.org/1914883002/ (Refactor drawContext/RenderTarget creation)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1913743002
Review URL: https://codereview.chromium.org/1913743002
2016-04-25 12:32:55 -07:00
halcanary
1e9030472e
SkMD5: .update() -> .write()
...
Review URL: https://codereview.chromium.org/1913173003
2016-04-25 10:29:36 -07:00
halcanary
d51bdae4e1
SkStringPrintf and SkString::printf now are no longer limted by a static buffer
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1403803002
Committed: https://skia.googlesource.com/skia/+/606cadd5aac62299ef2e277709b3684cae2bf96c
Review URL: https://codereview.chromium.org/1403803002
2016-04-25 09:25:35 -07:00
reed
96a04f3299
simplify handle-affine: subclass overrides just describe their leaf behavior
...
added new test case (that would have failed before) of blur with a colorfilter input
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1915943002
Review URL: https://codereview.chromium.org/1915943002
2016-04-25 09:25:15 -07:00
msarett
edf7fcd8b9
Make SkDrawable an SkFlattenable
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1911403004
Review URL: https://codereview.chromium.org/1911403004
2016-04-25 06:40:26 -07:00
reed
bb34a8ac59
allow imagefilter to manage CTM decomposition
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1908173006
Review URL: https://codereview.chromium.org/1908173006
2016-04-23 15:19:07 -07:00
msarett
a3b3b238f5
Enable flattening/unflattening with custom unflatten procs
...
Now flattenables are serialized using a string name, so that
flattenables do not necessarily need to be registered before
serialization. They just need to override getTypeName().
Allows custom unflatten procs to be set on the SkReadBuffer.
This is optional if the flattenable is registered, but otherwise
must be called.
This was split off from:
https://codereview.chromium.org/1837913003/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1858323002
Review URL: https://codereview.chromium.org/1858323002
2016-04-22 12:43:07 -07:00
robertphillips
7715e06b68
Retract SkDevice a bit more
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1905383002
Review URL: https://codereview.chromium.org/1905383002
2016-04-22 10:57:16 -07:00
halcanary
3361e6248b
Revert of SkStringPrintf and SkString::printf now are no longer limted by a static buffer (patchset #5 id:80001 of https://codereview.chromium.org/1403803002/ )
...
Reason for revert:
breaking something
Original issue's description:
> SkStringPrintf and SkString::printf now are no longer limted by a static buffer
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1403803002
>
> Committed: https://skia.googlesource.com/skia/+/606cadd5aac62299ef2e277709b3684cae2bf96c
TBR=tomhudson@google.com ,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1908423002
2016-04-22 08:19:04 -07:00
halcanary
606cadd5aa
SkStringPrintf and SkString::printf now are no longer limted by a static buffer
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1403803002
Review URL: https://codereview.chromium.org/1403803002
2016-04-22 08:03:03 -07:00
scroggo
6351640285
Fixes for SkRWBuffer
...
Do not call SkBufferHead::validate in SkROBuffer's destructor, which
may be called in a separate thread from SkRWBuffer::append. validate()
reads SkBufferBlock::fUsed, and append() writes to it, resulting in
a data race.
Update some comments to be more clear about how it is safe to use
these classes across threads.
Test the readers in separate threads.
In addition, make sure it is safe to create a reader even when no
data has been appended. Add tests for this case.
Mark a parameter to SkBufferHead::validate() as const, reflecting
its use.
BUG=chromium:601578
BUG=chromium:605479
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871953002
Review URL: https://codereview.chromium.org/1871953002
2016-04-22 06:59:01 -07:00
kkinnunen
2e6055b3ea
Refactor to separate backend object lifecycle and GpuResource budget decision
...
Refactor GrGpuResource to contain two different pieces of state:
a) instance is budgeted or not budgeted
b) instance references wrapped backend objects or not
The "object lifecycle" was also attached to backend object
handles (ids), which made the code a bit unclear. Backend objects
would be associated with GrGpuResource::LifeCycle, even though
GrGpuResource::LifeCycle refers to the GpuResource, and individual
backend objects in one GpuResource might be governed with different
"lifecycle".
Mark the budgeted/not budgeted with SkBudgeted::kYes, SkBudgeted::kNo.
This was previously GrGpuResource::kCached_LifeCycle,
GrGpuResource::kUncached_LifeCycle.
Mark the "references wrapped object" with boolean. This was previously
GrGpuResource::kBorrowed_LifeCycle,
GrGpuResource::kAdopted_LifeCycle for GrGpuResource.
Associate the backend object ownership status with
GrBackendObjectOwnership for the backend object handles.
The resource type leaf constuctors, such has GrGLTexture or
GrGLTextureRenderTarget take "budgeted" parameter. This parameter
is passed to GrGpuResource::registerWithCache().
The resource type intermediary constructors, such as GrGLTexture
constructors for class GrGLTextureRenderTarget do not take "budgeted"
parameters, intermediary construtors do not call registerWithCache.
Removes the need for tagging GrGpuResource -derived subclass
constructors with "Derived" parameter.
Makes instances that wrap backend objects be registered with
a new function GrGpuResource::registerWithCacheWrapped().
Removes "budgeted" parameter from classes such as StencilAttahment, as
they are always cached and never wrap any external backend objects.
Removes the use of concept "external" from the member function names.
The API refers to the objects as "wrapped", so make all related
functions use the term consistently.
No change in functionality. Resources referencing wrapped objects are
always inserted to the cache with budget decision kNo.
BUG=594928
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1862043002
Review URL: https://codereview.chromium.org/1862043002
2016-04-22 01:48:29 -07:00
robertphillips
da2cd8b1d9
Hide SkCanvas::LayerIter
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1897863008
Committed: https://skia.googlesource.com/skia/+/a814000cbb0e90624a410b4359fff7f3ec66f0e0
Review URL: https://codereview.chromium.org/1897863008
2016-04-21 11:05:33 -07:00
robertphillips
0b229669dc
Remove stray files
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1912583002
Review URL: https://codereview.chromium.org/1912583002
2016-04-21 05:17:28 -07:00
fmalita
a1f4fa7230
Revert of Hide SkCanvas::LayerIter (patchset #2 id:20001 of https://codereview.chromium.org/1897863008/ )
...
Reason for revert:
Das roll ist gebusted: https://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/214775/steps/compile%20%28with%20patch%29/logs/stdio
FAILED: /b/build/slave/cache/cipd/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/WebKit/Source/platform/graphics/paint/blink_platform_unittests.PaintArtifactToSkCanvasTest.o.d -DV8_DEPRECATION_WARNINGS -DCLD_VERSION=2 -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORE=0 -DCHROMIUM_BUILD -DCR_CLANG_REVISION=266460-1 -DUSE_LIBJPEG_TURBO=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DENABLE_TOPCHROME_MD=1 -DDCHECK_ALWAYS_ON=1 -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DUSE_BROWSER_SPELLCHECKER=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DINSIDE_BLINK -DMOJO_USE_SYSTEM_IMPL -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DUNIT_TEST -DGTEST_HAS_RTTI=0 -DENABLE_LAYOUT_UNIT_IN_INLINE_BOXES=0 -DENABLE_OILPAN=1 -DWTF_USE_CONCATENATED_IMPULSE_RESPONSES=1 -DENABLE_INPUT_MULTIPLE_FIELDS_UI=1 -DWTF_USE_ICCJPEG=1 -DWTF_USE_QCMSLIB=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_NOEXCEPT= -DU_STATIC_IMPLEMENTATION -DSK_SUPPORT_GPU=1 -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DCHROME_PNG_WRITE_SUPPORT -DPNG_USER_CONFIG -DUSE_LIBPCI=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -D_FORTIFY_SOURCE=2 -Igen -Igen/blink -I../.. -I../../skia/config -I../../third_party/WebKit/Source -I../../third_party/khronos -I../../gpu -Igen/angle -I../../third_party/WebKit -Igen/third_party/WebKit -I../../testing/gmock/include -I../../testing/gtest/include -I../../third_party/icu/source/i18n -I../../third_party/icu/source/common -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf -I../../third_party/skia/include/gpu -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/utils/mac -I../../skia/ext -I../../third_party/harfbuzz-ng/src -I../../third_party/qcms/src -I../../third_party/libpng -I../../third_party/zlib -I../../third_party/libwebp -I../../third_party/ots/include -I../../v8/include -I../../third_party/iccjpeg -I../../third_party/libjpeg_turbo -isysroot /Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -O2 -fvisibility=hidden -Werror -mmacosx-version-min=10.7 -arch x86_64 -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-selector-type-mismatch -Wpartial-availability -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -std=c++11 -stdlib=libc++ -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics -Xclang -load -Xclang /b/build/slave/mac/build/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -Xclang -plugin-arg-find-bad-constructs -Xclang follow-macro-expansion -Xclang -plugin-arg-find-bad-constructs -Xclang check-implicit-copy-ctors -fcolor-diagnostics -fno-strict-aliasing -Xclang -load -Xclang /b/build/slave/mac/build/src/third_party/llvm-build/Release+Asserts/lib/libBlinkGCPlugin.dylib -Xclang -add-plugin -Xclang blink-gc-plugin -Xclang -plugin-arg-blink-gc-plugin -Xclang enable-oilpan -Xclang -plugin-arg-blink-gc-plugin -Xclang warn-raw-ptr -c ../../third_party/WebKit/Source/platform/graphics/paint/PaintArtifactToSkCanvasTest.cpp -o obj/third_party/WebKit/Source/platform/graphics/paint/blink_platform_unittests.PaintArtifactToSkCanvasTest.o
../../third_party/WebKit/Source/platform/graphics/paint/PaintArtifactToSkCanvasTest.cpp:201:22: error: 'LayerIter' is a protected member of 'SkCanvas'
return SkCanvas::LayerIter(canvas, false).clip();
^
../../third_party/skia/include/core/SkCanvas.h:1230:18: note: declared protected here
class SK_API LayerIter /*: SkNoncopyable*/ {
^
1 error generated.
ninja: build stopped: subcommand failed.
Original issue's description:
> Hide SkCanvas::LayerIter
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1897863008
>
> Committed: https://skia.googlesource.com/skia/+/a814000cbb0e90624a410b4359fff7f3ec66f0e0
TBR=reed@google.com ,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1906573003
2016-04-20 17:03:38 -07:00
robertphillips
a814000cbb
Hide SkCanvas::LayerIter
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1897863008
Review URL: https://codereview.chromium.org/1897863008
2016-04-20 15:57:27 -07:00
robertphillips
3e302275b3
Begin removing deprecated (and now, unused) ImageFilter code paths
...
This CL focuses on removing the Proxy objects but takes some other stuff with it.
BUG=skia:4965
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1896383003
Review URL: https://codereview.chromium.org/1896383003
2016-04-20 11:48:36 -07:00
bungeman
0d9e9bee17
SkTArray movable and swap for move only elements.
...
SkTArray cannot currently contain move only elements because its swap
currently requires the SkTArray to be copyable. This makes SkTArray
movable and makes its swap move instead of copy.
Review URL: https://codereview.chromium.org/1904663004
2016-04-20 10:22:20 -07:00
scroggo
9d08172828
Add instructions for building with MSAN
...
Move static functions only used by GPU into if SK_SUPPORT_GPU guard.
This enables building MSAN, which seems to default to not supporting
GPU.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1908493002
DOCS_PREVIEW= https://skia.org/?cl=1908493002
Review URL: https://codereview.chromium.org/1908493002
2016-04-20 08:27:18 -07:00
robertphillips
5e3815b4d0
Rein in the use of SkDevice.h
...
Nothing interesting.
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1904673003
Review URL: https://codereview.chromium.org/1904673003
2016-04-20 05:29:51 -07:00
robertphillips
df082c5425
Add more diagnostic messages to ReadWriteAlpha test
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1902063002
Review URL: https://codereview.chromium.org/1902063002
2016-04-19 08:32:40 -07:00
scroggo
2477594a39
Rename CodexTest.cpp to CodecTest.cpp
...
CodexTest confuses me almost every time I try to open it. Renaming it
to what my brain thinks it should be called.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1897973004
Review URL: https://codereview.chromium.org/1897973004
2016-04-19 08:27:40 -07:00
robertphillips
bde57ed11b
Make SkImageFilter::Cache purging methods pure virtual
...
This is intended to see if the Windows 10 bots ignoring of the purge methods is a compiler bug.
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1901883002
Review URL: https://codereview.chromium.org/1901883002
2016-04-18 14:49:57 -07:00
mtklein
d9dd428211
Modernize and trim down SkOnce.
...
The API and implementation are very much simplified.
You may not want to bother reading the diff.
As is our trend, SkOnce now uses <atomic> directly.
Member initialization means we don't need SK_DECLARE_STATIC_ONCE.
SkSpinlock already works this same way.
All uses of the old API taking an external bool* and Lock* were pessimal,
so I have not carried this sort of API forward. It's simpler, faster,
and more space-efficient to always use this single SkOnce class interface.
SkOnce weighs 2 bytes: a done bool and an SkSpinlock, also a bool internally.
This API refactoring opens up the opportunity to fuse those into a single
three-state byte if we'd like.
No public API changes.
TBR=reed@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1894893002
Review URL: https://codereview.chromium.org/1894893002
2016-04-18 08:09:11 -07:00
robertphillips
f7142e71d7
Split AlphaThresholdEffect out into its own file
...
Mainly mechanical although I did:
convert Create method to sk_sp Make version
rm extra '\t's and '\n's in emitCode
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1893193002
Review URL: https://codereview.chromium.org/1893193002
2016-04-18 07:20:05 -07:00
robertphillips
6b13473dd4
Move SkImageFilter over to storing sk_sps
...
This CL also removes the old bare-pointer style ctor.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1894573002
Review URL: https://codereview.chromium.org/1894573002
2016-04-15 09:58:37 -07:00
robertphillips
534c270465
Update TileImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1882113002
Review URL: https://codereview.chromium.org/1882113002
2016-04-15 07:57:40 -07:00
robertphillips
bfe11fc9a6
Update DisplacementMapEffect to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1877783003
Committed: https://skia.googlesource.com/skia/+/a53011ef44705a091a8e24f7ea289a3f9ad759f2
Review URL: https://codereview.chromium.org/1877783003
2016-04-15 07:17:36 -07:00
robertphillips
47db5fe443
Revert of Update DisplacementMapEffect to sk_sp (patchset #3 id:40001 of https://codereview.chromium.org/1877783003/ )
...
Reason for revert:
unexpected image diffs in imagefilterscropexpand GM
Original issue's description:
> Update DisplacementMapEffect to sk_sp
>
> TBR=reed@google.com
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1877783003
>
> Committed: https://skia.googlesource.com/skia/+/a53011ef44705a091a8e24f7ea289a3f9ad759f2
TBR=fmalita@chromium.org ,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1884253004
2016-04-15 05:09:32 -07:00
robertphillips
a53011ef44
Update DisplacementMapEffect to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1877783003
Review URL: https://codereview.chromium.org/1877783003
2016-04-15 04:37:07 -07:00
bungeman
a3760992c9
Revert of Fixes for SkRWBuffer (patchset #5 id:80001 of https://codereview.chromium.org/1871953002/ )
...
Reason for revert:
Making MSAN and TSAN rather unhappy.
https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-MSAN/builds/1586
https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN/builds/5922
Original issue's description:
> Fixes for SkRWBuffer
>
> Do not call SkBufferHead::validate in SkROBuffer's destructor, which
> may be called in a separate thread from SkRWBuffer::append. validate()
> reads SkBufferBlock::fUsed, and append() writes to it, resulting in
> a data race.
>
> Update some comments to be more clear about how it is safe to use
> these classes across threads.
>
> Test the readers in separate threads.
>
> In addition, make sure it is safe to create a reader even when no
> data has been appended. Add tests for this case.
>
> Mark a parameter to SkBufferHead::validate() as const, reflecting
> its use.
>
> BUG=chromium:601578
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871953002
>
> Committed: https://skia.googlesource.com/skia/+/d06920a29fe11c68bde2b93948ec99f277bb8459
TBR=mtklein@google.com ,reed@google.com,scroggo@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:601578
Review URL: https://codereview.chromium.org/1882853004
2016-04-14 14:57:01 -07:00
scroggo
d06920a29f
Fixes for SkRWBuffer
...
Do not call SkBufferHead::validate in SkROBuffer's destructor, which
may be called in a separate thread from SkRWBuffer::append. validate()
reads SkBufferBlock::fUsed, and append() writes to it, resulting in
a data race.
Update some comments to be more clear about how it is safe to use
these classes across threads.
Test the readers in separate threads.
In addition, make sure it is safe to create a reader even when no
data has been appended. Add tests for this case.
Mark a parameter to SkBufferHead::validate() as const, reflecting
its use.
BUG=chromium:601578
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871953002
Review URL: https://codereview.chromium.org/1871953002
2016-04-14 11:40:48 -07:00
bungeman
a821af8389
Put SkEmptyTypeface in anonymous namespace.
...
We ended up with two SkEmptyTypefaces it differnt places. Avoid this odr
violation by sticking these in anonymous namespaces.
Review URL: https://codereview.chromium.org/1887093002
2016-04-14 09:44:34 -07:00
bungeman
82a455f0e9
Remove requestedStyle from SkTypefaceCache.
...
The typeface cache contains typefaces which can be compared against to
determine if an already known typeface will work instead of creating a
new typeface id. This is primarily for sharing scaler contexts. How that
typeface was requested is not relevant to this comparison, so don't cache
it. Request caching must be handled separately.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1879423002
Review URL: https://codereview.chromium.org/1879423002
2016-04-14 08:04:45 -07:00
bsalomon
7e68ab7318
Remove GrTextureStorageAllocator. This was added from Chromium but never used and not expected to be used.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1886613003
Review URL: https://codereview.chromium.org/1886613003
2016-04-13 14:29:25 -07:00
robertphillips
dada4dd9cf
Switch SkMatrixConvolutionImageFilter over to new onFilterImage interface
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1877343002
Review URL: https://codereview.chromium.org/1877343002
2016-04-13 04:54:36 -07:00
bsalomon
68d9134bec
Make more unit tests run on Vulkan
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1885623002
Review URL: https://codereview.chromium.org/1885623002
2016-04-12 09:59:58 -07:00
reed
a9322c2d86
Revert "Revert of Pass effects directly to fontcache (patchset #8 id:140001 of https://codereview.chromium.org/1863013003/ )"
...
add SK_SUPPORT_NEW_ONCREATESCALERCONTEXT for chrome
this has now landed https://codereview.chromium.org/1878913002/
TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1880873002
Review URL: https://codereview.chromium.org/1880873002
2016-04-12 06:47:05 -07:00
bsalomon
fda880710c
Convert some unit tests from running on GL contexts to running on all contexts
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1873313002
Review URL: https://codereview.chromium.org/1873313002
2016-04-11 14:40:50 -07:00
bsalomon
dc0fcd41e7
Vulkan config in dm
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1872283003
Review URL: https://codereview.chromium.org/1872283003
2016-04-11 14:21:33 -07:00
senorblanco
21a465d7f4
Ensure all image filter tests have "ImageFilter" somewhere in the name.
...
This is for convenience, so that running
out/Release/dm --match ImageFilter runs them all.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1879553004
Review URL: https://codereview.chromium.org/1879553004
2016-04-11 11:58:39 -07:00
borenet
25e0a0416e
Revert of Pass effects directly to fontcache (patchset #8 id:140001 of https://codereview.chromium.org/1863013003/ )
...
Reason for revert:
Seems to have broken the DEPS roll.
Original issue's description:
> Pass effects directly to fontcache
>
> BUG=skia:5176
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003
>
> Committed: https://skia.googlesource.com/skia/+/c79172857c3f69cc46837e1beeae0c1ead377bb2
TBR=djsollen@google.com ,bungeman@google.com,mtklein@google.com,fmalita@chromium.org,msarett@google.com,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5176
Review URL: https://codereview.chromium.org/1872253004
2016-04-11 10:25:28 -07:00
reed
c79172857c
Pass effects directly to fontcache
...
BUG=skia:5176
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1863013003
Review URL: https://codereview.chromium.org/1863013003
2016-04-11 07:51:07 -07:00
robertphillips
12fa47d33f
Update LightingImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1869763002
Review URL: https://codereview.chromium.org/1869763002
2016-04-08 16:28:09 -07:00
herb
42da45d399
Fix context size for benchmakr.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871173002
Review URL: https://codereview.chromium.org/1871173002
2016-04-08 14:24:37 -07:00
herb
9e0efe57ac
Add clone to Stage. Rename place to mix and PolymorphicUnion to Stage. Cleanup.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1877483002
Review URL: https://codereview.chromium.org/1877483002
2016-04-08 13:25:28 -07:00
reed
377add7426
Fix race condition in SkROBuffer.
...
SkBufferBlock::fUsed may be updated by the writer while a reader is
attempting to read it.
BUG=chromium:601578
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1872853002
Review URL: https://codereview.chromium.org/1872853002
2016-04-08 12:47:14 -07:00
robertphillips
646125114b
Upgrade SkSpecialImage to have getTextureRef & getROPixels entry points
...
This more closely aligns the SkSpecialImage API with the SkImage API. In doing so it allows the image filters to handle SkImages that can sneak through while remaining encoded (e.g., if an input filter just returns a wrapped version of the source SkImage)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1861643003
Review URL: https://codereview.chromium.org/1861643003
2016-04-08 12:10:42 -07:00
robertphillips
ef6a47b4af
Update MatrixConvolutionImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1869833002
Review URL: https://codereview.chromium.org/1869833002
2016-04-08 08:01:20 -07:00
bungeman
2c4bd0798e
Convert SkRefCnt to std::atomic.
...
This enables removing the more complicated atomic shims from SkAtomics.h.
TBR=reed
This doesn't actually change any API.
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN-Trybot,Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Release-TSAN-Trybot
Review URL: https://codereview.chromium.org/1867863002
2016-04-08 06:58:52 -07:00
benjaminwagner
70f1a6c64e
Add pinned versions of *ToFixed.
...
BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1707023002
Review URL: https://codereview.chromium.org/1707023002
2016-04-07 09:23:12 -07:00
robertphillips
73add93a9c
Appease valgrind wrt testing code initialization
...
The new swarming valgrind bot appears to be higher maintenance. These changes seem harmless and will, hopefully, unblock the bot.
TBR=bsalomon@google.com
https://build.chromium.org/p/client.skia.fyi/builders/Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-SwarmingValgrind/builds/57
BUG=skia:5164
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1867053002
Review URL: https://codereview.chromium.org/1867053002
2016-04-07 09:01:20 -07:00
benjaminwagner
6c71e0a065
Reverse dependency between SkScalar.h and SkFixed.h.
...
The following are unused in Chromium, Android, Mozilla, and Google3:
- SkFixedToScalar
- SkScalarToFixed
The following are additionally unused in Skia:
- SkStrAppendFixed
- SkWriteBuffer::writeFixed
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1841123002
Review URL: https://codereview.chromium.org/1841123002
2016-04-07 08:49:31 -07:00
bsalomon
758586c7f1
Make existing unit tests only run on GL contexts
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1869503002
Review URL: https://codereview.chromium.org/1869503002
2016-04-06 14:02:39 -07:00
robertphillips
c416912da4
Update DropShadowImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1861843002
Review URL: https://codereview.chromium.org/1861843002
2016-04-06 08:40:59 -07:00
robertphillips
ae8c933ca8
Update SkMatrixImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1858353002
Review URL: https://codereview.chromium.org/1858353002
2016-04-05 15:09:00 -07:00
bsalomon
f2f1c17e33
One signature for creating unit tests that run on premade GrContexts
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1860593002
Review URL: https://codereview.chromium.org/1860593002
2016-04-05 12:59:06 -07:00
robertphillips
8c0326df5f
Update SkXfermodeImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852123002
Committed: https://skia.googlesource.com/skia/+/3bc969264d4720d67f0b137552b3777a03b431a8
Review URL: https://codereview.chromium.org/1852123002
2016-04-05 12:48:34 -07:00
robertphillips
5605b56afa
Update SkColorFilterImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1858813002
Review URL: https://codereview.chromium.org/1858813002
2016-04-05 11:50:42 -07:00
bsalomon
85b4b53e78
Rename enums in GrContextFactory to remove "GL"
...
Also, remove kNative as a separate context type and instead make it an alias for kGL or kGLES based on OS.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1845923004
Committed: https://skia.googlesource.com/skia/+/2d9c6f81353597aebf5934547e5cba7a872196fb
Review URL: https://codereview.chromium.org/1845923004
2016-04-05 11:06:27 -07:00
bsalomon
f3261afed2
Remove 'native' context unit test macro.
...
The only test ran long is GLPrograms. I halved its iteration count to preserve the runtime on devices that support GL and GLES.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1855993002
Review URL: https://codereview.chromium.org/1855993002
2016-04-05 10:57:14 -07:00
robertphillips
fc11b0afe0
Update SkMorphology ImageFilters to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1860573002
Review URL: https://codereview.chromium.org/1860573002
2016-04-05 09:09:37 -07:00
bsalomon
b8797bb7b7
Add predfined configs for msaa4, nvpr4, nvpr4dit, and srgb that explictly use OpenGL rather than GLES and use them on the X1 bot
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1853103003
Committed: https://skia.googlesource.com/skia/+/74cb44dee50b5db94c1374cbcf0b0a1babd09d89
Review URL: https://codereview.chromium.org/1853103003
2016-04-05 08:49:38 -07:00
caryclark
5c5cfe24ef
give up if huge paths have unresolvable coincidence
...
This fuzzy test has enormous curves with coincidence runs that break numerics.
If the computed intersections identify that the span of coincidence has been deleted,
give up and return that the path op failed.
TBR=reed@google.com
BUG=597926
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1854333002
Review URL: https://codereview.chromium.org/1854333002
2016-04-05 07:28:48 -07:00
bsalomon
3b597388b3
Revert of Add predfined configs for msaa4, nvpr4, nvpr4dit, and srgb that explictly use OpenGL rather than GL… (patchset #3 id:40001 of https://codereview.chromium.org/1853103003/ )
...
Reason for revert:
causing crashes on win8 bot?
Original issue's description:
> Add predfined configs for msaa4, nvpr4, nvpr4dit, and srgb that explictly use OpenGL rather than GLES and use them on the X1 bot
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1853103003
>
> Committed: https://skia.googlesource.com/skia/+/74cb44dee50b5db94c1374cbcf0b0a1babd09d89
TBR=egdaniel@google.com ,jvanverth@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1857233002
2016-04-05 07:26:29 -07:00
bsalomon
74cb44dee5
Add predfined configs for msaa4, nvpr4, nvpr4dit, and srgb that explictly use OpenGL rather than GLES and use them on the X1 bot
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1853103003
Review URL: https://codereview.chromium.org/1853103003
2016-04-05 07:03:42 -07:00
senorblanco
6a93fa1a45
Fix failed filter followed by an affects-transparent-black filter.
...
When an upstream filter returns null, either through failure or clipping, a downstream affects-transparent-black
filter should still produce non-transparent pixels.
This patch fixes SkColorFilterImageFilter.
Note: this will affect the results of the imagefilterscropexpand GM.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1844593002
Review URL: https://codereview.chromium.org/1844593002
2016-04-05 04:43:45 -07:00
mtklein
3b37545bc5
Revert of Delete SkFlattenable::Type (patchset #2 id:20001 of https://codereview.chromium.org/1834303003/ )
...
Reason for revert:
Used by Chrome.
c:\b\build\slave\workdir\build\src\cc\playback\compositing_display_item.cc(53): error C2039: 'GetFlattenableType': is not a member of 'SkColorFilter'
c:\b\build\slave\workdir\build\src\third_party\skia\include\core\skshader.h(19): note: see declaration of 'SkColorFilter'
c:\b\build\slave\workdir\build\src\cc\playback\compositing_display_item.cc(53): error C3861: 'GetFlattenableType': identifier not found
Original issue's description:
> Delete SkFlattenable::Type
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1834303003
>
> Committed: https://skia.googlesource.com/skia/+/99d9231f6a4cb6b85b8637e9d8ae32f8bd7c466f
TBR=reed@google.com ,msarett@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1853383002
2016-04-04 14:57:19 -07:00
msarett
99d9231f6a
Delete SkFlattenable::Type
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1834303003
Review URL: https://codereview.chromium.org/1834303003
2016-04-04 13:53:02 -07:00
halcanary
3c4521a196
Fix ParseConfigs_OutParam tests
...
Review URL: https://codereview.chromium.org/1857923002
2016-04-04 12:14:46 -07:00
robertphillips
4ba94e2610
Switch internal testing ImageFilters over to new onFilterImage interface
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1854133002
Review URL: https://codereview.chromium.org/1854133002
2016-04-04 12:07:47 -07:00
reed
efdfd51b68
switch maskfilters to sk_sp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852113003
Review URL: https://codereview.chromium.org/1852113003
2016-04-04 10:02:58 -07:00
robertphillips
b591c77c37
Revert of Update SkXfermodeImageFilter to sk_sp (patchset #4 id:60001 of https://codereview.chromium.org/1852123002/ )
...
Reason for revert:
Chrome-land compilation failure.
Original issue's description:
> Update SkXfermodeImageFilter to sk_sp
>
> TBR=reed@google.com
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852123002
>
> Committed: https://skia.googlesource.com/skia/+/3bc969264d4720d67f0b137552b3777a03b431a8
TBR=fmalita@chromium.org ,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1852273002
2016-04-04 08:06:17 -07:00
robertphillips
3bc969264d
Update SkXfermodeImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852123002
Review URL: https://codereview.chromium.org/1852123002
2016-04-04 07:13:49 -07:00
halcanary
94b87bd404
DM/PDF: stop adding unused rasterizer keywords
...
We can always add it back if we need it in the future.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852713002
Review URL: https://codereview.chromium.org/1852713002
2016-04-04 06:12:15 -07:00
bsalomon
b4b4cf36c6
Revert of Rename enums in GrContextFactory to remove "GL" (patchset #4 id:60001 of https://codereview.chromium.org/1845923004/ )
...
Reason for revert:
Many GM images unexpectedly changed with this CL.
Original issue's description:
> Rename enums in GrContextFactory to remove "GL"
>
> Also, remove kNative as a separate context type and instead make it an alias for kGL or kGLES based on OS.
>
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1845923004
>
> Committed: https://skia.googlesource.com/skia/+/2d9c6f81353597aebf5934547e5cba7a872196fb
TBR=egdaniel@google.com ,jvanverth@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
Review URL: https://codereview.chromium.org/1856703002
2016-04-04 05:56:59 -07:00
robertphillips
43c2ad4e8f
Update internal testing ImageFilters to sk_sp
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1854023003
Review URL: https://codereview.chromium.org/1854023003
2016-04-04 05:05:11 -07:00
robertphillips
6e7025ab13
Update SkBlurImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852743002
Review URL: https://codereview.chromium.org/1852743002
2016-04-04 04:31:25 -07:00
reed
60c9b58b32
change flattenable factory to return sk_sp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1855733002
Review URL: https://codereview.chromium.org/1855733002
2016-04-03 09:11:13 -07:00
bsalomon
2d9c6f8135
Rename enums in GrContextFactory to remove "GL"
...
Also, remove kNative as a separate context type and instead make it an alias for kGL or kGLES based on OS.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1845923004
Review URL: https://codereview.chromium.org/1845923004
2016-04-01 13:38:05 -07:00
bsalomon
6e2aad4e9f
Add GrContext::releaseAndAbandonContext()
...
Like abandonContext() this disconnects the GrContext from the underlying 3D API. However, unlike abandonContext it first frees all allocated GPU resources.
BUG=skia:5142
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852733002
Review URL: https://codereview.chromium.org/1852733002
2016-04-01 11:54:31 -07:00
robertphillips
f624204300
Update SkAlphaThresholdFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1847053004
Review URL: https://codereview.chromium.org/1847053004
2016-04-01 10:34:43 -07:00
robertphillips
549c899195
Update SkImageSource to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842243002
Review URL: https://codereview.chromium.org/1842243002
2016-04-01 09:28:51 -07:00
bsalomon
342bfc25de
Simplify GrDrawBatch uploads and token uage.
...
GrVertexBatch subclasses no longer need "initDraw".
Simplifies GrTestBatch
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1835283002
Review URL: https://codereview.chromium.org/1835283002
2016-04-01 06:06:20 -07:00
bsalomon
273c0f5e87
rename sk_gpu_test::GLContext to sk_gpu_test::GLTestContext
...
rename subclasses
Fix up the EGL native GLTestContext
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1849463002
TBR=jvanverth@google.com
Committed: https://skia.googlesource.com/skia/+/4c7f0a16312c374eba4e8d5d46435ce9eb0b9971
Review URL: https://codereview.chromium.org/1849463002
2016-03-31 10:59:06 -07:00
bsalomon
3e4616ff10
Revert of rename sk_gpu_test::GLContext to sk_gpu_test::GLTestContext (patchset #5 id:80001 of https://codereview.chromium.org/1849463002/ )
...
Reason for revert:
breaking bots
Original issue's description:
> rename sk_gpu_test::GLContext to sk_gpu_test::GLTestContext
>
> rename subclasses
>
> Fix up the EGL native GLTestContext
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1849463002
>
> TBR=jvanverth@google.com
>
> Committed: https://skia.googlesource.com/skia/+/4c7f0a16312c374eba4e8d5d46435ce9eb0b9971
TBR=jvanverth@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1850543003
2016-03-31 10:22:40 -07:00
bsalomon
4c7f0a1631
rename sk_gpu_test::GLContext to sk_gpu_test::GLTestContext
...
rename subclasses
Fix up the EGL native GLTestContext
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1849463002
TBR=jvanverth@google.com
Review URL: https://codereview.chromium.org/1849463002
2016-03-31 10:07:24 -07:00
robertphillips
51a315eff9
Update SkOffsetImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842193002
Review URL: https://codereview.chromium.org/1842193002
2016-03-31 09:05:49 -07:00
kkinnunen
2ae4b2e95d
Fix Vulkan tests after GrContextFactory move to sk_gpu_test
...
Fix Vulkan tests after GrContextFactory move to sk_gpu_test
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1844983003
Review URL: https://codereview.chromium.org/1844983003
2016-03-31 08:08:20 -07:00
bsalomon
3724e574a7
Move SkGLContext and some GrGLInterface implementations to skgputest module
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1815823002
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
Committed: https://skia.googlesource.com/skia/+/fe3456cb006110d045b26ff3f8681b893a757b58
Review URL: https://codereview.chromium.org/1815823002
2016-03-30 18:56:20 -07:00
robertphillips
2238c9dbca
Update SkMergeImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1847583002
Review URL: https://codereview.chromium.org/1847583002
2016-03-30 13:34:17 -07:00
robertphillips
491fb17cab
Update SkComposeImageFilter to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1841233002
Review URL: https://codereview.chromium.org/1841233002
2016-03-30 12:32:58 -07:00
brianosman
61d3b08138
Enable gpusrgb config on bots.
...
Don't run the config if we can't get a context with srgb support.
Includes a unit test for that logic.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1846603002
Review URL: https://codereview.chromium.org/1846603002
2016-03-30 11:19:36 -07:00
robertphillips
6f70d43719
Revert of Move SkGLContext and some GrGLInterface implementations to skgputest module (patchset #13 id:240001 of https://codereview.chromium.org/1815823002/ )
...
Reason for revert:
red bots
Original issue's description:
> Move SkGLContext and some GrGLInterface implementations to skgputest module
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1815823002
> CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
>
> Committed: https://skia.googlesource.com/skia/+/fe3456cb006110d045b26ff3f8681b893a757b58
TBR=jvanverth@google.com ,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1845473004
2016-03-30 09:26:24 -07:00
bsalomon
fe3456cb00
Move SkGLContext and some GrGLInterface implementations to skgputest module
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1815823002
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
Review URL: https://codereview.chromium.org/1815823002
2016-03-30 08:35:09 -07:00
robertphillips
372177ee11
Switch SkLocalMatrixImageFilter and SkPaintImageFilter over to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842793002
Committed: https://skia.googlesource.com/skia/+/a33cf07a2273315363c0b6fb5d3ce811742f5a85
Review URL: https://codereview.chromium.org/1842793002
2016-03-30 07:32:28 -07:00
cdalton
c28afdb4ef
Add test configs for nvpr with atlas text
...
Adds nvpr4 and nvpr16, which use nvpr for paths and atlas for text.
Renames nvprmsaa4 and nvprmsaa16 to nvprdit4, nvprdit16. These use nvpr
for both paths and text.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1834693002
Review URL: https://codereview.chromium.org/1834693002
2016-03-29 20:05:08 -07:00
djsollen
890579051d
Revert of Switch SkLocalMatrixImageFilter and SkPaintImageFilter over to sk_sp (patchset #6 id:100001 of https://codereview.chromium.org/1842793002/ )
...
Reason for revert:
This CL is causing the autoroll into Chromium & google3 to fail.
Original issue's description:
> Switch SkLocalMatrixImageFilter and SkPaintImageFilter over to sk_sp
>
> TBR=reed@google.com
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842793002
>
> Committed: https://skia.googlesource.com/skia/+/a33cf07a2273315363c0b6fb5d3ce811742f5a85
TBR=fmalita@chromium.org ,reed@google.com,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1837293003
2016-03-29 19:07:07 -07:00
robertphillips
a33cf07a22
Switch SkLocalMatrixImageFilter and SkPaintImageFilter over to sk_sp
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842793002
Review URL: https://codereview.chromium.org/1842793002
2016-03-29 13:54:26 -07:00
reed
cfb6bdf767
switch xfermodes over to sk_sp
...
waiting on https://codereview.chromium.org/1835163002/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1832223002
Review URL: https://codereview.chromium.org/1832223002
2016-03-29 11:32:50 -07:00
halcanary
ffe54004b9
SkPDF: milestone in metadata, also SkMilestone.h
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1823753002
Review URL: https://codereview.chromium.org/1823753002
2016-03-29 09:09:29 -07:00
halcanary
9d524f22bf
Style bikeshed - remove extraneous whitespace
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842753002
Review URL: https://codereview.chromium.org/1842753002
2016-03-29 09:03:53 -07:00
robertphillips
5ff17b1352
Swap SkPictureImageFilter's factories over to smart pointers
...
A trial balloon before converting the rest
This requires https://codereview.chromium.org/1836443003/ (add SK_SUPPORT_LEGACY_IMAGEFILTER_PTR flag for future skia CL) to land in Chromium first
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1831323003
Review URL: https://codereview.chromium.org/1831323003
2016-03-28 13:13:42 -07:00
Brian Salomon
92271fc314
Don't crash when resource path is omitted
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1840573004
Review URL: https://codereview.chromium.org/1840573004 .
2016-03-25 21:38:09 -04:00
Brian Salomon
d2100f20a9
Don't crash when resource path isn't specified
...
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1838583002
BUG=skia:
Review URL: https://codereview.chromium.org/1838583002 .
2016-03-25 17:02:20 -04:00
benjaminwagner
ec4d4d784d
Change SkTime::GetMSecs to double; ensure values stored in SkMSec do not overflow.
...
The following are currently unused in Android, Google3, Chromium, and Mozilla:
- SkEvent
- SkTime::GetMSecs
- SK_TIME_FACTOR (also unused in Skia)
- SkAutoTime
I left uses of SkMSec more-or-less intact for SkEvent, SkAnimator, and SkInterpolator. SkInterpolator is used in Chromium, so I did not want to change the API. The views/ and animator/ code is crufty, so it didn't seem worthwhile to refactor it. Instead, I added SkEvent::GetMSecsSinceStartup, which is likely to be adequate for use in SampleApp.
I also left SkMSec where it is used to measure a duration rather than a timestamp. With the exception of SkMovie, which is used in Android, all of the uses appear to measure the execution time of a piece of code, which I would hope does not exceed 2^31 milliseconds.
Added skiatest::Timer to support a common idiom in tests where we want to measure the wallclock time in integer milliseconds. (Not used in tests/PathOpsSkpClipTest.cpp because it redefines things in Test.h.)
Removed tabs in tests/StrokerTest.cpp.
BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1811613004
Review URL: https://codereview.chromium.org/1811613004
2016-03-25 12:59:53 -07:00
brianosman
9cf31f40fb
SkMipMap::Build supports 1xN and Nx1 inputs, so remove the special case from the test harness. Update a no-longer-correct comment.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1831983003
Review URL: https://codereview.chromium.org/1831983003
2016-03-25 12:55:52 -07:00
reed
fe63045f07
move setshader to sk_sp, re-using SK_SUPPORT_LEGACY_CREATESHADER_PTR
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1829303002
Review URL: https://codereview.chromium.org/1829303002
2016-03-25 09:08:00 -07:00
halcanary
8d3ad5a122
images with offset bitmap don't share genid
...
BUG=skia:5096
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813793002
Review URL: https://codereview.chromium.org/1813793002
2016-03-24 09:18:14 -07:00
robertphillips
2302de920e
Switch new SkImageFilter internal methods over to sk_sp
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1826893002
Review URL: https://codereview.chromium.org/1826893002
2016-03-24 07:26:32 -07:00
reed
e8f3062a36
switch surface to sk_sp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1817383002
CQ_EXTRA_TRYBOTS=client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
Review URL: https://codereview.chromium.org/1817383002
2016-03-23 18:59:25 -07:00
senorblanco
297f7ce2bb
Make a generic list of filters for use in ImageFilterTests.
...
Factor list of image filters out of one test for re-use elsewhere.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1829913002
Review URL: https://codereview.chromium.org/1829913002
2016-03-23 13:44:27 -07:00
bsalomon
1d417a8738
Add unit test for vertex attribute count.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1826863002
Review URL: https://codereview.chromium.org/1826863002
2016-03-23 11:50:26 -07:00
tomhudson
734351d255
Publicly expose one accelerated swizzle.
...
SkOpts is intentionally internal, but we want to give Chrome access
to those pieces that would seriously benefit them.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822363002
Review URL: https://codereview.chromium.org/1822363002
2016-03-23 10:51:21 -07:00
herb
6eff52afb4
WIP: experimental bilerp pipeline.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1775963002
Review URL: https://codereview.chromium.org/1775963002
2016-03-23 09:00:33 -07:00
mtklein
0e05f38502
Sk4x4f
...
An API for loading and storing 4 Sk4f with transpose.
This has SSSE3+ and portable versions.
SSE2 and NEON versions to follow.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1825663002
Review URL: https://codereview.chromium.org/1825663002
2016-03-22 17:17:44 -07:00
robertphillips
4413e662a3
Remove SkPixmap::release
...
No longer need this for ImageFilters
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1821303002
Review URL: https://codereview.chromium.org/1821303002
2016-03-22 12:20:15 -07:00
mtklein
343a63d082
SkRecord: infer return type for visit() and mutate().
...
Review URL: https://codereview.chromium.org/1824983003
2016-03-22 11:46:53 -07:00
reed
d053ce9c54
Reland of [2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o … (patchset #1 id:1 of https://codereview.chromium.org/1821103004/ )
...
Reason for revert:
guard has now landed in chrome
Original issue's description:
> Revert of Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o … (patchset #3 id:40001 of https://codereview.chromium.org/1825073002/ )
>
> Reason for revert:
> CreateModeFilter not compiling
>
> Original issue's description:
> > Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.org/1822623002/ )"
> >
> > Fixed legacy withColorFilter to call new(er) make method
> >
> > This reverts commit 1eb81db650
.
> >
> > BUG=skia:
> > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1825073002
> >
> > TBR=
> >
> > Committed: https://skia.googlesource.com/skia/+/4c9776b046dd5e9e46e2d1ce35154855c8fcb381
>
> TBR=
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/d6889293dd0942f27f9593f679722c956831f2c4
TBR=
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:
Review URL: https://codereview.chromium.org/1827433002
2016-03-22 10:17:23 -07:00
reed
d6889293dd
Revert of Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o … (patchset #3 id:40001 of https://codereview.chromium.org/1825073002/ )
...
Reason for revert:
CreateModeFilter not compiling
Original issue's description:
> Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.org/1822623002/ )"
>
> Fixed legacy withColorFilter to call new(er) make method
>
> This reverts commit 1eb81db650
.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1825073002
>
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/4c9776b046dd5e9e46e2d1ce35154855c8fcb381
TBR=
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1821103004
2016-03-22 08:59:19 -07:00
reed
4c9776b046
Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.org/1822623002/ )"
...
Fixed legacy withColorFilter to call new(er) make method
This reverts commit 1eb81db650
.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1825073002
TBR=
Review URL: https://codereview.chromium.org/1825073002
2016-03-22 08:10:17 -07:00
reed
1eb81db650
Revert of switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.org/1822623002/ )
...
Reason for revert:
need to fix unguarded makeWithFilter
Original issue's description:
> switch colorfilters to sk_sp
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822623002
>
> Committed: https://skia.googlesource.com/skia/+/f809d7687a4fb7b88b651b046da2bc0035d6aa09
TBR=fmalita@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1820303002
2016-03-22 07:35:17 -07:00
reed
f809d7687a
switch colorfilters to sk_sp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1822623002
Review URL: https://codereview.chromium.org/1822623002
2016-03-22 07:23:24 -07:00
senorblanco
e5e79840ef
Change signatures of filter bounds methods to return a rect.
...
Change filterBounds(), onFilterBounds() and onFilterNodeBounds() and computeFastBounds() to
return the destination rectangle. There was no code path that could
return false, and returning rects by value is ok now.
BUG=skia:5094
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1823573003
Review URL: https://codereview.chromium.org/1823573003
2016-03-21 14:51:59 -07:00
halcanary
50e82e6176
SkPDF: SkPDFDocument reorganized so that some objects can be serialized early.
...
No change in output.
BUG=skia:5087
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1802033003
Review URL: https://codereview.chromium.org/1802033003
2016-03-21 13:45:05 -07:00
robertphillips
b4bd11e665
Update SkSpecialImage to be able to create tight SkImages and SkSurfaces
...
This calved off of: https://codereview.chromium.org/1810693003/ (Switch SkTileImageFilter over to new onFilterImage interface) since the TileImageFilter needs a tight bitmap/texture/image to perform its draw.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1816223002
Review URL: https://codereview.chromium.org/1816223002
2016-03-21 13:44:18 -07:00
reed
7b380d0d0e
guard rasterizer and drawlooper setters
...
Need to land https://codereview.chromium.org/1823513002/ first
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1821533002
Review URL: https://codereview.chromium.org/1821533002
2016-03-21 13:25:16 -07:00
mtklein
f8f90e4a85
SkNx refresh
...
- rearrange a bit
- fewer macros
- hooks for all operators
- add left and right scalar operator overrides
- add +=, &=, <<=, etc.
- add SkNx_split() and SkNx_join()
- simplify the many rsqrt() and invert() options to just what we actually use
This refactoring pointed out that our float <-> int NEON conversions are not specialized, so I've implemented them. It seems nice that this is an error rather than silently falling back to serial code.
It's unclear to me if split/join want to be external, static methods, or non-static methods (SkNx_join(), Sk4f::Join(), x.join()). Time will tell?
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1812233003
CQ_EXTRA_TRYBOTS=client.skia.android:Test-Android-GCC-Nexus5-CPU-NEON-Arm7-Release-Trybot;client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Review URL: https://codereview.chromium.org/1812233003
2016-03-21 10:04:46 -07:00
jbroman
17a652017a
Make SkComposeImageFilter::onFilterImage filter the bounds given to the inner filter.
...
Previously, the bounds requested by the caller would be passed to both the
inner and outer filter, but since the outer filter may move pixels, this is not
necessarily sufficient to supply the pixels required by the outer filter to fill
the bounds.
Unit test included.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813373002
Review URL: https://codereview.chromium.org/1813373002
2016-03-21 08:38:58 -07:00
msarett
0e6274f540
Parse icc profiles and exif orientation from jpeg markers
...
New resources should be fine to add since they are already
checked into chromium.
BUG=skia:3834
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813273002
Review URL: https://codereview.chromium.org/1813273002
2016-03-21 08:04:40 -07:00
brianosman
a635936588
sRGB support in Ganesh. Several pieces:
...
sRGB support now also requires GL_EXT_texture_sRGB_decode, which allows
us to disable sRGB -> Linear conversion when reading textures. This gives
us an easy way to support "legacy" L32 mode. We disable decoding based on
the pixel config of the render target. Textures can override that behavior
(specifically for format-conversion draws where we want that behavior).
Added sBGRA pixel config, which is not-really-a-format. It's just sRGBA
internally, and the external format is BGR order, so TexImage calls will
swizzle correctly. This lets us interact with sRGB raster surfaces on BGR
platforms.
Devices without sRGB support behave like they always have: conversion from
color type and profile type ignores sRGB and always returns linear pixel
configs.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1789663002
Review URL: https://codereview.chromium.org/1789663002
2016-03-21 06:55:37 -07:00
halcanary
2c9c469cc9
SkPDF: metadata first
...
Motivation: while experimenting with serializing images immediately, I would like to keep serializing metadata first.
TBR=djsollen@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1780463008
Review URL: https://codereview.chromium.org/1780463008
2016-03-20 07:07:11 -07:00
jvanverth
fd359caf0c
Implement Vulkan GrBackendObject for textures.
...
BUG=skia:5043
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1808263002
Review URL: https://codereview.chromium.org/1808263002
2016-03-18 11:57:24 -07:00
reed
a439334b6e
Reland of "switch patheffects over to sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1813553005/ )"
...
This reverts commit f28ad89427
.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813123003
TBR=
Review URL: https://codereview.chromium.org/1813123003
2016-03-18 11:22:57 -07:00
reed
f28ad89427
Revert of switch patheffects over to sk_sp (patchset #5 id:80001 of https://codereview.chromium.org/1813553005/ )
...
Reason for revert:
some build breaks, possibly related to paint having to know what a patheffect is
Original issue's description:
> switch patheffects over to sk_sp
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813553005
>
> Committed: https://skia.googlesource.com/skia/+/9fbee18f691a0afed1e38a851048ce06063505ed
TBR=caryclark@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1817543002
2016-03-18 10:17:27 -07:00
reed
9fbee18f69
switch patheffects over to sk_sp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813553005
Review URL: https://codereview.chromium.org/1813553005
2016-03-18 10:00:32 -07:00
robertphillips
83c17fa56b
Add SkSpecialImage::makeTextureImage entry point
...
This is calved off of: https://codereview.chromium.org/1785643003 (Switch SkBlurImageFilter over to new onFilterImage interface)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813813002
Committed: https://skia.googlesource.com/skia/+/05849018c85403a34b88819db1c4bcf713b70a2b
Review URL: https://codereview.chromium.org/1813813002
2016-03-18 08:14:27 -07:00
reed
ca2622ba05
return pictures as sk_sp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1811703002
Review URL: https://codereview.chromium.org/1811703002
2016-03-18 07:25:55 -07:00
caryclark
eb75c7db3a
allow one zero length dash
...
If the constructed stroke that represents a dash has a
single dash of length zero, and the end cap is square or
round, draw the cap.
The old code initialized the initial dash length to zero,
making it ambiguous whether the first length is zero or
not.
R=robertphillips@google.com
BUG=583299
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1805963002
Committed: https://skia.googlesource.com/skia/+/5e1a24808415df2748822e8082e21a361362cdfe
Review URL: https://codereview.chromium.org/1805963002
2016-03-18 06:04:26 -07:00
bungeman
92701ab783
Revert of Add SkSpecialImage::makeTextureImage entry point & update filterInput (patchset #3 id:40001 of https://codereview.chromium.org/1813813002/ )
...
Reason for revert:
Suspected cause of layout test css3/filters/effect-reference-tile-hw.htmlto crash.
https://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/83847/steps/webkit_tests%20%28with%20patch%29/logs/stdio
It could also be the previous change (but it appears this one depends on that one).
Original issue's description:
> Add SkSpecialImage::makeTextureImage entry point
>
> This is calved off of: https://codereview.chromium.org/1785643003 (Switch SkBlurImageFilter over to new onFilterImage interface)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813813002
>
> Committed: https://skia.googlesource.com/skia/+/05849018c85403a34b88819db1c4bcf713b70a2b
TBR=bsalomon@google.com ,senorblanco@google.com,senorblanco@chromium.org,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1811973005
2016-03-18 05:36:20 -07:00
bungeman
6f0749cfc7
Revert of allow one zero length dash (patchset #8 id:140001 of https://codereview.chromium.org/1805963002/ )
...
Reason for revert:
Causes the dash bench to crash.
Example crash:
https://build.chromium.org/p/client.skia/builders/Perf-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release/builds/5581/steps/nanobench/logs/stdio
Original issue's description:
> allow one zero length dash
>
> If the constructed stroke that represents a dash has a
> single dash of length zero, and the end cap is square or
> round, draw the cap.
>
> The old code initialized the initial dash length to zero,
> making it ambiguous whether the first length is zero or
> not.
>
> R=robertphillips@google.com
> BUG=583299
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1805963002
>
> Committed: https://skia.googlesource.com/skia/+/5e1a24808415df2748822e8082e21a361362cdfe
TBR=robertphillips@google.com ,reed@google.com,caryclark@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=583299
Review URL: https://codereview.chromium.org/1808303004
2016-03-18 05:10:23 -07:00
caryclark
5e1a248084
allow one zero length dash
...
If the constructed stroke that represents a dash has a
single dash of length zero, and the end cap is square or
round, draw the cap.
The old code initialized the initial dash length to zero,
making it ambiguous whether the first length is zero or
not.
R=robertphillips@google.com
BUG=583299
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1805963002
Review URL: https://codereview.chromium.org/1805963002
2016-03-18 04:44:23 -07:00
robertphillips
05849018c8
Add SkSpecialImage::makeTextureImage entry point
...
This is calved off of: https://codereview.chromium.org/1785643003 (Switch SkBlurImageFilter over to new onFilterImage interface)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1813813002
Review URL: https://codereview.chromium.org/1813813002
2016-03-17 15:15:58 -07:00
robertphillips
37bd7c3aca
Switch SkSpecialImage & SkSpecialSurface classes over to smart pointers
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1812023002
Review URL: https://codereview.chromium.org/1812023002
2016-03-17 14:31:39 -07:00
brianosman
c571c001ce
Revert of sRGB support in Ganesh. Several pieces: (patchset #12 id:220001 of https://codereview.chromium.org/1789663002/ )
...
Reason for revert:
We're getting sRGB non-8888 configs?
Original issue's description:
> sRGB support in Ganesh. Several pieces:
>
> sRGB support now also requires GL_EXT_texture_sRGB_decode, which allows
> us to disable sRGB -> Linear conversion when reading textures. This gives
> us an easy way to support "legacy" L32 mode. We disable decoding based on
> the pixel config of the render target. Textures can override that behavior
> (specifically for format-conversion draws where we want that behavior).
>
> Added sBGRA pixel config, which is not-really-a-format. It's just sRGBA
> internally, and the external format is BGR order, so TexImage calls will
> swizzle correctly. This lets us interact with sRGB raster surfaces on BGR
> platforms.
>
> Devices without sRGB support behave like they always have: conversion from
> color type and profile type ignores sRGB and always returns linear pixel
> configs.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1789663002
>
> Committed: https://skia.googlesource.com/skia/+/9e3f1bf4e5cd8fc59554f986f36d6b034e99f9eb
TBR=reed@google.com ,bsalomon@google.com,robertphillips@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1814533003
2016-03-17 13:01:26 -07:00
brianosman
9e3f1bf4e5
sRGB support in Ganesh. Several pieces:
...
sRGB support now also requires GL_EXT_texture_sRGB_decode, which allows
us to disable sRGB -> Linear conversion when reading textures. This gives
us an easy way to support "legacy" L32 mode. We disable decoding based on
the pixel config of the render target. Textures can override that behavior
(specifically for format-conversion draws where we want that behavior).
Added sBGRA pixel config, which is not-really-a-format. It's just sRGBA
internally, and the external format is BGR order, so TexImage calls will
swizzle correctly. This lets us interact with sRGB raster surfaces on BGR
platforms.
Devices without sRGB support behave like they always have: conversion from
color type and profile type ignores sRGB and always returns linear pixel
configs.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1789663002
Review URL: https://codereview.chromium.org/1789663002
2016-03-17 12:26:37 -07:00
jbroman
0e3129d734
Fix pointer aliasing bug in SkImageFilter::computeFastBounds.
...
Since src and dst are explicitly allowed to alias (according to a comment in
SkPaint.h), it is problematic to have the first input filter mutate dst, since
we still need access to the previous value to provide to the other input
filters.
To resolve this, SkImageFilter::computeFastBounds makes a copy of src on the
stack, and passes that to its inputs instead.
Also add a unit test that would have detected the issue.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1800263002
Review URL: https://codereview.chromium.org/1800263002
2016-03-17 12:24:23 -07:00
reed
9ce9d6772d
update callsites for Make image factories
...
not forced yet, as we still have the build-guard. waiting on chrome CL
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1810813003
TBR=
Review URL: https://codereview.chromium.org/1810813003
2016-03-17 10:51:11 -07:00
robertphillips
c5035e70cc
Add SkSpecialImage::extractSubset & NewFromPixmap
...
This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)
This now relies on: https://codereview.chromium.org/1813483002/ (ImagePixelLocker now manually allocates SkPixmap) to clean up the uses of SkAutoPixmapStorage in Chromium
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1787883002
Committed: https://skia.googlesource.com/skia/+/250581493a0859987e482810879e85e5ac2dc002
Review URL: https://codereview.chromium.org/1787883002
2016-03-17 06:58:39 -07:00
senorblanco
bf680c30a2
Image filters: fix the zero-sigma fast path in SkBlurImageFilter.
...
The fast path was not correctly taking the input srcOffset into account.
BUG=595324
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1807673005
Review URL: https://codereview.chromium.org/1807673005
2016-03-16 16:15:53 -07:00
mtklein
18300a3aa7
detach -> release
...
The C++ standard library uses the name "release" for the operation we call "detach".
Rewriting each "detach(" to "release(" brings us a step closer to using standard library types directly (e.g. std::unique_ptr instead of SkAutoTDelete).
This was a fairly blind transformation. There may have been unintentional conversions in here, but it's probably for the best to have everything uniformly say "release".
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1809733002
Review URL: https://codereview.chromium.org/1809733002
2016-03-16 13:53:35 -07:00
robertphillips
19dea94f1d
Revert of Add SkSpecialImage::extractSubset & NewFromPixmap (patchset #5 id:80001 of https://codereview.chromium.org/1787883002/ )
...
Reason for revert:
Need to wean ImagePixelLocker.h off of SkAutoPixmapStorage :(
Original issue's description:
> Add SkSpecialImage::extractSubset & NewFromPixmap
>
> This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1787883002
>
> Committed: https://skia.googlesource.com/skia/+/250581493a0859987e482810879e85e5ac2dc002
TBR=bsalomon@google.com ,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1808833002
2016-03-16 10:39:09 -07:00
mtklein
5f939ab658
Use std::unique_ptr.
...
TBR=reed@google.com
Committed: https://skia.googlesource.com/skia/+/20c1e3abfc681771f73eb19fde7284196e028940
Committed: https://skia.googlesource.com/skia/+/3dd9ed37c24611af86f0fe374bd3698b63f09450
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1780933003
Committed: https://skia.googlesource.com/skia/+/2691d76a06e1af6282f8b3a3140cc93361be10c4
Review URL: https://codereview.chromium.org/1780933003
2016-03-16 10:28:35 -07:00
mtklein
e7ec417268
Revert of Use std::unique_ptr. (patchset #10 id:170001 of https://codereview.chromium.org/1780933003/ )
...
Reason for revert:
aww jeez, I dropped ps 8...
Original issue's description:
> Use std::unique_ptr.
>
> TBR=reed@google.com
>
> Committed: https://skia.googlesource.com/skia/+/20c1e3abfc681771f73eb19fde7284196e028940
>
> Committed: https://skia.googlesource.com/skia/+/3dd9ed37c24611af86f0fe374bd3698b63f09450
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1780933003
>
> Committed: https://skia.googlesource.com/skia/+/2691d76a06e1af6282f8b3a3140cc93361be10c4
TBR=bungeman@google.com ,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1809693002
2016-03-16 10:03:15 -07:00
robertphillips
250581493a
Add SkSpecialImage::extractSubset & NewFromPixmap
...
This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1787883002
Review URL: https://codereview.chromium.org/1787883002
2016-03-16 09:47:08 -07:00
mtklein
2691d76a06
Use std::unique_ptr.
...
TBR=reed@google.com
Committed: https://skia.googlesource.com/skia/+/20c1e3abfc681771f73eb19fde7284196e028940
Committed: https://skia.googlesource.com/skia/+/3dd9ed37c24611af86f0fe374bd3698b63f09450
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1780933003
Review URL: https://codereview.chromium.org/1780933003
2016-03-16 08:39:42 -07:00
reed
1a9b964084
Reland of "more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )"
...
This reverts commit 9283d20afc
.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1793303002
Review URL: https://codereview.chromium.org/1793303002
2016-03-13 14:13:58 -07:00
reed
9283d20afc
Revert of more shader-->sp conversions (patchset #5 id:80001 of https://codereview.chromium.org/1789633002/ )
...
Reason for revert:
seems to have changed pictureshadertile
Original issue's description:
> more shader-->sp conversions
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1789633002
>
> Committed: https://skia.googlesource.com/skia/+/ce563cdd48ec7ce4e0420dd88760df9be9dba50c
TBR=fmalita@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1790353002
2016-03-13 13:01:57 -07:00
reed
ce563cdd48
more shader-->sp conversions
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1789633002
Review URL: https://codereview.chromium.org/1789633002
2016-03-13 12:32:36 -07:00
reed
fde05114e6
Make sp variants for SkData
...
Review URL: https://codereview.chromium.org/1779263003
2016-03-11 13:02:28 -08:00
cdalton
9c3f14327a
Add support for vertex and geometry shader textures
...
Adds a visibility bitfield to GrTextureAccess that controls in which
shaders the texture should be accessible. Also adds caps and
validation to ensure we don't exceed texture limits.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1782583002
Review URL: https://codereview.chromium.org/1782583002
2016-03-11 10:07:37 -08:00
bsalomon
41b952c296
Add deferred texture upload API.
...
Performs thread-safe decoding of SkImage in order to later create a texture-backed SkImage.
The client allocates storage for the data.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1776693002
Review URL: https://codereview.chromium.org/1776693002
2016-03-11 06:46:33 -08:00
mtklein
218c846ac0
Revert of Use std::unique_ptr. (patchset #8 id:130001 of https://codereview.chromium.org/1780933003/ )
...
Reason for revert:
Another Android ambiguity due to implicit bool...
frameworks/base/core/jni/android/graphics/Utils.cpp:110:35: error: call of overloaded 'SkMemoryStream(SkAutoTUnref<SkData>&)' is ambiguous
return new SkMemoryStream(data);
Original issue's description:
> Use std::unique_ptr.
>
> TBR=reed@google.com
>
> Committed: https://skia.googlesource.com/skia/+/20c1e3abfc681771f73eb19fde7284196e028940
>
> Committed: https://skia.googlesource.com/skia/+/3dd9ed37c24611af86f0fe374bd3698b63f09450
TBR=bungeman@google.com ,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1785353002
2016-03-11 06:10:30 -08:00
mtklein
3dd9ed37c2
Use std::unique_ptr.
...
TBR=reed@google.com
Committed: https://skia.googlesource.com/skia/+/20c1e3abfc681771f73eb19fde7284196e028940
Review URL: https://codereview.chromium.org/1780933003
2016-03-11 05:18:48 -08:00
mtklein
977c07dad2
Revert of Use std::unique_ptr. (patchset #7 id:120001 of https://codereview.chromium.org/1780933003/ )
...
Reason for revert:
Now we remember! The problem was Clank:
https://build.chromium.org/p/tryserver.chromium.android/builders/android_clang_dbg_recipe/builds/34329
Original issue's description:
> Use std::unique_ptr.
>
> TBR=reed@google.com
>
> Committed: https://skia.googlesource.com/skia/+/20c1e3abfc681771f73eb19fde7284196e028940
TBR=bungeman@google.com ,mtklein@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1782973002
2016-03-10 11:31:27 -08:00
mtklein
20c1e3abfc
Use std::unique_ptr.
...
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1780933003
2016-03-10 10:10:03 -08:00
brianosman
8e47881281
Remove anglesrgb config test - that config was removed.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1778413002
Review URL: https://codereview.chromium.org/1778413002
2016-03-10 09:47:57 -08:00
brianosman
d93c120852
Added (color=8888|f16|srgb) option to gpu configurations, along with gpuf16 and gpusrgb predefined configs. Runs the gpu backend in gamma-correct mode (with either FP16 linear or sRGB 8888 frambuffers).
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1750383002
Committed: https://skia.googlesource.com/skia/+/a6f58194733c1c50e4fe5f98585e42344f29b6f0
Review URL: https://codereview.chromium.org/1750383002
2016-03-10 07:49:08 -08:00
bsalomon
e6d665e24f
Fix readback of 565 on Mac and enable tests
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1778143003
Review URL: https://codereview.chromium.org/1778143003
2016-03-10 07:22:25 -08:00
reed
150835e779
sk_sp versions of newWithColorFilter and newWithLocalMatrix
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1782703002
Review URL: https://codereview.chromium.org/1782703002
2016-03-10 06:36:49 -08:00
msarett
4984c3c95f
Update Skia's YUV API
...
We should match the recently designed API in SkCodec.
https://codereview.chromium.org/1549473003/
This requires changes in Chromium as well.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716523002
Committed: https://skia.googlesource.com/skia/+/095d31c8a0eeb5d491febf064bc3c8a44e22b94f
Review URL: https://codereview.chromium.org/1716523002
2016-03-10 05:44:43 -08:00
bsalomon
0d996868c3
Restore SkImage::NewTextureFromPixmap changes.
...
6ceeebd37a
contained the fix for the issues that prompted the revert (index8 bitmaps weren't drawing).
Revert "TBR=robertphillips@google.com"
This reverts commit 236640872f
.
TBR=
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1775263004
Review URL: https://codereview.chromium.org/1775263004
2016-03-09 18:44:43 -08:00
reed
1cb3646add
un-restore test, as bug is not fixed
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1783633002
TBR=
Review URL: https://codereview.chromium.org/1783633002
2016-03-09 15:21:32 -08:00
bsalomon
236640872f
TBR=robertphillips@google.com
...
Revert "Add SkImage::NewTextureFromPixmap"
This reverts commit 045afea979
.
Revert "Fix Mac bots because of failing readback of 565"
This reverts commit e344b26a7d
.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1777863003
Review URL: https://codereview.chromium.org/1777863003
2016-03-09 14:50:15 -08:00
reed
5671c5b912
SkImage now has makeShader to return sk_sp
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1785473002
Review URL: https://codereview.chromium.org/1785473002
2016-03-09 14:47:34 -08:00
reed
6ceeebd37a
unify peekPixels around pixmap parameter
...
requires this chrome CL to land first
https://codereview.chromium.org/1775393003/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1784563002
Review URL: https://codereview.chromium.org/1784563002
2016-03-09 14:26:26 -08:00
Brian Salomon
e344b26a7d
Fix Mac bots because of failing readback of 565
...
TBR=robertphillips@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1784553003
Review URL: https://codereview.chromium.org/1784553003 .
2016-03-09 16:27:49 -05:00
bsalomon
045afea979
Add SkImage::NewTextureFromPixmap
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1776913003
Review URL: https://codereview.chromium.org/1776913003
2016-03-09 11:31:18 -08:00
robertphillips
6ac97b7eb9
Switch SkImageSource image filter over to new onFilterImage interface
...
This CL relies on: https://codereview.chromium.org/1762013002/ (Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated)
TBR=bsalomon@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1772933002
Review URL: https://codereview.chromium.org/1772933002
2016-03-09 05:17:10 -08:00
halcanary
8103a34300
SkPDF: Add sk_sp setters; .release() becomes std::move()
...
Note to reviewers: Start with changes to SkPDFTypes.h
Many places that had a bare pointer owning a reference are refactored to
use a sk_sp.
There remain several places where a non-owning pointer `T*` should be
replaced with `const sk_sp<T>&` to eliminate the common pattern
`sk_sp<T>(SkRef(x))`.
Committed: https://skia.googlesource.com/skia/+/9904c9212074279380e21f96575078734dbbd308
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1775043002
Review URL: https://codereview.chromium.org/1775043002
2016-03-08 15:10:16 -08:00
halcanary
51d04d3c17
Revert of SkPDF: Add sk_sp setters; .release() becomes std::move() (patchset #2 id:20001 of https://codereview.chromium.org/1775043002/ )
...
Reason for revert:
https://build.chromium.org/p/client.skia/builders/Linux%20Builder/builds/6405/steps/compile/logs/stdio
Original issue's description:
> SkPDF: Add sk_sp setters; .release() becomes std::move()
>
> Note to reviewers: Start with changes to SkPDFTypes.h
>
> Many places that had a bare pointer owning a reference are refactored to
> use a sk_sp.
>
> There remain several places where a non-owning pointer `T*` should be
> replaced with `const sk_sp<T>&` to eliminate the common pattern
> `sk_sp<T>(SkRef(x))`.
>
> Committed: https://skia.googlesource.com/skia/+/9904c9212074279380e21f96575078734dbbd308
TBR=bungeman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1775143002
2016-03-08 13:03:55 -08:00
reed
647cc84748
Add sk_ref_sp helper function.
...
Review URL: https://codereview.chromium.org/1773943004
2016-03-08 12:54:48 -08:00
halcanary
9904c92120
SkPDF: Add sk_sp setters; .release() becomes std::move()
...
Note to reviewers: Start with changes to SkPDFTypes.h
Many places that had a bare pointer owning a reference are refactored to
use a sk_sp.
There remain several places where a non-owning pointer `T*` should be
replaced with `const sk_sp<T>&` to eliminate the common pattern
`sk_sp<T>(SkRef(x))`.
Review URL: https://codereview.chromium.org/1775043002
2016-03-08 12:38:22 -08:00
reed
93bb080503
make pm4f be RGBA always, not pmcolor order
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1774523002
Review URL: https://codereview.chromium.org/1774523002
2016-03-08 10:09:18 -08:00
bungeman
c901c11549
Add element_type, swap, operators, fix reset on sk_sp.
...
The 'element_type' typedef is to play nice with std::pointer_traits.
The full complement of operators and swap to match unique_ptr so that
sk_sp can be properly compared to nullptr and used with standard
containers.
Update to 'reset' so that calling 'unref' is the last operation.
This also adds tests for these changes, and sets the fPtr to nullptr
in debug for easier bug finding.
Review URL: https://codereview.chromium.org/1773453002
2016-03-08 08:35:23 -08:00
msarett
53add95b2e
Disable color space test for old versions of libpng
...
Should fix the Google3 build.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1769953002
Review URL: https://codereview.chromium.org/1769953002
2016-03-07 17:25:12 -08:00
robertphillips
4418dbac33
Swap over to using SkImageFilter::filterImage instead of filterImageDeprecated
...
This CL relies on https://codereview.chromium.org/1757983002/ (Add SkSpecialImage-based methods to SkImageFilter)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1762013002
TBR=bsalomon@google.com
Review URL: https://codereview.chromium.org/1762013002
2016-03-07 12:45:14 -08:00
mtklein
71aca54991
add virtual ~Effect()
...
Today we make an sk_sp<Effect> from an sk_sp<EffectImpl>.
But when the sk_sp<Effect> dies, it calls ~Effect(), not ~EffectImpl().
Making ~Effect() virtual fixes this.
This should make our Google3 tests sized-delete clean, unblocking those folks.
Review URL: https://codereview.chromium.org/1769093002
2016-03-07 12:28:17 -08:00
herb
c60fee0f15
Rework files and add test cases.
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1757193002
Review URL: https://codereview.chromium.org/1757193002
2016-03-07 09:17:47 -08:00
msarett
1590f3b328
Revert of Update Skia's YUV API (patchset #5 id:160001 of https://codereview.chromium.org/1716523002/ )
...
Reason for revert:
Blimp failures with manual roll in Chrome.
Original issue's description:
> Update Skia's YUV API
>
> We should match the recently designed API in SkCodec.
> https://codereview.chromium.org/1549473003/
>
> This requires changes in Chromium as well.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716523002
>
> Committed: https://skia.googlesource.com/skia/+/095d31c8a0eeb5d491febf064bc3c8a44e22b94f
TBR=scroggo@google.com ,reed@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1775493002
2016-03-07 09:16:52 -08:00
msarett
095d31c8a0
Update Skia's YUV API
...
We should match the recently designed API in SkCodec.
https://codereview.chromium.org/1549473003/
This requires changes in Chromium as well.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1716523002
Review URL: https://codereview.chromium.org/1716523002
2016-03-07 08:39:12 -08:00
reed
941da9d661
Fix behavior of sk_sp::reset(T*) and add unittest.
...
Previously, sk_sp::reset(T* t) did not release its own reference
if its internal pointer was the same as 't'. This leaks a reference.
Now always release the current reference when non-nullptr.
Review URL: https://codereview.chromium.org/1767983002
2016-03-06 13:54:00 -08:00
halcanary
ffa39e02bc
sk_sp: fix contravariant constructors
...
TBR=reed
This is obviously correct and needs to be fixed.
Review URL: https://codereview.chromium.org/1771583002
2016-03-05 08:30:28 -08:00
reed
f70b531daa
Move annotations to canvas virtual (patchset #8 id:140001 of https://codereview.chromium.org/1744103002/ )"
...
Need to land chrome change first https://codereview.chromium.org/1766723003/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1758023003
TBR=
Review URL: https://codereview.chromium.org/1758023003
2016-03-04 16:36:20 -08:00
msarett
6a738217ea
Set SkColorSpace object for PNGs and parse ICC profiles
...
Code for ICC profile parsing adapted from:
https://codereview.chromium.org/1707033002/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1726823002
Review URL: https://codereview.chromium.org/1726823002
2016-03-04 13:27:35 -08:00
reed
d882901576
Add support for new bitmapshader context (patchset #5 id:80001 of https://codereview.chromium.org/1757993002/ )"
...
This reverts commit cd660e1c07
.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1760123003
Review URL: https://codereview.chromium.org/1760123003
2016-03-04 11:07:43 -08:00
reed
a0cee5f30e
remove align16 calls in skhader context sizes. will handle this elsewhere as needed
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1768433003
TBR=
basically reverts previous CL, but keeps the create --> onCreate change
Review URL: https://codereview.chromium.org/1768433003
2016-03-04 07:38:12 -08:00
mtklein
862110042d
rewrite TArray test to not delete an SkSTArray via a SkTArray pointer.
...
This should decouple our thinking around SkTArray, SkSTArray, vector, allocators, etc. from getting sized-deleter clean.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1760933002
Review URL: https://codereview.chromium.org/1760933002
2016-03-03 09:48:53 -08:00
reed
cd660e1c07
Revert of add support for new bitmapshader context (patchset #5 id:80001 of https://codereview.chromium.org/1757993002/ )
...
Reason for revert:
oops, need to update bench to know about the large size needed for the new shader
Original issue's description:
> add support for new bitmapshader context
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1757993002
>
> Committed: https://skia.googlesource.com/skia/+/19cef56344b5a5f26f802d7be34c44af36b7e797
TBR=herb@google.com ,mtklein@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1763743002
2016-03-03 09:36:50 -08:00
reed
19cef56344
add support for new bitmapshader context
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1757993002
Review URL: https://codereview.chromium.org/1757993002
2016-03-03 09:16:22 -08:00
reed
1610835624
Revert of move annotations to canvas virtual (patchset #8 id:140001 of https://codereview.chromium.org/1744103002/ )
...
Reason for revert:
need to update unittest in blink:
FAILED: /b/build/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/WebKit/Source/core/page/webkit_unit_tests.PrintContextTest.o.d -DV8_DEPRECATION_WARNINGS -DCLD_VERSION=2 -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORE=0 -DCHROMIUM_BUILD -DCR_CLANG_REVISION=261368-1 -DCOMPONENT_BUILD -DUSE_LIBJPEG_TURBO=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS -DENABLE_TOPCHROME_MD=1 -DDCHECK_ALWAYS_ON=1 -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DUSE_BROWSER_SPELLCHECKER=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DBLINK_IMPLEMENTATION=1 -DINSIDE_BLINK -DMOJO_USE_SYSTEM_IMPL -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DCHROME_PNG_WRITE_SUPPORT -DPNG_USER_CONFIG -DENABLE_LAYOUT_UNIT_IN_INLINE_BOXES=0 -DWTF_USE_CONCATENATED_IMPULSE_RESPONSES=1 -DENABLE_INPUT_MULTIPLE_FIELDS_UI=1 -DWTF_USE_ICCJPEG=1 -DWTF_USE_QCMSLIB=1 -DENABLE_OILPAN=1 -DUNIT_TEST -DGTEST_HAS_RTTI=0 -DV8_SHARED -DUSING_V8_SHARED -DUSE_LIBPCI=1 -DUSE_OPENSSL=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -Igen -I../../third_party/WebKit/public/web -I../../third_party/WebKit/Source/web -I../../third_party/WebKit/Source/web/src -I../../third_party/WebKit/public/web/mac -I../.. -I../../skia/config -I../../third_party/WebKit/Source -I../../third_party/khronos -I../../gpu -Igen/angle -I../../third_party/WebKit -I../../skia/ext -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf -I../../third_party/skia/include/gpu -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/utils/mac -I../../third_party/icu/source/common -I../../third_party/npapi -I../../third_party/npapi/bindings -I../../third_party/libpng -I../../third_party/ots/include -I../../third_party/qcms/src -I../../third_party/iccjpeg -I../../third_party/libjpeg_turbo -I../../third_party/WebKit -I../../third_party/icu/source/i18n -I../../testing/gmock/include -I../../testing/gtest/include -I../../third_party/libwebp -I../../third_party/zlib -I../../v8/include -Igen/blink -isysroot /Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -O0 -fvisibility=hidden -Werror -mmacosx-version-min=10.6 -arch x86_64 -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-selector-type-mismatch -Wpartial-availability -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wexit-time-destructors -std=c++11 -stdlib=libc++ -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics -Xclang -load -Xclang /b/build/slave/mac/build/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -Xclang -plugin-arg-find-bad-constructs -Xclang follow-macro-expansion -fcolor-diagnostics -fno-strict-aliasing -Xclang -load -Xclang /b/build/slave/mac/build/src/third_party/llvm-build/Release+Asserts/lib/libBlinkGCPlugin.dylib -Xclang -add-plugin -Xclang blink-gc-plugin -Xclang -plugin-arg-blink-gc-plugin -Xclang enable-oilpan -Xclang -plugin-arg-blink-gc-plugin -Xclang warn-raw-ptr -fstack-protector-all -c ../../third_party/WebKit/Source/core/page/PrintContextTest.cpp -o obj/third_party/WebKit/Source/core/page/webkit_unit_tests.PrintContextTest.o
../../third_party/WebKit/Source/core/page/PrintContextTest.cpp:54:20: error: no member named 'getAnnotation' in 'SkPaint'
if (!paint.getAnnotation())
~~~~~ ^
Original issue's description:
> move annotations to canvas virtual
>
> In an effort to do it all at once, this change assumes that its ok to ignore annotations that were previously stored on paints in old SKP files (since this feature is only interesting to PDF printing).
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744103002
>
> Committed: https://skia.googlesource.com/skia/+/0eda2587cc9233066cb3f3fec08f35c061780f8e
TBR=halcanary@google.com ,fmalita@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1761793003
2016-03-03 09:14:36 -08:00
reed
0eda2587cc
move annotations to canvas virtual
...
In an effort to do it all at once, this change assumes that its ok to ignore annotations that were previously stored on paints in old SKP files (since this feature is only interesting to PDF printing).
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744103002
Review URL: https://codereview.chromium.org/1744103002
2016-03-03 08:13:54 -08:00
bungeman
beab9e7ba0
Add operator* and operator safe-bool to sk_sp.
...
This greatly reduces the need to use '.get()' in conditionals.
Review URL: https://codereview.chromium.org/1760453004
2016-03-03 07:50:49 -08:00
kkinnunen
f655e9330e
Revert of Implement support for using GL ES 3.0 with command buffer (patchset #6 id:100001 of https://codereview.chromium.org/1684413003/ )
...
Reason for revert:
The dependency, ES3 implementation in command_buffer_gles2, got reverted.
Original issue's description:
> Implement support for using GL ES 3.0 with command buffer
>
> Adds a new 'api': --config gpu(api=commandbuffer3) for dm/nanobench.
>
> BUG=skia:4943
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1684413003
>
> Committed: https://skia.googlesource.com/skia/+/45c2c8166bbd84a87e29fdd344b39e36e8a28a3f
TBR=bsalomon@google.com
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:4943
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1744963002
Review URL: https://codereview.chromium.org/1744963002
2016-03-03 07:39:49 -08:00
fmalita
5edf82e651
[Reland] Fix SkTwoPointConicalGradient zero-radius handling
...
r == 0 is within valid gradient range, we shouldn't skip it.
BUG=skia:5023
R=caryclark@google.com ,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1756573002
Committed: https://skia.googlesource.com/skia/+/9c0b02a557e9be663a0eb07519e1b6a61a6c3df2
Review URL: https://codereview.chromium.org/1756573002
2016-03-03 06:41:54 -08:00
reed
e2b0a0a034
update SkSmallAllocator to force internal allocations to be 16-byte aligned
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1755293002
Review URL: https://codereview.chromium.org/1755293002
2016-03-02 13:03:46 -08:00
robertphillips
391395dcfb
Begin weaning GrClipMaskManager off of GrDrawTarget (take 2)
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1754563003
Committed: https://skia.googlesource.com/skia/+/86c60758e9e4f9e203d7462cb22b2a245a0f51bd
Review URL: https://codereview.chromium.org/1754563003
2016-03-02 09:26:36 -08:00
robertphillips
8b8f36fc49
Revert of Begin weaning GrClipMaskManager off of GrDrawTarget (take 2) (patchset #7 id:120001 of https://codereview.chromium.org/1754563003/ )
...
Reason for revert:
fAuditTrail
Original issue's description:
> Begin weaning GrClipMaskManager off of GrDrawTarget (take 2)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1754563003
>
> Committed: https://skia.googlesource.com/skia/+/86c60758e9e4f9e203d7462cb22b2a245a0f51bd
TBR=joshualitt@chromium.org ,bsalomon@google.com,joshualitt@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1754353002
2016-03-02 08:53:12 -08:00
robertphillips
86c60758e9
Begin weaning GrClipMaskManager off of GrDrawTarget (take 2)
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1754563003
Review URL: https://codereview.chromium.org/1754563003
2016-03-02 08:43:13 -08:00
halcanary
cb6cb3841a
sk_sp: Covariant Move Constructor and Move Assignment
...
Also Covariant Copy Constructor, Copy Assignment,
and comparison operators.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1752093002
Review URL: https://codereview.chromium.org/1752093002
2016-03-02 08:11:26 -08:00
halcanary
217c0b3f13
sk_make_sp<T>()
...
because
auto atm = sk_make_sp<SkAdvancedTypefaceMetrics>();
is better than
sk_sp<SkAdvancedTypefaceMetrics> atm(new SkAdvancedTypefaceMetrics);
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1753973002
Review URL: https://codereview.chromium.org/1753973002
2016-03-02 08:06:20 -08:00
fmalita
7349490991
Revert of Fix SkTwoPointConicalGradient zero-radius handling (patchset #2 id:20001 of https://codereview.chromium.org/1756573002/ )
...
Reason for revert:
One layout test shows a regression: https://storage.googleapis.com/chromium-layout-test-archives/linux_blink_rel/83359/layout-test-results/fast/gradients/crash-on-zero-radius-diffs.html
Original issue's description:
> Fix SkTwoPointConicalGradient zero-radius handling
>
> r == 0 is within valid gradient range, we shouldn't skip it.
>
> BUG=skia:5023
> R=caryclark@google.com ,reed@google.com
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1756573002
>
> Committed: https://skia.googlesource.com/skia/+/9c0b02a557e9be663a0eb07519e1b6a61a6c3df2
TBR=caryclark@google.com ,reed@google.com,fmalita@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:5023
Review URL: https://codereview.chromium.org/1754113003
2016-03-02 06:34:24 -08:00
fmalita
9c0b02a557
Fix SkTwoPointConicalGradient zero-radius handling
...
r == 0 is within valid gradient range, we shouldn't skip it.
BUG=skia:5023
R=caryclark@google.com ,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1756573002
Review URL: https://codereview.chromium.org/1756573002
2016-03-01 14:28:27 -08:00
cblume
5b9ad7620b
Adding anisotropic mipmap levels to SkMipMap.
...
Adding 1x2, 1x3, 2x1, 3x1 filters to SkMipMap and enabling SkMipMap to generate anisotropic mip levels.
BUG=590804
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1750303002
Review URL: https://codereview.chromium.org/1750303002
2016-03-01 13:54:30 -08:00