Commit Graph

59 Commits

Author SHA1 Message Date
Martin Vejdarski
ed435953df Fix issues with latest GN
Change-Id: I9490479242a025fa1f5ff84a556ae43d8de4c19a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332897
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-11-07 13:55:45 +00:00
kcbanner
4eb7c23d52 - GrGLPath: Fix hitting an assert when a style applies a path effect that results in an empty path
- Add rendering test for the empty path case

Bug: skia:10909
Change-Id: I19188c58d4ee0841e441c33f4c1a5ed27dc2fd25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332736
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-11-06 16:48:24 +00:00
Jiulong Wang
df5739ce3f Fix GrCCPerFlushResources error caused by cache eviction
By storing the cached atlas proxies in GrCCDrawPathsOp. This is
important because GrCCPathCache may evict an entry that is being used
in current flush, causing the op to lose the proxy it intended to draw
from.

Co-authored with Chris Dalton <csmartdalton@google.com>

Bug: chromium:1102117
Change-Id: I2e4b9360a84732269b6ce98f4d8adfc7e7b9735c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/326576
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-10-14 17:24:41 +00:00
Nikolay Igotti
7e9b563179 Search ICU data on Windows relative to the current module.
Bug: n/a
Change-Id: If2fc09f6fc0a24915b4938c62451c693a9712586
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/311136
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Heather Miller <hcm@google.com>
Reviewed-by: Jim Sproch <jsproch@google.com>
2020-08-20 14:51:42 +00:00
Stephan Hartmann
c1893f3f93 GCC: fix unknown attribute warnings for no_sanitize
Clang and GCC use different syntax to add no_sanitize
attribute on functions. This results in a large amount
of warnings for GCC, because responsible header is included
very often. Use SK_ATTRIBUTE to specify no_sanitize
attribute.

Change-Id: I589a851493788283c13fe4c7fb99eaa7ad753487
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/300556
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-07-06 13:52:22 +00:00
Kevin Lubick
67c905ce6b Fixing a bug in SkOpEdgeBuilder::walk that causes pathOps to fail when cubic segment is reducable
Inside SkOpEdgeBuilder::walk(), when current segment is cubic curve, its shape may be reduced, therefore, the curve points should be determined by the reduction result ‘split->fVerb’ instead of ‘verb’.

Actually, inside this switch case, ‘verb’ is always ‘SkPath::kCubic_Verb’, which makes the ‘fCanAdd’ always true. The outcome of this bug makes the subsequent logic which depends on ‘fCanAdd’ (L301-332) incorrect, and in some cases, fails the whole boolean operation at L329.

The Fiddle below demonstrates how this bug fails a union operation of two paths, by returning an empty path.
https://fiddle.skia.org/c/e528567b62bc338cd99f4a89f0c5342e

Screen shot of the fiddle:
https://www.dropbox.com/s/4bnzlponq6gen27/pathOpsBug.png?dl=0

2nd Fiddle drawing the results (larger)
https://fiddle.skia.org/c/1f2a513c2ee0395b9d05fb1eb987b01f

Change-Id: If07f54cef1b9409f9b6db27d6294a3e3461b0181
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/284426
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2020-04-21 16:56:54 +00:00
Noah Lavine
334d0ba9d7 Optimize SkSL xor where one argument is constant
Change-Id: I9ea41625fd80433f7f6480fe539321d8df7b7930
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/258877
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-12-20 14:50:46 +00:00
Petar Kirov
1ff585637a Fix small memory leak in c-api example
While working on creating bindings for dlang, I noticed that there was a
missing call to `sk_imageinfo_delete`, corresponding to the call to
`sk_imageinfo_new` in the c-api example. At first I thought that
`sk_surface_new_raster` (or something else) would free the image info
object internally, but after checking the implementation I saw this was
not the case.

This can be trivially verified with valgrind:

Before this change:
    $ valgrind ./skia-c-example 2>&1 | grep 'definitely lost'
    ==186215==    definitely lost: 24 bytes in 1 blocks

After:
    $ valgrind ./skia-c-example 2>&1 | grep 'definitely lost'
    ==185878==    definitely lost: 0 bytes in 0 blocks

Test: built and ran skia-c-example.c under valgrind
Change-Id: Ie3fba2e7602341d2f5e7dac198b3ec5923777cbd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/260021
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-12-16 16:03:04 +00:00
Bharat Ahuja
a7e4fe460c Issue- >Skia tiled bitmap rendering is too slow when tildmodeX is not same as tileModeY.
Reason-> Skia uses general-purpose pipeline in this case instead of more optimized faster pipeline.
Faster pipeline code was available in older versions of Skia and used to work fine but we removed faster pipeline code to consolidate the code. As discussed offline for us in the office we have significant scenarios running on software, so maintaining software performance is very important for us thus I am bringing this fast path back. To make this work I didn't have to do much, everything was already available, I just had to modify MatirxProcs to accept tilemodex and tilemodeY as parameters and define and configure SkBitmapProcState::MatrixProc GeneralProcs. I have also limited this change to ARM devices

Change-Id: Ie7ea59701d180c2832edb959e8d44047f4085cbf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/252677
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Bharat Ahuja <ahujabharat93@gmail.com>
Auto-Submit: Bharat Ahuja <ahujabharat93@gmail.com>
2019-11-14 20:52:18 +00:00
deepak1556
b22d7a3531 build: fix compilation on macOS with 10.14 SDK
typename 'B0' is defined in sys/termios.h

Bug: none
Change-Id: I6a2e6eb1a91f123459087280b70493dab795bbd3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/249917
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2019-10-30 20:18:58 +00:00
Aaron O'Mullan
829b6a0ff4 Fix Metal includes breaking macOS local builds
Before this fix, skia (and thus Chrome) would fail to compile on macOS when the user (developer) had a case-sensitive file-system.

So I've replaced the incorrect includes of <metal/metal.h> by <Metal/Metal.h>

Change-Id: I6ebcc0f46608f6d840d80d18e5f5baf0744a7f16
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225776
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-07-08 14:02:47 +00:00
Shachar Langbeheim
db610b3038 third-party.gni: Search includes using -I.
This will ensure that the headers from the dependencies will have
precedent over system headers, thus preventing situations where system
headers will block dependency headers and prevent compilation.

Change-Id: I0d480a6d3898f2da99cf2706c5335aaac05b4e4d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/220276
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-06-11 19:04:29 +00:00
Raul Tambre
0362dc268a Fix use of 'is' operator for comparison
The 'is' operator is not meant to be used for comparisons. It currently working is an implementation detail of CPython.
CPython 3.8 has added a SyntaxWarning for this.

Bug: chromium:958874
Change-Id: I7657bd3fddf37e849cc30aca34825fa3c0f71b58
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/211663
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Raul Tambre <raul@tambre.ee>
2019-05-07 14:22:15 +00:00
Martin Vejdarski
d353612513 fix metal build errors with preprocessor definitions
Bug: skia:8243

Change-Id: Ic312a1d87cc2eba8f0fe7f66c16e45c4bfe2ef49
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/201540
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-03-28 18:47:37 +00:00
jongdeok.kim
804f17e35b [Viewer] Set the current slide first before attaching the fBackendType to fWindow.
If call attach() first, Viewer::onBackendCreated() calls Window::show().
When WM_PAINT occurs, Viewer::drawSlide() is called, where a crash occurs using an uninitialized fCurrentSlide.

Bug: skia:https://bugs.chromium.org/p/skia/issues/detail?id=8792
Change-Id: I22ba6479052cb66e08d8bc2a94539473e899b604
Reviewed-on: https://skia-review.googlesource.com/c/195240
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-02-26 14:21:55 +00:00
KDr2
e77142e0d6 Fix bug of SkSVGCanvas::Make
The method `SkSVGCanvas::Make(const SkRect& bounds, SkWStream* writer)`
passes a pointer to a stack-allocated object to the returned SkCanvas.

TBR=
Change-Id: Ica7933adc59764a69eb2fb6312df91ffffd5627b
Reviewed-on: https://skia-review.googlesource.com/c/192040
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-02-14 02:09:30 +00:00
Dawson Coleman
3c88857838 Update BUILDCONFIG.gn to support Visual Studio 2017 Enterprise
Bug: skia:
Change-Id: I7723a545d2f5ed78f6637aa9b8990e28785f86fb
Reviewed-on: https://skia-review.googlesource.com/c/182191
Auto-Submit: Dawson Coleman <dawsonmcoleman@gmail.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-01-09 14:27:34 +00:00
Tom Tan
9bc33b9638 Fix header file for _byteswap_ulong from MSVC CRT
According to below MSDN link, _byte_swap_ulong comes from stdlib.h, not intrin.h

https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/byteswap-uint64-byteswap-ulong-byteswap-ushort

Bug: chromium:893460
Change-Id: I381e27a367fdc7a72b7d8e844c3e9aaebf1fcf76
Reviewed-on: https://skia-review.googlesource.com/c/180444
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-12-31 23:55:21 +00:00
Alexander Khovansky
3e11933765 [canvaskit] Exposed SkPath::arc. Exposed SkEncodedImageFormat enum. Exposed SkImage::encodeToData overload with arguments
These changes expose the arc function for SkPath. The ApplyAddArc function is a copy from the PathKit bindings.

Also exposed the PNG and JPEG formats from the SkEncodedImageFormat enum and the SkImage::encodeToData overload that accepts format and quality options. The direct binding of encodeToData was replaced with a pre-js wrapper that calls the appropriate private overload

We are working on a PostCSS conic gradient polyfill plugin and want to use the CanvasKit to generate it.
Problem is - it lacks the arc function that technically exists but isn't exposed. And it would be really great to have encodeToData with options since generated PNGs are quite large.
More details on the issue can be found here: https://github.com/jonathantneal/postcss-conic-gradient/issues/10

R=kjlubick@google.com

Bug: skia:
Change-Id: I3f1dc88ad308369fe62004080bcc196c4fbbf742
Reviewed-on: https://skia-review.googlesource.com/c/171046
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-11-15 02:52:02 +00:00
Yong-Hwan Baek
701a3ca157 Fixed SkVertices crashing on Windows DLL builds
SkVertices::Builder uses custom new operator but not exposed to dll.
While delete operator in SkVertices.h could be inlined, it causes crash on Windows DLL builds. This patch fixes this issue.
Change-Id: I8b635ad3aa4a3f496a392ce7840417947999e4b0
Reviewed-on: https://skia-review.googlesource.com/122480
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2018-04-22 14:42:01 +00:00
Kaloyan Donev
f7466bd84a Support x86 build with VS 2015
Pass extra assembler flags to the asm tool in msvc toolchain

My first commit so added my name to the AUTHORS file.

Change-Id: I19529a901be6d9c00df3c0880003be3363475c6e
Reviewed-on: https://skia-review.googlesource.com/114740
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-03-19 15:20:35 +00:00
Oleg Maximenko
5d4604b5e6 Fix assert format string in GrContext_colorTypeSupportedAsImage test.
Change-Id: I3a7aa0270d1e30095fda8e6a44059ecf826ac509
Reviewed-on: https://skia-review.googlesource.com/110100
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2018-02-26 17:02:38 +00:00
Bryce Thomas
fd5a5081d5 Add link annotation support to SkSVGDevice.
This CL implements |SkSVGDevice::drawAnnotation|, overridden from
|SKBaseDevice|.  |drawAnnotation| supports annotating rectangular areas
of a Skia device.  Previous to this change, annotations are being used
in |SkPDFDevice| to include hyperlinked rectangular areas in .pdf
documents.  This CL implements the SVG equivalent of this PDF feature.

BUG=skia:7581

Docs-Preview: https://skia.org/?cl=104680
Change-Id: I92ae01ceb7ae10cd2010bebab2a58dcfe48ef253
Reviewed-on: https://skia-review.googlesource.com/104680
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-02-06 23:35:16 +00:00
Andrew Monshizadeh
9d6681cc70 Changes to site documentation
Mostly just formatting fixes with a few grammatical changes.

Two real notable changes:
  - Removed references to SkGLCanvas from Tips & FAQ and replaced with
    references to `SkDevice` and `SkSurface`.
  - Deleted deprecated "Quick Start Guides" folder

Docs-Preview: https://skia.org/?cl=92361
Bug: skia:
Change-Id: Ief790b1c2bae8fe0e39aa8d66c79f80560d18c9e
Reviewed-on: https://skia-review.googlesource.com/92361
Reviewed-by: Heather Miller <hcm@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2018-01-11 19:47:58 +00:00
Ivan Afanasyev
2631558d58 fix use of uninitialized flag in SkCodec
SkCodec class has the fStartedIncrementalDecode field, which is not
initialized on construction, but may be used in incrementalDecode
method being uninitialized.

Bug: skia:
Change-Id: I378412a375100ad2df4aa38f2dd5682867e0e34b
Reviewed-on: https://skia-review.googlesource.com/53160
Commit-Queue: Heather Miller <hcm@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-10-09 19:17:05 +00:00
Matthew Leibowitz
3150ec6be9 Added support for building for tvOS
This change is just to add support for building for tvOS.
It is exactly the same as iOS, just using a different SDK.

I had to change the two lines for libjpeg-turbo so that
it will run for both tvOS and iOS.

BUG=skia:

Change-Id: I6ae5fc4257df74c0f321e5d2d71584f6a52ec3a6
Reviewed-on: https://skia-review.googlesource.com/9660
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-03-14 22:55:04 +00:00
elemental
a675910aea Fix typo in GrGLCaps
BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=5040

Change-Id: I23a9066de8c96378a1bd8596227e487cdd93669f
Reviewed-on: https://skia-review.googlesource.com/5040
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2016-11-18 23:20:51 +00:00
hcm
787e5a396f Add contributor to Skia AUTHORS file
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2303753002

Review-Url: https://codereview.chromium.org/2303753002
2016-09-01 07:55:43 -07:00
gogil
40ff5fe59b Prevent overflows when using gamma_alloc_size
BUG=636268
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2230163002

Review-Url: https://codereview.chromium.org/2230163002
2016-08-14 02:12:40 -07:00
cabanier
e75cdcb85b SkPDF: Use type 2/3 shading for gradient shaders
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1925233003

Review-Url: https://codereview.chromium.org/1925233003
2016-06-17 12:38:54 -07:00
Melnikov.Sergey.V
601e36a5c5 Add AVX/AVX2 support for runtime check
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1867193002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1867193002
2016-04-08 15:31:45 -07:00
marco.diiga
f8ee67edb8 Fix for unaligned automatic variable address in SSE routines. This used to work on linux but crashed on windows when rendering antialiased glyphs. I tracked the problem down to an alignment issue.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1817813002

Review URL: https://codereview.chromium.org/1817813002
2016-03-21 06:04:43 -07:00
lsalzman
b8b479b29d use malloc/calloc/free instead of moz_malloc/moz_calloc/moz_free in ports/SkMemory_mozalloc.cpp
BUG=skia:4560

Review URL: https://codereview.chromium.org/1449093002
2015-11-23 10:30:14 -08:00
plesner
d975fc9599 Add ifdef guard around gpu-specific code in native windows window.
Review URL: https://codereview.chromium.org/1405963014
2015-11-05 08:10:45 -08:00
yang.zhang
dc77b35918 Optimize RGB16 blitV functions with NEON for ARM platform.
Here are some performance resultsi on Nexus 9:
SkRGB16BlitterBlitV_neon:
+--------+-----------+
|height  |  C/NEON   |
+--------+-----------+
|1       | 0.765230  |
+--------+-----------+
|8       | 1.273330  |
+--------+-----------+
|18      | 1.441462  |
+--------+-----------+
|32      | 1.627798  |
+--------+-----------+
|76      | 1.683131  |
+--------+-----------+
|85      | 1.679456  |
+--------+-----------+
|120     | 1.721311  |
+--------+-----------+
|128     | 1.725482  |
+--------+-----------+
|512     | 1.784117  |
+--------+-----------+

BUG=skia:

Review URL: https://codereview.chromium.org/1213723002
2015-07-15 07:07:30 -07:00
zoran.jovanovic
7f00acbda6 Return cropBitmap
cropBitmap returns 'true' on success and 'false' on failure.
Propagate its return value so that cascading failures can be avoided.

Signed-off-by: Mykola Kondratenko <mykola.kondratenko@sonymobile.com>

BUG=skia:

Review URL: https://codereview.chromium.org/1088093003
2015-04-15 05:48:54 -07:00
jei.mayol
63af1441ce Fix GIF transparency.
The GIF decoder, in the onDecode() function, tries to obtain the
transparency info from the temporary SavedImage object, temp_save,
but the decoder had been changed to save extension block data to
the GifFileType object instead. As a result, find_transpIndex() can't
find the correct transaprency index and returns -1.

This had been reported in Android 4.4. AOSP pulled skia changes
related to giflib 5.x changes after Android 4.3, which is why
the problem is not reproducible in versions before KitKat.

AOSP Issue 62016:
https://code.google.com/p/android/issues/detail?id=62016

BUG=skia:

Review URL: https://codereview.chromium.org/429053004
2015-02-04 21:31:23 -08:00
hcm
45453c2acf authors update- add herb and reorganize
BUG=skia:

TBR=reed@google.com

NOTRY=true

Review URL: https://codereview.chromium.org/881993002
2015-01-28 14:16:43 -08:00
tomhudson
612e92680b Revert of Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset id:1 of https://codereview.chromium.org/750973003/)
Reason for revert:
Original patchset seems to have been exonerated. Crash was mac-specific, but appears to be triggered by a non-mac-specific change (https://codereview.chromium.org/747043004/); suspecting driver bug?

Original issue's description:
> Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset  id:20001 of https://codereview.chromium.org/754653002/)
>
> Reason for revert:
> Suspected in DM crashes, e.g.
>
> 2033 tasks left	 344M peak	  843ms	tabl-cuteoverload_skp
> Signal 11:
> _sigtramp (+0x1a)
> create_surface(CanvasConfig const&, GrContext*) (+0x1b2)
> test_WritePixels(skiatest::Reporter*, GrContextFactory*) (+0x8d4)
> skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (+0x21)
> skiatest::Test::run() (+0x7c)
> DM::GpuTestTask::draw(GrContextFactory*) (+0x8c)
> DM::GpuTask::run(GrContextFactory*) (+0xa6)
> DM::TaskRunner::wait() (+0x7f)
> dm_main() (+0x33f)
> main (+0x27)
>
>
> On all MacMini platforms (the following URL with -Mac{10.6,10.7,10.8}- and -{Debug,Release}):
>
> http://build.chromium.org/p/client.skia/builders/Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Debug
>
>
> Original issue's description:
> > Add gpu support for Apple specific 'Vertex Arrays' functions
> >
> > BUG=skia:
> >
> > Committed: https://skia.googlesource.com/skia/+/af000f469e1b0153ce445c96ca3d20e6d12224cc
>
> TBR=bsalomon@google.com,paraboul@gmail.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/55fe3d7748b873e362edc4e6a43bd77914ed25fb

TBR=bsalomon@google.com,paraboul@gmail.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/734633005
2014-11-24 11:22:37 -08:00
tomhudson
55fe3d7748 Revert of Add gpu support for Apple specific 'Vertex Arrays' functions (patchset id:20001 of https://codereview.chromium.org/754653002/)
Reason for revert:
Suspected in DM crashes, e.g.

2033 tasks left	 344M peak	  843ms	tabl-cuteoverload_skp
Signal 11:
_sigtramp (+0x1a)
create_surface(CanvasConfig const&, GrContext*) (+0x1b2)
test_WritePixels(skiatest::Reporter*, GrContextFactory*) (+0x8d4)
skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (+0x21)
skiatest::Test::run() (+0x7c)
DM::GpuTestTask::draw(GrContextFactory*) (+0x8c)
DM::GpuTask::run(GrContextFactory*) (+0xa6)
DM::TaskRunner::wait() (+0x7f)
dm_main() (+0x33f)
main (+0x27)

On all MacMini platforms (the following URL with -Mac{10.6,10.7,10.8}- and -{Debug,Release}):

http://build.chromium.org/p/client.skia/builders/Test-Mac10.6-MacMini4.1-GeForce320M-x86_64-Debug

Original issue's description:
> Add gpu support for Apple specific 'Vertex Arrays' functions
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/af000f469e1b0153ce445c96ca3d20e6d12224cc

TBR=bsalomon@google.com,paraboul@gmail.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/750973003
2014-11-24 09:59:41 -08:00
paraboul
af000f469e Add gpu support for Apple specific 'Vertex Arrays' functions
BUG=skia:

Review URL: https://codereview.chromium.org/754653002
2014-11-24 07:05:28 -08:00
rosca
ace7f42769 Preventing division by 0 in non-separable blend mode shaders.
In the software path, the same issue has been fixed some time ago:
https://codereview.chromium.org/114173002

BUG=skia:

Review URL: https://codereview.chromium.org/666043003
2014-11-20 07:24:32 -08:00
pavel
47eedcc848 Add utils to better quantize grayscale values to three bit indices while
compressing coverage masks.

Signed-off-by: Pavel Krajcevski <pavel@cs.unc.edu>

BUG=skia:

Review URL: https://codereview.chromium.org/669243003
2014-10-23 13:18:50 -07:00
jmuizelaar
60e4ad7b29 Improve SkARGB32_A8_BlitMask_SSE2
With clang this:

-       movzbl  -3(%rbx), %edx
-       pxor    %xmm5, %xmm5
-       pinsrw  $0, %edx, %xmm5
-       pinsrw  $1, %edx, %xmm5
-       movzbl  -2(%rbx), %edx
-       pinsrw  $2, %edx, %xmm5
-       pinsrw  $3, %edx, %xmm5
-       movzbl  -1(%rbx), %edx
-       pinsrw  $4, %edx, %xmm5
-       pinsrw  $5, %edx, %xmm5
-       movzbl  (%rbx), %edx
-       pinsrw  $6, %edx, %xmm5
-       pinsrw  $7, %edx, %xmm5

becomes:

+       movd    (%rbx), %xmm4
+       punpcklbw       %xmm9, %xmm4
+       punpcklwd       %xmm4, %xmm4

And clang already does better codegen than msvc 2013 on this.

BUG=skia:

Review URL: https://codereview.chromium.org/609823003
2014-10-09 11:43:02 -07:00
derekf
8c8f71ac07 Always disable the scissor test before BlitFrameBuffer
It seems most (all?) implementations of BlitFrameBuffer actually
obey the scissor test, so just always disable the scissor before
calling BlitFrameBuffer.

Original Author: Henry Song <henrysong@samsung.com>

R=bsalomon@google.com, hcm@google.com

Author: derekf@osg.samsung.com

Review URL: https://codereview.chromium.org/574543002
2014-09-16 06:24:58 -07:00
mtklein
9db328b64f Add *@skia.org to AUTHORS so we can land CLs using those addresses if we like.
BUG=skia:
R=hcm@google.com, reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/565293002
2014-09-12 12:03:55 -07:00
ehsan.akhgari
db5f7bf0a4 Do not export SkTDArray when building Skia as a DLL
This class has four members (deleteAll, freeAll, unrefAll and
safeUnrefAll) which will only compile for certain instantiations of
SkTDArray depending on the template argument type.  Marking this class
as dllexport breaks the build with clang-cl because of
http://llvm.org/PR20163.  Since this class is header-only, we can just
make it non-exported to enable building Skia as a DLL with clang-cl.

BUG=skia:
R=ctguil@chromium.org, mtklein@google.com, reed@google.com

Author: ehsan.akhgari@gmail.com

Review URL: https://codereview.chromium.org/368253002
2014-07-09 11:13:55 -07:00
djordje.pesut
aaf1df632d MIPS: modified gypi files to support build
R=teodora.petrovic@gmail.com, djsollen@google.com

Author: djordje.pesut@imgtec.com

Review URL: https://codereview.chromium.org/304903003
2014-06-06 14:09:12 -07:00
commit-bot@chromium.org
b7fedac2d1 Fixed Skia compilation error with strict clang.
BUG=skia:
R=reed@google.com, sergeyberezin@chromium.org, hcm@google.com

Author: kolczyk@opera.com

Review URL: https://codereview.chromium.org/227043006

git-svn-id: http://skia.googlecode.com/svn/trunk@14071 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-07 13:12:47 +00:00
commit-bot@chromium.org
9e613c096c Add skia.buildbots@gmail.com to CQ_COMMITTERS
BUG=skia:2225
R=borenet@google.com, rmistry@google.com

Author: skia.buildbots@gmail.com

Review URL: https://codereview.chromium.org/218393023

git-svn-id: http://skia.googlecode.com/svn/trunk@14056 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-03 22:21:08 +00:00