Brian Salomon [Tue, 18 Aug 2015 16:46:51 +0000 (12:46 -0400)]
Add missing overrides to clear and discard batch dumpInfo()
TBR=joshualitt@google.com
Review URL: https://codereview.chromium.org/
1303533003
mtklein [Tue, 18 Aug 2015 16:43:28 +0000 (09:43 -0700)]
Patches on top of Radu's latest.
patch from issue
1273033005 at patchset 120001 (http://crrev.com/
1273033005#ps120001)
BUG=skia:
Review URL: https://codereview.chromium.org/
1288323004
bungeman [Tue, 18 Aug 2015 16:34:07 +0000 (09:34 -0700)]
Use portable code for family names with DirectWrite.
IDWriteFamily::GetFamilyNames appears to be 'helpful' and removes
parts of family names that look like style names. Since the iterator
is supposed to return the actual names and not just the name the
platform thinks the name is (as getFamilyName does), try returning
the raw names when possible.
BUG=skia:4217
Review URL: https://codereview.chromium.org/
1302573002
bsalomon [Tue, 18 Aug 2015 16:20:09 +0000 (09:20 -0700)]
Put clear and discard into GrBatch.
Review URL: https://codereview.chromium.org/
1293563003
mtklein [Tue, 18 Aug 2015 15:51:49 +0000 (08:51 -0700)]
Update BUILD.public a bit.
- SSE2 files are unfortunately now mixed-case, _SSE2 or _sse2.
- Adds lists for SSSE3 and SSE4 files.
- Remove SkDocument_PDF_None.cpp
- Remove a few more references to animator.
- Exclude private headers from HDRS.
- Formatting and notes.
BUG=skia:
Review URL: https://codereview.chromium.org/
1298003007
halcanary [Tue, 18 Aug 2015 15:35:45 +0000 (08:35 -0700)]
Clean up BUILD_simulator.py
Review URL: https://codereview.chromium.org/
1298813002
mtklein [Tue, 18 Aug 2015 15:29:59 +0000 (08:29 -0700)]
Deduplicate typefaces across sub-pictures
Old flow to serialize a picture:
1) serialize picture ops
2) serialize all sub pictures recursively
3) flatten the rest of this picture into a buffer, deduping flattenable factories and typefaces as we go
4) serialize the factories and typefaces
5) serialize the bytes from 3)
This allows the data in step 5) to refer to the deduplicated factories and typefaces from step 4). But, each sub picture in step 2) is completely siloed, so they can't dedup with the parent picture or each other.
New flow:
1) serialize picture ops
2) flatten the rest of this picture into a buffer, deduping flattenable factories and typefaces as we go
3) dummy-serialize sub pictures into /dev/null, with the effect of adding any new typefaces to our dedup set
4) serialize the factories and typefaces
5) serialize the bytes from 2)
6) serialize all sub pictures recursively, with perfect deduplication because of step 3).
Now all typefaces in the top-level picture and all sub pictures recursively should end up deduplicated in the top-level typeface set.
Decoding changes are similar: we just thread through the top-level typefaces to the sub pictures. What's convenient / surprising is that this new code correctly reads old pictures if we just have each picture prefer its local typeface set over the top-level one: old pictures always just use their own typefaces, and new pictures always use the top-level ones.
BUG=skia:4092
Review URL: https://codereview.chromium.org/
1233953004
msarett [Tue, 18 Aug 2015 15:03:58 +0000 (08:03 -0700)]
Prefer native scaling to sampling
In the cases we have come across so far, native scaling has better performance
and correctness than sampling. If native scaling is supported we want to use
it.
Jpegs native scale rounds up.
Ex: An 11x11 image with sampleSize=8 scales to 2x2.
SkScaledCodec rounds down.
Ex: An 11x11 image with sampleSize=8 scales to 1x1.
Before the CL, we would choose to use SkScaledCodec because it scales closer to
the "ideal" scale.
I think we want to go with the native option as long as its within 1 of the
ideal value.
BUG=skia:
Review URL: https://codereview.chromium.org/
1284243004
jvanverth [Tue, 18 Aug 2015 14:44:22 +0000 (07:44 -0700)]
Regenerate LCD text blobs if GrPaint's color changes, not SkPaint.
The GrPaint's color takes into account shaders and color filters, so is a
more accurate picture of the color state.
BUG=chromium:511787
Review URL: https://codereview.chromium.org/
1297053004
wangyix [Tue, 18 Aug 2015 14:39:33 +0000 (07:39 -0700)]
Made isEqual in GrFragmentProcessor recursive
Added comment about how computeInvariantOutput() is non-recursive in GrFragmentProcessor
Made isEqual() recursive in GrFragmentProcessor
BUG=skia:4182
Review URL: https://codereview.chromium.org/
1287343005
joshualitt [Tue, 18 Aug 2015 14:25:38 +0000 (07:25 -0700)]
GrAAFillRectBatch holds onto GrPipelineOptimizations
BUG=skia:
Review URL: https://codereview.chromium.org/
1301603004
wangyix [Tue, 18 Aug 2015 14:24:29 +0000 (07:24 -0700)]
Added class AutoFragmentChildProcAdvance to be constructed before a child emitCode and destructed after
Fixed wrong indent
Changed auto child advance back to backwards linear search for getting subset of coords and samplers array of a child
Used offset from parent instead of backwards linear search to find a child proc's coords and transforms in Auto...Advance
append mangleString to variable name in nameVariable()
BUILDS! Added AutoFragmentChildProcAdvance class; fixed a few errors from previous commits
BUG=skia:4182
Review URL: https://codereview.chromium.org/
1286293002
caryclark [Tue, 18 Aug 2015 14:12:43 +0000 (07:12 -0700)]
fix pathops fuzz failures
If a curve has the identical start and control points, the
initial or final tangent can't be trivally determined. The
perpendicular to the tangent is used to measure coincidence.
Add logic for cubics, quadratics, and conics, to use the
secondary control points or the end points if the initial
control point alone can't determine the tangent.
Add debugging (currently untriggered by exhaustive testing)
to detect zero-length tangents which are not at the curve
endpoints.
Increase the number of temporary intersecions gathered from
10 to 12 but reduce the max passed in by cubic intersection from
27 to 12. Also, add checks if the max passed exceeds the
storage allocated.
When cleaning up parallel lines, choose the intersection which
is on the end of both segments over the intersection which
is on the end of a single segment.
TBR=reed@google.com
BUG=425140,516266
Review URL: https://codereview.chromium.org/
1288863004
benjaminwagner [Tue, 18 Aug 2015 13:25:14 +0000 (06:25 -0700)]
Reland of Fix a few bugs in the google3 sync scripts. (patchset #1 id:1 of https://codereview.chromium.org/
1295213002/ )
Reason for revert:
Retry.
Original issue's description:
> Revert of Fix a few bugs in the google3 sync scripts. (patchset #1 id:1 of https://codereview.chromium.org/
1291343006/ )
>
> Reason for revert:
> MacMini buildbots were unable to apply the patch.
> fatal: Could not parse object '
18af0a0080cc2b2b3464292d35a0886cdade551f'.
> http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release/builds/1580
> http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Debug/builds/1474
> http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Release/builds/1566
> http://build.chromium.org/p/client.skia/builders/Perf-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Release/builds/1480
> http://build.chromium.org/p/client.skia/builders/Perf-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release/builds/1456
> http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug/builds/1364
>
>
> Original issue's description:
> > Fix a few bugs in the google3 sync scripts.
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/
18af0a0080cc2b2b3464292d35a0886cdade551f
>
> TBR=mtklein@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
e349d6b92574c1b0acdb4ba1ed8ff905ea830131
TBR=mtklein@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
1284093003
bsalomon [Tue, 18 Aug 2015 13:05:14 +0000 (06:05 -0700)]
Privatize GrBatch subclass overrides
Review URL: https://codereview.chromium.org/
1301663002
mtklein [Tue, 18 Aug 2015 12:51:56 +0000 (05:51 -0700)]
Remove a couple zombie pathops files.
These files don't compile and are not referenced by any GYP file.
BUG=skia:
Review URL: https://codereview.chromium.org/
1299773002
mtklein [Tue, 18 Aug 2015 12:18:52 +0000 (05:18 -0700)]
Remove SkOpts_sse2.cpp.
It's sort of pointless: all our clients that will have SSE2 at runtime have it
unconditionally at compile time, so the functions in namespace portable will
pick up the SSE2 code. The procs in SkOpts_sse2.o were just duplicate code.
A couple of the procs we had in _sse2.cpp can benefit slightly when compiled
with SSSE3. I've moved those to _ssse3.cpp. This should lead to small speedups
on platforms like Linux and Windows that have a baseline of SSE2.
Similarly, I've removed the call to Init_neon() when NEON is available globally... it's a no-op.
Renaming namespace portable to something clearer is TBD.
BUG=skia:4117
Review URL: https://codereview.chromium.org/
1294213002
reed [Tue, 18 Aug 2015 01:29:47 +0000 (18:29 -0700)]
Revert[8] "move some public headers into private"
This reverts commit
fb28cd2b13d76c324570341e1155aaadc1b532b6.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1298833002
robertphillips [Mon, 17 Aug 2015 22:04:47 +0000 (15:04 -0700)]
Move normal map creation methods to sk_tools
Split off of https://codereview.chromium.org/
1261433009/ (Add SkCanvas::drawLitAtlas call)
Review URL: https://codereview.chromium.org/
1298763002
mtklein [Mon, 17 Aug 2015 22:02:57 +0000 (15:02 -0700)]
Add a simple script to simulate BUILD file glob() expansion.
This lets us test changes to BUILD.public.
This is not yet automated in any way. My hope is to trigger it quietly via the presubmit for any CL that adds or removes a file, or changes BUILD.public.
BUG=skia:
Review URL: https://codereview.chromium.org/
1290833003
benjaminwagner [Mon, 17 Aug 2015 21:44:01 +0000 (14:44 -0700)]
Revert of Fix a few bugs in the google3 sync scripts. (patchset #1 id:1 of https://codereview.chromium.org/
1291343006/ )
Reason for revert:
MacMini buildbots were unable to apply the patch.
fatal: Could not parse object '
18af0a0080cc2b2b3464292d35a0886cdade551f'.
http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release/builds/1580
http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Debug/builds/1474
http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Release/builds/1566
http://build.chromium.org/p/client.skia/builders/Perf-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Release/builds/1480
http://build.chromium.org/p/client.skia/builders/Perf-Mac10.9-Clang-MacMini6.2-CPU-AVX-x86_64-Release/builds/1456
http://build.chromium.org/p/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug/builds/1364
Original issue's description:
> Fix a few bugs in the google3 sync scripts.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
18af0a0080cc2b2b3464292d35a0886cdade551f
TBR=mtklein@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
1295213002
benjaminwagner [Mon, 17 Aug 2015 21:23:03 +0000 (14:23 -0700)]
Fix a few bugs in the google3 sync scripts.
BUG=skia:
Review URL: https://codereview.chromium.org/
1291343006
benjaminwagner [Mon, 17 Aug 2015 19:58:10 +0000 (12:58 -0700)]
Add files added to Skia HEAD in google3 to the Git repo.
LICENSE is modified in google3 to mention some code copied from other projects.
BUG=skia:
Review URL: https://codereview.chromium.org/
1291603003
bsalomon [Mon, 17 Aug 2015 19:55:38 +0000 (12:55 -0700)]
Make GrVertexBatch objects hold their own draws during GrDrawTarget flush
NO_MERGE_BUILDS
Review URL: https://codereview.chromium.org/
1286043004
joshualitt [Mon, 17 Aug 2015 18:53:44 +0000 (11:53 -0700)]
Stop ping ponging AA in SkGpuDevice
BUG=skia:
Review URL: https://codereview.chromium.org/
1299703003
mtklein [Mon, 17 Aug 2015 18:15:00 +0000 (11:15 -0700)]
Revert of Depend on ETC1 via DEPS instead of a direct third_party checkin. (patchset #1 id:1 of https://codereview.chromium.org/
1296253003/ )
Reason for revert:
This will make the google3 roll awkward. Reverting.
Original issue's description:
> Depend on ETC1 via DEPS instead of a direct third_party checkin.
>
> Yes, this does mean we'll check out ~40M of code for 2 files...
>
> I think these trybots are moot... they gclient sync before patching.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
ca01d179347b5e848ded97c8228b79ffc6b5e7bf
TBR=robertphillips@google.com,djsollen@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
1290913008
joshualitt [Mon, 17 Aug 2015 17:51:22 +0000 (10:51 -0700)]
drawBitmapImage can batch across AA rects
BUG=464835
Committed: https://skia.googlesource.com/skia/+/
0d4bcea0d570041434ac3de2df2bd9063138fdb5
Review URL: https://codereview.chromium.org/
1293543002
Derek Sollenberger [Mon, 17 Aug 2015 17:39:03 +0000 (13:39 -0400)]
fix typo in android_framework_lib.gyp
BUG=skia:
Review URL: https://codereview.chromium.org/
1293183002 .
djsollen [Mon, 17 Aug 2015 17:20:46 +0000 (10:20 -0700)]
Add GPU to the android include path.
Review URL: https://codereview.chromium.org/
1301623002
mtklein [Mon, 17 Aug 2015 17:20:16 +0000 (10:20 -0700)]
Depend on ETC1 via DEPS instead of a direct third_party checkin.
Yes, this does mean we'll check out ~40M of code for 2 files...
I think these trybots are moot... they gclient sync before patching.
BUG=skia:
Review URL: https://codereview.chromium.org/
1296253003
caryclark [Mon, 17 Aug 2015 17:01:23 +0000 (10:01 -0700)]
remove unused code
R=mtklein@google.com
Review URL: https://codereview.chromium.org/
1297013002
fmalita [Mon, 17 Aug 2015 15:05:13 +0000 (08:05 -0700)]
SkPaintFilterCanvas should inherit the target canvas state
Currently, SkPaintFilterCanvas does not provide any help in cloning
target canvas state. While that could be handled in subclasses, it is
easy to miss (see linked bug).
This CL adds a new constructor variant which ensures that the initial
matrix and clip bounds are inherited from the target canvas.
BUG=516790
R=reed@google.com,robertphillips@google.com
Review URL: https://codereview.chromium.org/
1294013002
msarett [Mon, 17 Aug 2015 14:49:37 +0000 (07:49 -0700)]
Fix webp compile warnings on windows
This fix was landed with:
https://codereview.chromium.org/
1280073002/
The above CL was reverted due to an unrelated bug in libwebp.
The above CL contains multiple components, and I think that
reverting this part of the change was unintentional.
BUG=skia:
Review URL: https://codereview.chromium.org/
1286903003
joshualitt [Mon, 17 Aug 2015 14:20:58 +0000 (07:20 -0700)]
Revert of drawBitmapImage can batch across AA rects (patchset #5 id:80001 of https://codereview.chromium.org/
1293543002/ )
Reason for revert:
a follow up patch exposes a bug
Original issue's description:
> drawBitmapImage can batch across AA rects
>
> BUG=464835
>
> Committed: https://skia.googlesource.com/skia/+/
0d4bcea0d570041434ac3de2df2bd9063138fdb5
TBR=bsalomon@google.com,robertphillips@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=464835
Review URL: https://codereview.chromium.org/
1291663005
joshualitt [Mon, 17 Aug 2015 13:59:36 +0000 (06:59 -0700)]
drawBitmapImage can batch across AA rects
BUG=464835
Review URL: https://codereview.chromium.org/
1293543002
rmistry [Sun, 16 Aug 2015 07:20:54 +0000 (00:20 -0700)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
NO_MERGE_BUILDS
Review URL: https://codereview.chromium.org/
1296513004
reed [Sat, 15 Aug 2015 21:02:29 +0000 (14:02 -0700)]
support both box and circle lcd
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1292943003
reed [Sat, 15 Aug 2015 18:57:23 +0000 (11:57 -0700)]
show LCD on max fat-zoom
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1295483003
rmistry [Sat, 15 Aug 2015 18:00:57 +0000 (11:00 -0700)]
Update SKP version
Automatic commit by the RecreateSKPs bot.
TBR=
NO_MERGE_BUILDS
Review URL: https://codereview.chromium.org/
1291273003
reed [Sat, 15 Aug 2015 15:46:27 +0000 (08:46 -0700)]
Revert[7] "move some public headers into private"
This reverts commit
e02716908fe82c7c4ae9b415793277620a22bcd6.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1300523002
reed [Sat, 15 Aug 2015 14:42:31 +0000 (07:42 -0700)]
increase zoom in fatbits
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1300513002
reed [Sat, 15 Aug 2015 14:28:34 +0000 (07:28 -0700)]
Revert[6] "move some public headers into private"
This reverts commit
cc1229c9d5e57b45305ba8f99ae33e92db0032bc.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1295003002
joshualitt [Fri, 14 Aug 2015 18:36:03 +0000 (11:36 -0700)]
Revert of stop dropping AA when rect stays rect (patchset #8 id:140001 of https://codereview.chromium.org/
1295523002/ )
Reason for revert:
breaks layout tests
Original issue's description:
> stop dropping AA when rect stays rect
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
1bef9f59c566cc54c2259cc4d0171c115157cd1c
TBR=bsalomon@google.com,robertphillips@google.com,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
1295813005
halcanary [Fri, 14 Aug 2015 18:26:33 +0000 (11:26 -0700)]
SkPDF: Move SkFlate into src/pdf (part 3/3)
This must land after http://crrev.com/
1288053002
Motivation: Skia only uses SkFlate in the SkPDF module.
Review URL: https://codereview.chromium.org/
1288063002
mtklein [Fri, 14 Aug 2015 17:03:45 +0000 (10:03 -0700)]
A bit of misc cleanup.
- Update comments about skia_shared_lib
- Remove dead code (system_preferences)
- Remove non-building code (techtalk1)
- Turn gm/annotated_text back on.
BUG=skia:
Review URL: https://codereview.chromium.org/
1286133004
joshualitt [Fri, 14 Aug 2015 16:01:21 +0000 (09:01 -0700)]
fix valgrind issue
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
1289203004
joshualitt [Fri, 14 Aug 2015 15:45:39 +0000 (08:45 -0700)]
fix viewmatrix mapping in AAFillRect
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
1293823003
egdaniel [Fri, 14 Aug 2015 15:37:50 +0000 (08:37 -0700)]
Add include paths in gputest.gyp for use by additional gpu tests.
BUG=skia:
Review URL: https://codereview.chromium.org/
1290553005
mtklein [Fri, 14 Aug 2015 15:33:50 +0000 (08:33 -0700)]
Build all GMs on Android.
Many of these were excluded from the build for bots that no longer exist.
Will fix up anything that starts failing using dm_flags.py.
BUG=skia:2326,skia:2313, skia:1978
Review URL: https://codereview.chromium.org/
1290943004
scroggo [Fri, 14 Aug 2015 15:32:46 +0000 (08:32 -0700)]
Support more swizzles to 565 in SkCodec
Add more swizzling functions for swizzling to 565. Much of this
code was revived from crrev.com/
1055743003 (for BMP). Also added
swizzling functions for WBMP.
Consolidate the static function conversion_possible.
In SkCodec::getPixels, check that the alphatype corresponds to the
colorType. This prevents requesting 565 + non-opaque.
In SkIcoCodec, report that the image is unpremul (instead of
whatever the largest embedded codec thinks), but modify the
requested info to have the alpha type expected/required by the
embedded codec.
Add tests for decoding to 565.
BUG=skia:3257
BUG=skia:3683
Review URL: https://codereview.chromium.org/
1277213002
emmaleer [Fri, 14 Aug 2015 14:44:46 +0000 (07:44 -0700)]
SkScaledCodec class
This class does scaling by using a scanlineDecoder.
getScanlines and skipScanlines are used for y sampling,
the swizzler is used for x sampling
this class is currently only working for png and jpeg images
I will update other Codec types to work soon
For SkJpegCodec to implement width wise swizzling it now
uses a swizzler. I ran performance tests on this change.
Here are the performance test results:
https://docs.google.com/a/google.com/spreadsheets/d/1D7-Q_GXD_dI68LZO005NNvb8Wq2Ee0wEBEPG72671yw/edit?usp=sharing
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
0944100ac89f797714eeae0cf2875e2335ff52ee
Committed: https://skia.googlesource.com/skia/+/
d518ea7927f9f4e0ed5b4134d1b4f48243855a47
Committed: https://skia.googlesource.com/skia/+/
b157917507d4f7d2651f0aeb566d31603cc02240
Review URL: https://codereview.chromium.org/
1260673002
joshualitt [Fri, 14 Aug 2015 14:10:57 +0000 (07:10 -0700)]
stop dropping AA when rect stays rect
BUG=skia:
Review URL: https://codereview.chromium.org/
1295523002
egdaniel [Fri, 14 Aug 2015 13:37:37 +0000 (06:37 -0700)]
Revert of SkScaledCodec class (patchset #35 id:680001 of https://codereview.chromium.org/
1260673002/ )
Reason for revert:
breaking ubuntu bots
Original issue's description:
> SkScaledCodec class
>
> This class does scaling by using a scanlineDecoder.
> getScanlines and skipScanlines are used for y sampling,
> the swizzler is used for x sampling
>
> this class is currently only working for png and jpeg images
> I will update other Codec types to work soon
>
> For SkJpegCodec to implement width wise swizzling it now
> uses a swizzler. I ran performance tests on this change.
> Here are the performance test results:
> https://docs.google.com/a/google.com/spreadsheets/d/1D7-Q_GXD_dI68LZO005NNvb8Wq2Ee0wEBEPG72671yw/edit?usp=sharing
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
0944100ac89f797714eeae0cf2875e2335ff52ee
>
> Committed: https://skia.googlesource.com/skia/+/
d518ea7927f9f4e0ed5b4134d1b4f48243855a47
>
> Committed: https://skia.googlesource.com/skia/+/
b157917507d4f7d2651f0aeb566d31603cc02240
TBR=scroggo@google.com,msarett@google.com,djsollen@google.com,mtklein@google.com,emmaleer@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
1285173003
joshualitt [Fri, 14 Aug 2015 13:30:50 +0000 (06:30 -0700)]
Add GM to test drawing atlas case
BUG=skia:
Review URL: https://codereview.chromium.org/
1294513002
mtklein [Fri, 14 Aug 2015 12:49:17 +0000 (05:49 -0700)]
Revert of Paranoid temporary check that Chrome's building with SSE2 on all Windows builders. (patchset #1 id:1 of https://codereview.chromium.org/
1283183004/ )
Reason for revert:
Nothing broke. Experiment is over... SSE2 is present.
Original issue's description:
> Paranoid temporary check that Chrome's building with SSE2 on all Windows builders.
>
> BUG=chromium:475596
>
> Committed: https://skia.googlesource.com/skia/+/
e8445307ac33eddcf04457ae21040e47dc9c2a97
TBR=egdaniel@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:475596
Review URL: https://codereview.chromium.org/
1296593002
emmaleer [Fri, 14 Aug 2015 12:46:08 +0000 (05:46 -0700)]
SkScaledCodec class
This class does scaling by using a scanlineDecoder.
getScanlines and skipScanlines are used for y sampling,
the swizzler is used for x sampling
this class is currently only working for png and jpeg images
I will update other Codec types to work soon
For SkJpegCodec to implement width wise swizzling it now
uses a swizzler. I ran performance tests on this change.
Here are the performance test results:
https://docs.google.com/a/google.com/spreadsheets/d/1D7-Q_GXD_dI68LZO005NNvb8Wq2Ee0wEBEPG72671yw/edit?usp=sharing
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
0944100ac89f797714eeae0cf2875e2335ff52ee
Committed: https://skia.googlesource.com/skia/+/
d518ea7927f9f4e0ed5b4134d1b4f48243855a47
Review URL: https://codereview.chromium.org/
1260673002
mtklein [Fri, 14 Aug 2015 00:53:28 +0000 (17:53 -0700)]
Paranoid temporary check that Chrome's building with SSE2 on all Windows builders.
BUG=chromium:475596
Review URL: https://codereview.chromium.org/
1283183004
bsalomon [Thu, 13 Aug 2015 21:55:50 +0000 (14:55 -0700)]
Split GrDrawBatch and GrVertexBatch into their own files
TBR=joshualitt@google.com
Review URL: https://codereview.chromium.org/
1296483002
reed [Thu, 13 Aug 2015 21:06:46 +0000 (14:06 -0700)]
some catchup CL revisions
BUG=skia:
Review URL: https://codereview.chromium.org/
1295593002
mtklein [Thu, 13 Aug 2015 21:02:06 +0000 (14:02 -0700)]
Every pixel ref gets its own mutex.
Seems like a memory-saving flourish follow up would be to use SkSpinlock.
BUG=Florin's email.
Review URL: https://codereview.chromium.org/
1289623004
emmaleer [Thu, 13 Aug 2015 20:59:21 +0000 (13:59 -0700)]
Revert of SkScaledCodec class (patchset #34 id:660001 of https://codereview.chromium.org/
1260673002/ )
Reason for revert:
Seg-faulting:
http://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86-Release/builds/1608/steps/dm/logs/stdio
Original issue's description:
> SkScaledCodec class
>
> This class does scaling by using a scanlineDecoder.
> getScanlines and skipScanlines are used for y sampling,
> the swizzler is used for x sampling
>
> this class is currently only working for png and jpeg images
> I will update other Codec types to work soon
>
> For SkJpegCodec to implement width wise swizzling it now
> uses a swizzler. I ran performance tests on this change.
> Here are the performance test results:
> https://docs.google.com/a/google.com/spreadsheets/d/1D7-Q_GXD_dI68LZO005NNvb8Wq2Ee0wEBEPG72671yw/edit?usp=sharing
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
0944100ac89f797714eeae0cf2875e2335ff52ee
>
> Committed: https://skia.googlesource.com/skia/+/
d518ea7927f9f4e0ed5b4134d1b4f48243855a47
TBR=scroggo@google.com,msarett@google.com,djsollen@google.com,mtklein@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
1294613002
jvanverth [Thu, 13 Aug 2015 20:41:03 +0000 (13:41 -0700)]
Belt and suspenders for colors in DrawAtlasBatch test
Review URL: https://codereview.chromium.org/
1290253002
bsalomon [Thu, 13 Aug 2015 20:34:48 +0000 (13:34 -0700)]
Introduce GrBatch subclasses GrDrawBatch and GrVertexBatch to prepare for non-drawing batches
Review URL: https://codereview.chromium.org/
1293583002
reed [Thu, 13 Aug 2015 20:32:39 +0000 (13:32 -0700)]
Extend SkImageGenerator to support natively generated GrTextures. As part of this, added uniqueID() to the generator, and made it be in the same namespace is bitmaps, pixelrefs, images.
To do this, create SkImageCacherator, which wraps a generator and provides an
interface to get a cached answer for either the raster or texture output of
the generator.
BUG=skia:
Review URL: https://codereview.chromium.org/
1291803002
mtklein [Thu, 13 Aug 2015 20:10:30 +0000 (13:10 -0700)]
Normalize SkXfermode_opts.h argument order as d,s[,aa].
At head they're s,d[,aa] in SkXfermode_opts.h but Sk4px::Map* expect d,s[,aa]
so we ended up having to write weird little lambda shims to match impedance.
There's no reason for these to disagree, and d,s[,aa] is the One True Order
(because no matter what you're doing in graphics, there's always a dst).
Should be no perf or image diff, though I'm suspicious it might help MSVC code generation.
BUG=skia:4117
Committed: https://skia.googlesource.com/skia/+/
6028a8476504022fe40b6870b1460b5e4a80969f
CQ_EXTRA_TRYBOTS=client.skia:Test-Win8-MSVC-ShuttleB-CPU-AVX2-x86-Release-Trybot
Review URL: https://codereview.chromium.org/
1289903002
emmaleer [Thu, 13 Aug 2015 20:07:03 +0000 (13:07 -0700)]
SkScaledCodec class
This class does scaling by using a scanlineDecoder.
getScanlines and skipScanlines are used for y sampling,
the swizzler is used for x sampling
this class is currently only working for png and jpeg images
I will update other Codec types to work soon
For SkJpegCodec to implement width wise swizzling it now
uses a swizzler. I ran performance tests on this change.
Here are the performance test results:
https://docs.google.com/a/google.com/spreadsheets/d/1D7-Q_GXD_dI68LZO005NNvb8Wq2Ee0wEBEPG72671yw/edit?usp=sharing
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/
0944100ac89f797714eeae0cf2875e2335ff52ee
Review URL: https://codereview.chromium.org/
1260673002
jvanverth [Thu, 13 Aug 2015 18:53:39 +0000 (11:53 -0700)]
Fix for VALGRIND DrawAtlas test issue.
Don't pre-alloc color array.
Review URL: https://codereview.chromium.org/
1289003002
emmaleer [Thu, 13 Aug 2015 18:44:05 +0000 (11:44 -0700)]
Revert of SkScaledCodec class (patchset #32 id:620001 of https://codereview.chromium.org/
1260673002/ )
Reason for revert:
Segfaulting:
http://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86-Release/builds/1605/steps/dm/logs/stdio
Original issue's description:
> SkScaledCodec class
>
> This class does scaling by using a scanlineDecoder.
> getScanlines and skipScanlines are used for y sampling,
> the swizzler is used for x sampling
>
> this class is currently only working for png and jpeg images
> I will update other Codec types to work soon
>
> For SkJpegCodec to implement width wise swizzling it now
> uses a swizzler. I ran performance tests on this change.
> Here are the performance test results:
> https://docs.google.com/a/google.com/spreadsheets/d/1D7-Q_GXD_dI68LZO005NNvb8Wq2Ee0wEBEPG72671yw/edit?usp=sharing
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/
0944100ac89f797714eeae0cf2875e2335ff52ee
TBR=scroggo@google.com,msarett@google.com,djsollen@google.com,mtklein@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/
1294593002
emmaleer [Thu, 13 Aug 2015 18:26:57 +0000 (11:26 -0700)]
SkScaledCodec class
This class does scaling by using a scanlineDecoder.
getScanlines and skipScanlines are used for y sampling,
the swizzler is used for x sampling
this class is currently only working for png and jpeg images
I will update other Codec types to work soon
For SkJpegCodec to implement width wise swizzling it now
uses a swizzler. I ran performance tests on this change.
Here are the performance test results:
https://docs.google.com/a/google.com/spreadsheets/d/1D7-Q_GXD_dI68LZO005NNvb8Wq2Ee0wEBEPG72671yw/edit?usp=sharing
BUG=skia:
Review URL: https://codereview.chromium.org/
1260673002
joshualitt [Thu, 13 Aug 2015 17:19:32 +0000 (10:19 -0700)]
fix up batch_spew
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
1292113002
joshualitt [Thu, 13 Aug 2015 17:05:51 +0000 (10:05 -0700)]
Move GrRectBatch to GrBWFillRectBatch and make internal
BUG=skia:
Review URL: https://codereview.chromium.org/
1294553003
reed [Thu, 13 Aug 2015 16:37:45 +0000 (09:37 -0700)]
add SkImage::NewFromPicture and a GM to test it
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1288403002
robertphillips [Thu, 13 Aug 2015 14:57:10 +0000 (07:57 -0700)]
Simplify parameters passed to path renderers
It appears that CanDrawPathArgs::fTarget was only ever used to access the shaderCaps and no instances of onGetStencilSupport ever used the drawTarget and pipelineBuilder parameters.
Review URL: https://codereview.chromium.org/
1291803006
mtklein [Thu, 13 Aug 2015 14:51:29 +0000 (07:51 -0700)]
add asserts on Sk4px::Map functions that our arrays are non-null.
There's a crasher (null dereference it looks like) in Clank with an impossible stack, but with blit mask on top (apparently sk_free() calls blit mask...). Can't hurt to check that all these Sk4px-using methods are iterating over non-null arrays.
(This is that bug I mentioned that got me thinking about blit mask in the first place.)
BUG=520354
Review URL: https://codereview.chromium.org/
1295443002
joshualitt [Thu, 13 Aug 2015 14:12:50 +0000 (07:12 -0700)]
Minor fix to not save the modeling space rect
BUG=skia:
Review URL: https://codereview.chromium.org/
1292543002
bsalomon [Thu, 13 Aug 2015 14:08:31 +0000 (07:08 -0700)]
Move willColorBlendWithDst from pipeline builder to GrPipelineOptimizations.
Review URL: https://codereview.chromium.org/
1285193004
wangyix [Thu, 13 Aug 2015 13:51:35 +0000 (06:51 -0700)]
Added mangleString member and onBefore*, onAfter* functions to GrGLFragmentShaderBuilder
BUILDS! Added mangleString, onBefore, and onAfterChildProcEmitCode() to GrGLFragmentShaderBuilder.cpp
BUG=skia:4182
Review URL: https://codereview.chromium.org/
1288723002
bsalomon [Thu, 13 Aug 2015 13:44:04 +0000 (06:44 -0700)]
Fail early in GrPipeline::CreateAt() if XP creation fails
R=egdaniel@google.com
Review URL: https://codereview.chromium.org/
1286173006
robertphillips [Thu, 13 Aug 2015 12:19:14 +0000 (05:19 -0700)]
Defer flushes if kPreferNoIO is specified
Prior to this patch clients who were solely uploading to textures (e.g., SW Mask Mgr) would cause extra flushes b.c., even though kPreferNoIO was being specified, resources with pending IO would still be returned even though there was plenty of space in the resource cache.
Review URL: https://codereview.chromium.org/
1286203002
reed [Thu, 13 Aug 2015 01:58:52 +0000 (18:58 -0700)]
Revert "Revert[4] "move some public headers into private""
This reverts commit
33e00db73d5f1836481cf4053c64e4ed20537662.
BUG=skia:
TBR=
NOTREECHECKS=True
FAILED: /b/build/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/components/user_manager/user_manager_test_support.fake_user_manager.o.d -DV8_DEPRECATION_WARNINGS -DCLD_VERSION=2 -D_FILE_OFFSET_BITS=64 -DCHROMIUM_BUILD -DCR_CLANG_REVISION=242792-1 -DCOMPONENT_BUILD -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_ASH=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DUSE_X11=1 -DIMAGE_LOADER_EXTENSION=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS -DENABLE_HIDPI=1 -DENABLE_TOPCHROME_MD=1 -DUSE_UDEV -DDONT_EMBED_BUILD_METADATA -DDCHECK_ALWAYS_ON=1 -DFIELDTRIAL_TESTING_ENABLED -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_BACKGROUND=1 -DENABLE_GOOGLE_NOW=1 -DENABLE_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DSAFE_BROWSING_SERVICE -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DUNIT_TEST -DGTEST_HAS_RTTI=0 -DUSE_LIBPCI=1 -DUSE_OPENSSL=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DOS_CHROMEOS=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -D_DEBUG -D_GLIBCXX_DEBUG=1 -Igen -I../.. -I../../skia/config -I../../testing/gmock/include -I../../testing/gtest/include -Werror -pthread -fno-strict-aliasing -Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -Wno-reserved-user-defined-literal -Xclang -load -Xclang /b/build/slave/linux_chromeos/build/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -fcolor-diagnostics -B/b/build/slave/linux_chromeos/build/src/third_party/binutils/Linux_x64/Release/bin -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 -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -m64 -march=x86-64 -O0 -g -funwind-tables -gsplit-dwarf -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -g0 -fno-exceptions -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -Wsign-compare -std=gnu++11 -c ../../components/user_manager/fake_user_manager.cc -o obj/components/user_manager/user_manager_test_support.fake_user_manager.o
In file included from ../../components/user_manager/fake_user_manager.cc:5:
In file included from ../../components/user_manager/fake_user_manager.h:12:
In file included from ../../components/user_manager/user.h:14:
In file included from ../../components/user_manager/user_image/user_image.h:12:
In file included from ../../ui/gfx/image/image_skia.h:15:
In file included from ../../ui/gfx/image/image_skia_rep.h:8:
In file included from ../../third_party/skia/include/core/SkBitmap.h:11:
In file included from ../../third_party/skia/include/core/SkColor.h:11:
In file included from ../../third_party/skia/include/core/SkScalar.h:12:
../../third_party/skia/include/core/../private/SkFloatingPoint.h:13:10: fatal error: 'SkTypes.h' file not found
#include "SkTypes.h"
ninja -w dupbuild=err -C /b/build/slave/linux_chromeos/build/src/out/Debug accessibility_unittests accessibility_unittests_run app_list_unittests app_list_unittests_run app_shell_unittests app_shell_unittests_run ash_unittests ash_unittests_run aura_builder aura_unittests aura_unittests_run base_unittests base_unittests_run browser_tests browser_tests_run cacheinvalidation_unittests cacheinvalidation_unittests_run chromeos_unittests chromeos_unittests_run components_unittests components_unittests_run compositor_unittests compositor_unittests_run content_browsertests content_browsertests_run content_unittests content_unittests_run crypto_unittests crypto_unittests_run dbus_unittests device_unittests device_unittests_run display_unittests display_unittests_run events_unittests events_unittests_run extensions_browsertests extensions_browsertests_run extensions_unittests extensions_unittests_run gcm_unit_tests gcm_unit_tests_run gfx_unittests gfx_unittests_run google_apis_unittests google_apis_unittests_run gpu_unittests gpu_unittests_run interactive_ui_tests interactive_ui_tests_run ipc_tests ipc_tests_run jingle_unittests jingle_unittests_run media_unittests media_unittests_run message_center_unittests message_center_unittests_run midi_unittests midi_unittests_run nacl_helper_nonsfi_unittests nacl_loader_unittests nacl_loader_unittests_run net_unittests net_unittests_run ppapi_unittests printing_unittests printing_unittests_run remoting_unittests remoting_unittests_run sandbox_linux_unittests sandbox_linux_unittests_run skia_unittests skia_unittests_run sql_unittests sql_unittests_run sync_unit_tests sync_unit_tests_run ui_base_unittests ui_base_unittests_run ui_chromeos_unittests ui_touch_selection_unittests ui_touch_selection_unittests_run unit_tests unit_tests_run url_unittests url_unittests_run views_unittests wm_unittests wm_unittests_run -j50
ninja: Entering directory `/b/build/slave/linux_chromeos/build/src/out/Debug'
Review URL: https://codereview.chromium.org/
1288863002
mtklein [Wed, 12 Aug 2015 20:51:27 +0000 (13:51 -0700)]
Revert of Normalize SkXfermode_opts.h argument order as d,s[,aa]. (patchset #1 id:1 of https://codereview.chromium.org/
1289903002/ )
Reason for revert:
?
Original issue's description:
> Normalize SkXfermode_opts.h argument order as d,s[,aa].
>
> At head they're s,d[,aa] in SkXfermode_opts.h but Sk4px::Map* expect d,s[,aa]
> so we ended up having to write weird little lambda shims to match impedance.
>
> There's no reason for these to disagree, and d,s[,aa] is the One True Order
> (because no matter what you're doing in graphics, there's always a dst).
>
> Should be no perf or image diff, though I'm suspicious it might help MSVC code generation.
>
> BUG=skia:4117
>
> Committed: https://skia.googlesource.com/skia/+/
6028a8476504022fe40b6870b1460b5e4a80969f
TBR=djsollen@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4117
Review URL: https://codereview.chromium.org/
1284363002
bungeman [Wed, 12 Aug 2015 20:37:16 +0000 (13:37 -0700)]
Use forwarding with SkTLazy::init.
This allows removal the difficult to use (and so currently unused)
placement new and related macros to allow any constructor of T to
be used to initilize the storage of SkTLazy. This also properly
aligns the SkTLazy storage.
Review URL: https://codereview.chromium.org/
1283183003
jvanverth [Wed, 12 Aug 2015 19:58:13 +0000 (12:58 -0700)]
Add gyp support for new GPU backend
Review URL: https://codereview.chromium.org/
1287023006
joshualitt [Wed, 12 Aug 2015 19:57:54 +0000 (12:57 -0700)]
Refactor helper function for SkBitmapShader to GrFragmentProcessor
BUG=skia:
Review URL: https://codereview.chromium.org/
1285283002
reed [Wed, 12 Aug 2015 19:53:10 +0000 (12:53 -0700)]
Revert[4] "move some public headers into private"
This reverts commit
9cdcabefa33d49febfdb45e388e762b4dee8dd6f.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/
1291613007
joshualitt [Wed, 12 Aug 2015 19:52:47 +0000 (12:52 -0700)]
broken bots war
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/
1289803005
jvanverth [Wed, 12 Aug 2015 19:19:36 +0000 (12:19 -0700)]
Add support for a new GPU interface
Review URL: https://codereview.chromium.org/
1290813002
mtklein [Wed, 12 Aug 2015 18:56:43 +0000 (11:56 -0700)]
Revert of Refactor to put SkXfermode_opts inside SK_OPTS_NS. (patchset #1 id:1 of https://codereview.chromium.org/
1286093004/ )
Reason for revert:
Maybe causing test / gold problems?
Original issue's description:
> Refactor to put SkXfermode_opts inside SK_OPTS_NS.
>
> Without this refactor I was getting warnings previously about having code
> inside namespace SK_OPTS_NS (e.g. namespace sse2, namespace neon) referring to
> code inside an anonymous namespace (Sk4px, SkPMFloat, Sk4f, etc) [1].
>
> That low-level code was in an anonymous namespace to allow multiple independent
> copies of its methods to be instantiated without the linker getting confused /
> offended about violating the One Definition Rule. This was only happening in
> Debug mode where the methods were not being inlined.
>
> To fix this all, I've force-inlined the methods of the low-level code and
> removed the anonymous namespace.
>
> BUG=skia:4117
>
>
> [1] Here is what those errors looked like:
>
> In file included from ../../../../src/core/SkOpts.cpp:18:0:
> ../../../../src/opts/SkXfermode_opts.h:193:7: error: 'portable::Sk4pxXfermode' has a field 'portable::Sk4pxXfermode::fProc4' whose type uses the anonymous namespace [-Werror]
> class Sk4pxXfermode : public SkProcCoeffXfermode {
> ^
> ../../../../src/opts/SkXfermode_opts.h:193:7: error: 'portable::Sk4pxXfermode' has a field 'portable::Sk4pxXfermode::fAAProc4' whose type uses the anonymous namespace [-Werror]
> ../../../../src/opts/SkXfermode_opts.h:235:7: error: 'portable::SkPMFloatXfermode' has a field 'portable::SkPMFloatXfermode::fProcF' whose type uses the anonymous namespace [-Werror]
> class SkPMFloatXfermode : public SkProcCoeffXfermode {
> ^
> cc1plus: all warnings being treated as errors
>
> Committed: https://skia.googlesource.com/skia/+/
b07bee3121680b53b98b780ac08d14d374dd4c6f
TBR=djsollen@google.com,mtklein@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4117
Review URL: https://codereview.chromium.org/
1284333002
joshualitt [Wed, 12 Aug 2015 18:51:46 +0000 (11:51 -0700)]
Add GrAARectBatch which can handle a local matrix
BUG=skia:
Review URL: https://codereview.chromium.org/
1290763002
bsalomon [Wed, 12 Aug 2015 18:28:11 +0000 (11:28 -0700)]
Add override to GrAAFillRectBatch::onCombineIfPossible
TBR=robertphillips@google.com
Review URL: https://codereview.chromium.org/
1287103003
halcanary [Wed, 12 Aug 2015 18:24:40 +0000 (11:24 -0700)]
SkPDF: Move SkFlate into src/pdf (part 1/3) [reland]
Rename to SkDeflate so Chromium builders continue to work
Next, we change remove SkFlate from Chromium build files, then we can delete SkFlate.
Review URL: https://codereview.chromium.org/
1285913002
bsalomon [Wed, 12 Aug 2015 18:14:50 +0000 (11:14 -0700)]
Check for xfer barriers in GrBatch, auto-issue barriers in GrGpu
Review URL: https://codereview.chromium.org/
1287973003
mtklein [Wed, 12 Aug 2015 17:52:25 +0000 (10:52 -0700)]
Normalize SkXfermode_opts.h argument order as d,s[,aa].
At head they're s,d[,aa] in SkXfermode_opts.h but Sk4px::Map* expect d,s[,aa]
so we ended up having to write weird little lambda shims to match impedance.
There's no reason for these to disagree, and d,s[,aa] is the One True Order
(because no matter what you're doing in graphics, there's always a dst).
Should be no perf or image diff, though I'm suspicious it might help MSVC code generation.
BUG=skia:4117
Review URL: https://codereview.chromium.org/
1289903002
mtklein [Wed, 12 Aug 2015 17:23:37 +0000 (10:23 -0700)]
Refactor to put SkXfermode_opts inside SK_OPTS_NS.
Without this refactor I was getting warnings previously about having code
inside namespace SK_OPTS_NS (e.g. namespace sse2, namespace neon) referring to
code inside an anonymous namespace (Sk4px, SkPMFloat, Sk4f, etc) [1].
That low-level code was in an anonymous namespace to allow multiple independent
copies of its methods to be instantiated without the linker getting confused /
offended about violating the One Definition Rule. This was only happening in
Debug mode where the methods were not being inlined.
To fix this all, I've force-inlined the methods of the low-level code and
removed the anonymous namespace.
BUG=skia:4117
[1] Here is what those errors looked like:
In file included from ../../../../src/core/SkOpts.cpp:18:0:
../../../../src/opts/SkXfermode_opts.h:193:7: error: 'portable::Sk4pxXfermode' has a field 'portable::Sk4pxXfermode::fProc4' whose type uses the anonymous namespace [-Werror]
class Sk4pxXfermode : public SkProcCoeffXfermode {
^
../../../../src/opts/SkXfermode_opts.h:193:7: error: 'portable::Sk4pxXfermode' has a field 'portable::Sk4pxXfermode::fAAProc4' whose type uses the anonymous namespace [-Werror]
../../../../src/opts/SkXfermode_opts.h:235:7: error: 'portable::SkPMFloatXfermode' has a field 'portable::SkPMFloatXfermode::fProcF' whose type uses the anonymous namespace [-Werror]
class SkPMFloatXfermode : public SkProcCoeffXfermode {
^
cc1plus: all warnings being treated as errors
Review URL: https://codereview.chromium.org/
1286093004
wangyix [Wed, 12 Aug 2015 16:40:47 +0000 (09:40 -0700)]
All child GrFragmentProcs' transforms and textures will be stored in the root GrFragmentProc in preorder
Changed childProcessor(i) to return const referencd
Fixed rootProc/parentProc offset issues; renamed a few things.
added nonempty check to gatherTransforms to avoid segfault
removed recursive append_gr_coord_transforms() from GrGLProgramBuilder
BUILDS! Changed num*includeProc() calls to num() calls
added gatherCoordTransforms(). added coordTransforms() for root proc only
Modified GrFragmentProcessor to append child proc transforms and textures to root proc's arrays.
BUG=skia:4182
Review URL: https://codereview.chromium.org/
1275853005
halcanary [Wed, 12 Aug 2015 15:53:04 +0000 (08:53 -0700)]
Revert of SkPDF: Move SkFlate into src/pdf (part 1/3) (patchset #1 id:1 of https://codereview.chromium.org/
1285913002/ )
Reason for revert:
broke gn ("Duplicate object file")
Original issue's description:
> SkPDF: Move SkFlate into src/pdf (part 1/3)
>
> Next, we change Chromium build files, then we do the actual move.
>
> Committed: https://skia.googlesource.com/skia/+/
e14c1fe04fc72ec9bcf55820b5c65a71d7d0a764
TBR=bungeman@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/
1289863002
scroggo [Wed, 12 Aug 2015 15:31:44 +0000 (08:31 -0700)]
Update CodexTest to test valid_alpha.
Add a static function to CodexTest, which consolidates decoding,
comparing to an expected SkCodec::Result, and optionally comparing to a
digest.
Test decoding non-opaque to opaque (fails) and premul to unpremul/vice
versa (succeeds).
BUG=skia:3475
Review URL: https://codereview.chromium.org/
1277253003
jvanverth [Wed, 12 Aug 2015 15:15:31 +0000 (08:15 -0700)]
Revise DrawAtlasBatch to get rid of one copy when generating the batch.
This doesn't appear to have much affect on perf in SampleApp, but
it should avoid some copies and replaces a couple of STArrays
with one that just does a memcpy in the copy constructor.
Review URL: https://codereview.chromium.org/
1279343004
bsalomon [Wed, 12 Aug 2015 15:11:22 +0000 (08:11 -0700)]
Remove trace marker support from GrBufferedDrawTarget
Review URL: https://codereview.chromium.org/
1284983002
msarett [Wed, 12 Aug 2015 15:08:56 +0000 (08:08 -0700)]
Fix bmp RLE "bug"
Chromium's test suite contains an RLE image that reports a certain
file size in the header, but then contains additional encoded data.
Our bmp decoder would only decode half of the image, before stopping.
With this fix, we check for additional data before returning
kIncompleteInput.
If this lands, I will upload the test image to the bots.
Also adding an invalid image test to CodexTest.
BUG=skia:
Review URL: https://codereview.chromium.org/
1273853004