History log of /external/skia/src/core/SkMatrix.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ca49067a3378b5c0364817c4198c063de05a331a 07-Mar-2017 Mike Reed <reed@google.com> optimize intersect, use getType to utilize fast-case in preTranslate

10-15% speed up in clip_record_overhead bench

Comparing the raw fType field was missing the (maybe deprecatable) IsRectToRect
bit (0x10), which is set for identity and translate matrices, so we were
never taking the fast case.

BUG=skia:

Change-Id: I1c73f4bae42f2311454c7568ef8891239c3cae83
Reviewed-on: https://skia-review.googlesource.com/9388
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Herb Derby <herb@google.com>
/external/skia/src/core/SkMatrix.cpp
9169d807b134fe131ade5e9201f2945a753c6edb 02-Mar-2017 Mike Reed <reed@google.com> Don't mark the matrix-type as dirty just be cause we translate it.

This speeds up simple mods to canvas, e.g.

save()
translate(...)
...
restore()

BUG=skia:

Change-Id: I4b872e7d3102fad21d9c17a275006f5576827d41
Reviewed-on: https://skia-review.googlesource.com/9169
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/core/SkMatrix.cpp
a99b6ceff92183b424634f2e7276b9ea1d59e69d 04-Feb-2017 Mike Reed <reed@google.com> start removing uses of SkScalarMul

BUG=skia:6197

Change-Id: Ic444c7ee4ca547f483dc8232dcacd6d4ba87d913
Reviewed-on: https://skia-review.googlesource.com/8041
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Reed <reed@google.com>
/external/skia/src/core/SkMatrix.cpp
67c18d6b5188a0497f6912a73d964c763d2f8f84 20-Jan-2017 Robert Phillips <robertphillips@google.com> Continue making Ganesh use absolute texture coordinates - take 2

The idea here is that the GrCoordTransform will actually hold a GrTextureProxy (rather than a GrTexture) and then, in GrGLSLPrimitiveProcessor::GetTransformMatrix, use the instantiated width & height (when uploading the transform matrix)

Relanding of: https://skia-review.googlesource.com/c/6977/


Change-Id: Ibc9b9e354f7fc23b1a6e6e4fe7c9fe3cef771c02
Reviewed-on: https://skia-review.googlesource.com/7265
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/core/SkMatrix.cpp
a7d61a65ee7f7b2a2f6fce59faaca0762cef4c67 17-Jan-2017 Joe Gregorio <jcgregorio@google.com> Revert "Continue making Ganesh use absolute texture coordinates"

This reverts commit 4493a9dc9df8cf306a974bde7e0e9c5470ebcdc9.

Reason for revert: Continuing failures https://luci-milo.appspot.com/swarming/task/33c693c3539a1410

Change-Id: Id371d6df6a875a5f6872f4ebd91b08a354d949de
Reviewed-on: https://skia-review.googlesource.com/7125
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
/external/skia/src/core/SkMatrix.cpp
4493a9dc9df8cf306a974bde7e0e9c5470ebcdc9 17-Jan-2017 Robert Phillips <robertphillips@google.com> Continue making Ganesh use absolute texture coordinates

The idea here is that the GrCoordTransform will actually hold a GrTextureProxy (rather than a GrTexture) and then, in GrGLSLPrimitiveProcessor::GetTransformMatrix, use the instantiated width & height (when uploading the transform matrix)

Change-Id: Ibac3a540fcb1967ceef571157d41c1937acfadf8
Reviewed-on: https://skia-review.googlesource.com/6977
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
/external/skia/src/core/SkMatrix.cpp
a39667c848146d9070e1a45662fb292d8e6bb8fb 22-Aug-2016 reed <reed@google.com> add SkMatrixPriv for specialized helpers

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

Review-Url: https://codereview.chromium.org/2268443002
/external/skia/src/core/SkMatrix.cpp
cbdf007bc2eb85056a1a5c75c088202becba2d16 19-Aug-2016 mtklein <mtklein@chromium.org> Fast path translate() in SkCanvas and SkLiteDL.

This adds didTranslate() so that SkLiteDL (and other canvas recorders)
can record the translate rather than the full concat.

It also adds a case to SkMatrix::preTranslate() to fast path
translate x translate -> translate (i.e. +=).

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

Committed: https://skia.googlesource.com/skia/+/5fa47f4fd13b3158de4599414c86d17649c2dd1c

Misc bots failing in pictureimagefilter replay modes.
https://luci-milo.appspot.com/swarming/task/30b8e53f3a1f4f10/steps/dm/0/stdout

Problem is FMA vs. not.

CQ_INCLUDE_TRYBOTS=master.client.skia:
Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Fast-Trybot

Review-Url: https://codereview.chromium.org/2255283002
/external/skia/src/core/SkMatrix.cpp
954df2fe9f4f66655c99af08b108cb582c402c5d 19-Aug-2016 mtklein <mtklein@google.com> Revert of Fast path translate() in SkCanvas and SkLiteDL. (patchset #5 id:80001 of https://codereview.chromium.org/2255283002/ )

Reason for revert:
speculative

Original issue's description:
> Fast path translate() in SkCanvas and SkLiteDL.
>
> This adds didTranslate() so that SkLiteDL (and other canvas recorders)
> can record the translate rather than the full concat.
>
> It also adds a case to SkMatrix::preTranslate() to fast path
> translate x translate -> translate (i.e. +=).
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2255283002
>
> Committed: https://skia.googlesource.com/skia/+/5fa47f4fd13b3158de4599414c86d17649c2dd1c

TBR=herb@google.com,reed@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/2264433002
/external/skia/src/core/SkMatrix.cpp
5fa47f4fd13b3158de4599414c86d17649c2dd1c 19-Aug-2016 mtklein <mtklein@chromium.org> Fast path translate() in SkCanvas and SkLiteDL.

This adds didTranslate() so that SkLiteDL (and other canvas recorders)
can record the translate rather than the full concat.

It also adds a case to SkMatrix::preTranslate() to fast path
translate x translate -> translate (i.e. +=).

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

Review-Url: https://codereview.chromium.org/2255283002
/external/skia/src/core/SkMatrix.cpp
c5769b2e49a63516f313f42969983f2b9e4d59e0 10-Aug-2016 halcanary <halcanary@google.com> Revert of Change mapRectScaleTranslate to pass args/ret by value (patchset #2 id:20001 of https://codereview.chromium.org/2138943002/ )

Reason for revert:
Build-Ubuntu-GCC-Arm7-Release-Android fails.

Original issue's description:
> Change mapRectScaleTranslate to pass args/ret by value
>
> This reverts commit 6092b6e0e57be20d2e1ad079c0af133d2f67bfd3.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2138943002
>
> Committed: https://skia.googlesource.com/skia/+/1bd13ca922d6448d595064faee486eaf3fa56e56

TBR=mtklein@google.com,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:

Review-Url: https://codereview.chromium.org/2234843002
/external/skia/src/core/SkMatrix.cpp
1bd13ca922d6448d595064faee486eaf3fa56e56 10-Aug-2016 reed <reed@google.com> Change mapRectScaleTranslate to pass args/ret by value

This reverts commit 6092b6e0e57be20d2e1ad079c0af133d2f67bfd3.

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

Review-Url: https://codereview.chromium.org/2138943002
/external/skia/src/core/SkMatrix.cpp
718aab1e3f02f57f79072f70906acab866ace155 19-Jul-2016 kolczyk <kolczyk@opera.com> Fix the assert and clamping in SkMatrix::get*Scale[s]().

Follow-up after https://codereview.chromium.org/2143133005/.

BUG=skia:4718
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2154123003

Review-Url: https://codereview.chromium.org/2154123003
/external/skia/src/core/SkMatrix.cpp
cea22ae2349502334312bd1d9e10ffa894f70e05 16-Jul-2016 kolczyk <kolczyk@opera.com> Guard SkMatrix::get*Scale[s]() against negative nearly-zero values.

BUG=skia:4718
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2143133005

Review-Url: https://codereview.chromium.org/2143133005
/external/skia/src/core/SkMatrix.cpp
6092b6e0e57be20d2e1ad079c0af133d2f67bfd3 10-Jul-2016 reed <reed@google.com> Revert of change mapRectScaleTranslate to pass args/ret by value (patchset #1 id:1 of https://codereview.chromium.org/2137853002/ )

Reason for revert:
Triggered a compiler bug on Android?

FAILED: /usr/bin/ccache /b/work/skia/platform_tools/android/bin/../toolchains/arm-r11c-14/bin/arm-linux-androideabi-g++ -MMD -MF obj/src/core/core.SkMatrix.o.d -DSK_INTERNAL -DSK_GAMMA_APPLY_TO_A8 -DQT_NO_KEYWORDS -DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=0 -DSK_SUPPORT_GPU=1 -DSK_FORCE_DISTANCE_FIELD_TEXT=0 -DSK_HAS_GIF_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_TEST_QCMS -DSK_IS_BOT -DSK_CODEC_DECODES_RAW -DSK_ARM_HAS_NEON -DSK_BUILD_FOR_ANDROID -DSK_GAMMA_EXPONENT=1.4 -DSK_GAMMA_CONTRAST=0.0 -DSKIA_DLL -DSKIA_IMPLEMENTATION=1 -DSK_SUPPORT_LEGACY_CLIPTOLAYERFLAG -DNDEBUG -I../../../include/c -I../../../include/config -I../../../include/core -I../../../include/pathops -I../../../include/ports -I../../../include/private -I../../../include/utils -I../../../include/images -I../../../src/core -I../../../src/sfnt -I../../../src/image -I../../../src/opts -I../../../src/utils -I../../../include/gpu -I../../../src/gpu -I../../../platform_tools/android/third_party/cpufeatures -fPIC -g -fno-exceptions -fstrict-aliasing -Wall -Wextra -Winit-self -Wpointer-arith -Wsign-compare -Wvla -Wno-unused-parameter -Werror -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=softfp -fuse-ld=gold -O2 -std=c++11 -fno-rtti -fno-threadsafe-statics -Wnon-virtual-dtor -c ../../../src/core/SkMatrix.cpp -o obj/src/core/core.SkMatrix.o
../../../src/core/SkMatrix.cpp: In member function 'SkRect SkMatrix::mapRectScaleTranslate(SkRect) const':
../../../src/core/SkMatrix.cpp:1120:1: error: unrecognizable insn:
}
^
(insn 32 31 33 2 (set (reg:V4SF 115 [ D.83077 ])
(unspec:V4SF [
(mem/c:V4SF (reg/f:SI 104 virtual-incoming-args) [0 MEM[(const __builtin_neon_sf[4] *)&src]+0 S16 A32])
] UNSPEC_VLD1)) /b/work/skia/platform_tools/android/toolchains/arm-r11c-14/lib/gcc/arm-linux-androideabi/4.9/include/arm_neon.h:8693 -1
(nil))
../../../src/core/SkMatrix.cpp:1120:1: internal compiler error: in extract_insn, at recog.c:2202
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://source.android.com/source/report-bugs.html> for instructions.

Original issue's description:
> change mapRectScaleTranslate to pass args/ret by value
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2137853002
>
> TBR=mtklein
>
> Committed: https://skia.googlesource.com/skia/+/14dce6ed5934d7a6e1fac79f8e76e12f5670aae2

TBR=msarett@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/2139523002
/external/skia/src/core/SkMatrix.cpp
14dce6ed5934d7a6e1fac79f8e76e12f5670aae2 10-Jul-2016 reed <reed@google.com> change mapRectScaleTranslate to pass args/ret by value

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

TBR=mtklein

Review-Url: https://codereview.chromium.org/2137853002
/external/skia/src/core/SkMatrix.cpp
47df89ebfd548de2ccd91387e1d7eee418b65f96 30-Jun-2016 reed <reed@google.com> speed up maprect for scale+trans case

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

Review-Url: https://codereview.chromium.org/2111703002
/external/skia/src/core/SkMatrix.cpp
567118fbe69f9d0e245ddc0a6c312b6b9b70233f 14-Apr-2016 mtklein <mtklein@chromium.org> Graduate matrix map-point procs out of SkOpts.

These are implemented generically with Sk4s and don't benefit
from anything fancier than vanilla SSE/NEON.

This means there's no need to hide this code away in another
file or behind a function pointer... it's readable and we have
compile-time support for all the instructions it needs.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1872193002
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot

Review URL: https://codereview.chromium.org/1872193002
/external/skia/src/core/SkMatrix.cpp
8e17556349132a46c02fbabcaf74b63f521528e0 16-Feb-2016 benjaminwagner <benjaminwagner@google.com> Change SkMatrix::fixedStepInX to return SkVector (of SkScalar) rather than SkFixed.

All users were immediately converting to SkScalar or SkFixed3232.

This method is not used in Chromium, Android, or Google3.

BUG=skia:4632
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1692013002

Review URL: https://codereview.chromium.org/1692013002
/external/skia/src/core/SkMatrix.cpp
8f66a8862f96bb364cfc857df7d29757f62f3396 25-Jan-2016 fmalita <fmalita@chromium.org> Delete 2 legacy flags

No longer used in Chrome/Android:

SK_SUPPORT_LEGACY_ANISOTROPIC_MIPMAPS
SK_SUPPORT_LEGACY_PRESCALE_SEMANTICS

R=caryclark@google.com,reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1632633002

Review URL: https://codereview.chromium.org/1632633002
/external/skia/src/core/SkMatrix.cpp
c7e211acd0c9201688de7ff0c9a2271c67440adf 07-Jan-2016 fmalita <fmalita@chromium.org> SkTreatAsSprite should take AA into account

Currently we always call SkTreatAsSprite with 0 subpixel bits, which means
subpixel translations are ignored. This is incorrect for the anti-aliased
case (drawSprite always pixel-snaps, so we lose edge AA).

The CL updates SkTreatAsSprite to take an SkPaint argument and use 8 subpixel
bits when AA is requested.

Also remove unused SkTreatAsSpriteFilter.

BUG=skia:4761
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1566943002

Committed: https://skia.googlesource.com/skia/+/983dc2541a729609037a05eba731b3eb9788c517

Review URL: https://codereview.chromium.org/1566943002
/external/skia/src/core/SkMatrix.cpp
5423ee17ed5a1becd0aeaa89d8faaaa5e2696cbb 07-Jan-2016 reed <reed@google.com> Revert of SkTreatAsSprite should take AA into account (patchset #5 id:80001 of https://codereview.chromium.org/1566943002/ )

Reason for revert:
Need to use SkLeftShift since the arg could be negative

Original issue's description:
> SkTreatAsSprite should take AA into account
>
> Currently we always call SkTreatAsSprite with 0 subpixel bits, which means
> subpixel translations are ignored. This is incorrect for the anti-aliased
> case (drawSprite always pixel-snaps, so we lose edge AA).
>
> The CL updates SkTreatAsSprite to take an SkPaint argument and use 8 subpixel
> bits when AA is requested.
>
> Also remove unused SkTreatAsSpriteFilter.
>
> BUG=skia:4761
> R=reed@google.com
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1566943002
>
> Committed: https://skia.googlesource.com/skia/+/983dc2541a729609037a05eba731b3eb9788c517

TBR=fmalita@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4761

Review URL: https://codereview.chromium.org/1569873003
/external/skia/src/core/SkMatrix.cpp
983dc2541a729609037a05eba731b3eb9788c517 07-Jan-2016 fmalita <fmalita@chromium.org> SkTreatAsSprite should take AA into account

Currently we always call SkTreatAsSprite with 0 subpixel bits, which means
subpixel translations are ignored. This is incorrect for the anti-aliased
case (drawSprite always pixel-snaps, so we lose edge AA).

The CL updates SkTreatAsSprite to take an SkPaint argument and use 8 subpixel
bits when AA is requested.

Also remove unused SkTreatAsSpriteFilter.

BUG=skia:4761
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1566943002

Review URL: https://codereview.chromium.org/1566943002
/external/skia/src/core/SkMatrix.cpp
ef2c7c705748e4c563c468f667dae7a9a38ffabc 18-Dec-2015 bsalomon <bsalomon@google.com> Make SkMatrix::get*Scale[s]() fail on NaN

BUG=skia:4718
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1532963002

Review URL: https://codereview.chromium.org/1532963002
/external/skia/src/core/SkMatrix.cpp
a379da41b7b0408c834db967c0034fd7f611aa83 17-Dec-2015 fmalita <fmalita@chromium.org> SkMatrix::preScale() is too conservative

SkMatrix::preScale() always sets the kScale bit, which means something
like

m = SkMatrix::MakeScale(2, 2);
m.preScale(0.5, 0.5);

leaves m.getType() == kScale_Mask, and can throw off the bitmap proc
heuristics.

We could detect the inverse case and clear the scale bit instead.

R=reed@google.com,caryclark@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1531323002

Review URL: https://codereview.chromium.org/1531323002
/external/skia/src/core/SkMatrix.cpp
d5c4265b49d212f7888d0516328f39c4d45d3058 07-Dec-2015 tomhudson <tomhudson@google.com> Fix up signed-integer-overflow warnings

When checking whether a matrix was a pure scale, we subtracted
0x3f800000 from the diagonals; if the diagonal value was already
very negative, we'd underflow. Replace subtraction with XOR.

When dealing with repeating tiled bitmaps, when the bitmap was
very large, we'd multiply an offset by 65535, possibly causing
underflow. Throw in a cast to long (casting to unsigned also
silences the warning and wouldn't involve extension, but I can't
convince myself that it's correct).

BUG=skia:4635
R=mtklein@google.com

Review URL: https://codereview.chromium.org/1504933002
/external/skia/src/core/SkMatrix.cpp
4e8a09d3672702704436112f3aa5611bd79b2690 10-Sep-2015 mtklein <mtklein@chromium.org> Port SkMatrix opts to SkOpts.

No changes to the code, just moved around.

This will have the effect of enabling vectorized code on ARMv7.
Should be no effect on ARMv8 or x86, which would have been vectorized already.

nanobench --match mappoints changes on Nexus 5 (ARMv7):

_affine: 132 -> 95
_scale: 118 -> 47
_trans: 60 -> 37

A teaser:
We should next look at the ABCD->BADC shuffle we've noted that we need in _affine. A quick hack showed doing that optimally is another ~35% speedup on x86. Got to figure out how to do it best on ARM though: that same quick hack was a 2x slowdown there. Good reason to resurrect that SkNx_shuffle() CL!

(I believe the answers are vrev64q_f32(v) and _mm_shuffle_ps(v,v, _MM_SHUFFLE(2,3,0,1), but we should probably find out in another CL.)

BUG=skia:4117

Review URL: https://codereview.chromium.org/1320673014
/external/skia/src/core/SkMatrix.cpp
96fcdcc219d2a0d3579719b84b28bede76efba64 27-Aug-2015 halcanary <halcanary@google.com> Style Change: NULL->nullptr
DOCS_PREVIEW= https://skia.org/?cl=1316233002

Review URL: https://codereview.chromium.org/1316233002
/external/skia/src/core/SkMatrix.cpp
afd7c749724ccceb88761c52c196ba371be5fb1c 25-Aug-2015 bungeman <bungeman@google.com> Remove SK_OFFSETOF from SkTypes, clean up offsetof usage.

The motivation for this was to remove SK_OFFSETOF from SkTypes, but
this CL is mostly about cleaning up our use of offsetof generally.

SK_OFFSETOF is removed to SkTypes and added to the two places it is
actually used (for the non standard behavior of finding the offset of
fields in types which are not standard layout).

Older versions of gcc required POD for offsetof to be used without
warning. Newer versions require the more relaxed standard layout.
Now that we no longer build on older versions of gcc, remove the
old warning suppressions.

PODMatrix is renamed to AggregateMatrix. SkMatrix is already POD
(trivial and standard layout). The PODMatrix name implies that the
POD-ness is needed for the offsetof, but it is actually the aggregate
attribute which is needed for compile time constant initialization.
This makes it more obvious that this can be revisited after we can
rely on constexpr constructors.

This also adds skstd::declval since this allows removal of existing
awkward code which casts a constant to a pointer to find the size of
a field.

TBR=reed@google.com
No API change, only removes unused macro.

Review URL: https://codereview.chromium.org/1309523003
/external/skia/src/core/SkMatrix.cpp
99fe82260633fcf5d92cca38d12ef0937ecca61c 20-Aug-2015 bungeman <bungeman@google.com> Use static_assert instead of SK_COMPILE_ASSERT.

Now that static_assert is allowed, there is no need to use a non-
standard compile time assertion

Review URL: https://codereview.chromium.org/1306443004
/external/skia/src/core/SkMatrix.cpp
07abbbec4b3104d24b2c6465761d9385b631feca 06-Jul-2015 robertphillips <robertphillips@google.com> Fix up SkMatrix::isFinite call

Review URL: https://codereview.chromium.org/1228473004
/external/skia/src/core/SkMatrix.cpp
ca10953d9ca38a5486c11cc50ac3fd27d4281e12 26-Jun-2015 reed <reed@google.com> implement drawAtlas natively on gpu-device

BUG=skia:

Review URL: https://codereview.chromium.org/1216433002
/external/skia/src/core/SkMatrix.cpp
71c3c760a83123ee0b3127b8c65c6394ce541c50 24-Jun-2015 reed <reed@google.com> add SkCanvas::drawAtlas

BUG=skia:

Review URL: https://codereview.chromium.org/1181913003
/external/skia/src/core/SkMatrix.cpp
8b1fa6dd8d9c573d535dc5c427d71e0cabcc5747 19-Jun-2015 robertphillips <robertphillips@google.com> Fix precision error in https://codereview.chromium.org/1188433011/

TBR=reed@google.com

Review URL: https://codereview.chromium.org/1192853002
/external/skia/src/core/SkMatrix.cpp
20eee3f047f56b7715b311313b2998daaaf08a96 19-Jun-2015 robertphillips <robertphillips@google.com> Added check for ill-conditioned invert

sk_inv_determinant has a guard that the determinant can't get too big so this CL only checks if the determinant gets too small.

BUG=492263

Review URL: https://codereview.chromium.org/1188433011
/external/skia/src/core/SkMatrix.cpp
f57546ec7f9ab116d80044e19aa5e72060dbff09 09-Apr-2015 fmalita <fmalita@chromium.org> Remove SK_SUPPORT_LEGACY_SCALAR_MAPPOINTS

No longer used in Chromium.

Also drop now-unused SkMatrix::Rot_pts() & SkMatrix::RotTrans_pts().

BUG=475022
R=reed@google.com,mtklein@google.com

Review URL: https://codereview.chromium.org/1071833002
/external/skia/src/core/SkMatrix.cpp
c9adb05b64fa0bfadf9d1a782afcda470da68c9e 30-Mar-2015 mtklein <mtklein@chromium.org> Refactor Sk2x<T> + Sk4x<T> into SkNf<N,T> and SkNi<N,T>

The primary feature this delivers is SkNf and SkNd for arbitrary power-of-two N. Non-specialized types or types larger than 128 bits should now Just Work (and we can drop in a specialization to make them faster). Sk4s is now just a typedef for SkNf<4, SkScalar>; Sk4d is SkNf<4, double>, Sk2f SkNf<2, float>, etc.

This also makes implementing new specializations easier and more encapsulated. We're now using template specialization, which means the specialized versions don't have to leak out so much from SkNx_sse.h and SkNx_neon.h.

This design leaves us room to grow up, e.g to SkNf<8, SkScalar> == Sk8s, and to grown down too, to things like SkNi<8, uint16_t> == Sk8h.

To simplify things, I've stripped away most APIs (swizzles, casts, reinterpret_casts) that no one's using yet. I will happily add them back if they seem useful.

You shouldn't feel bad about using any of the typedef Sk4s, Sk4f, Sk4d, Sk2s, Sk2f, Sk2d, Sk4i, etc. Here's how you should feel:
- Sk4f, Sk4s, Sk2d: feel awesome
- Sk2f, Sk2s, Sk4d: feel pretty good

No public API changes.
TBR=reed@google.com

BUG=skia:3592

Review URL: https://codereview.chromium.org/1048593002
/external/skia/src/core/SkMatrix.cpp
7da19014fda527a52381d85cc50b951031fa4754 29-Mar-2015 reed <reed@chromium.org> use Sk4f for matrix math

Need to land SK_SUPPORT_LEGACY_SCALAR_MAPPOINTS in chrome to suppress Affine
version which causes slight differences (which will need to be rebaselined)

BUG=skia:

Review URL: https://codereview.chromium.org/1045493002
/external/skia/src/core/SkMatrix.cpp
d8b34c26c2a2f8e37e0cc9a7910306aecacadd92 27-Mar-2015 reed <reed@google.com> use table of procs (and unrolling) to speed up mapPts

BUG=skia:

Review URL: https://codereview.chromium.org/1040783002
/external/skia/src/core/SkMatrix.cpp
8010632f2408ce9d840c1dcd26a8be0e4967233e 23-Mar-2015 reed <reed@google.com> remove meaningless matrix benches, add mapPts() and add new benches

mapPts definitely faster than mapPoints (identity and perspective same speed). Up to 3x for large values of N.

cloned from https://codereview.chromium.org/1031443002/

BUG=skia:

Review URL: https://codereview.chromium.org/1030653002
/external/skia/src/core/SkMatrix.cpp
adf9990cb56ca389f37f02ac637496083b3c3cfc 20-Mar-2015 reed <reed@google.com> add SkMatrix::decomposeScale

BUG=skia:

Review URL: https://codereview.chromium.org/1006173005
/external/skia/src/core/SkMatrix.cpp
0899696e9fec7d376b63655bedaed76871cb15c2 12-Jan-2015 qiankun.miao <qiankun.miao@intel.com> Fix overlap test for 64-bit pointers in SkMatrix

BUG=skia:3297

Review URL: https://codereview.chromium.org/803493008
/external/skia/src/core/SkMatrix.cpp
451e822705174c8fe9f5b172c8783d9be3c4c79c 13-Dec-2014 reed <reed@chromium.org> add get9 and set9 to matrix, to aid in making keys

BUG=skia:
TBR=
NOTREECHECKS=True

Review URL: https://codereview.chromium.org/806543002
/external/skia/src/core/SkMatrix.cpp
9b1dd15d6d90bf623679f4e9b81b29fe9ab82807 18-Nov-2014 reed <reed@chromium.org> don't normalize after perspective concat

BUG=skia:

Review URL: https://codereview.chromium.org/734513004
/external/skia/src/core/SkMatrix.cpp
2cc22b8f2fe4d11e5709ec5ab73adccebb262249 03-Oct-2014 reed <reed@chromium.org> make SkMatrix::dump always available

BUG=skia:
TBR=

Review URL: https://codereview.chromium.org/624783002
/external/skia/src/core/SkMatrix.cpp
d1f0ebd0e237c74876f780126696daed9d63f80b 02-Oct-2014 reed <reed@google.com> specialize setConcat for scale+translate

This reverts commit 2a382f519999109b2e3445e73ddb4f0eae926b51.

BUG=skia:

Review URL: https://codereview.chromium.org/626583002
/external/skia/src/core/SkMatrix.cpp
2a382f519999109b2e3445e73ddb4f0eae926b51 02-Oct-2014 robertphillips <robertphillips@google.com> Revert of specialize setConcat for scale+translate (patchset #1 id:1 of https://codereview.chromium.org/620433002/)

Reason for revert:
Experimental to see if this revert "fixes" nanobench on the main console.

Original issue's description:
> specialize setConcat for scale+translate, helps drawText perf
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/e8db3ef2a2161084fa8eb1fd1d54c35bfff52d6c

TBR=jvanverth@google.com,reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/620973003
/external/skia/src/core/SkMatrix.cpp
e8db3ef2a2161084fa8eb1fd1d54c35bfff52d6c 30-Sep-2014 reed <reed@google.com> specialize setConcat for scale+translate, helps drawText perf

BUG=skia:
R=jvanverth@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/620433002
/external/skia/src/core/SkMatrix.cpp
a10742c69ce47d346e3cf23e7be909c9f29b401e 18-Sep-2014 caryclark <caryclark@google.com> update to accommodate latest clang in chrome toolchain

remove asserts for null pointers to references
change var args signature to pointer instead of array

R=mtklein@google.com, reed@android.com, reed@google.com, mtklein, reed

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/577243002
/external/skia/src/core/SkMatrix.cpp
49f085dddff10473b6ebf832a974288300224e60 05-Sep-2014 bsalomon <bsalomon@google.com> "NULL !=" = NULL

R=reed@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/544233002
/external/skia/src/core/SkMatrix.cpp
17a845f76094eb3b5ac464556fced2a60dd0f088 02-Sep-2014 jvanverth <jvanverth@google.com> Fix matrix similarity test on arm64

Addresses precision issue by using a simpler test.
Also fixes issues with IvMatrix::preservesRightAngles, and adds unit tests.

BUG=skia:2405
R=robertphillips@google.com, egdaniel@google.com, djsollen@google.com, reed@google.com

Author: jvanverth@google.com

Review URL: https://codereview.chromium.org/520123002
/external/skia/src/core/SkMatrix.cpp
ada3635c8e83739f45cd52459d3e052783d1a40e 02-Jun-2014 mtklein <mtklein@chromium.org> Compile-time initialize special SkMatrices.

BUG=skia:
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/303263011
/external/skia/src/core/SkMatrix.cpp
78358bf624c7e7c09ffccf638c50870808d884d6 02-Jun-2014 mtklein <mtklein@chromium.org> Port most uses of SkOnce to SkLazyPtr.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=15006

Committed: http://code.google.com/p/skia/source/detail?r=15014

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/304383005
/external/skia/src/core/SkMatrix.cpp
f71e8fd0c5d2da9795d00a5b81b716ae585be14a 31-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/)

Reason for revert:
linux x86-64 release segfault in src/ports/SkFontHost_fontconfig.cpp:107

http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX660-x86_64-Release/builds/905/steps/RunTests/logs/stdio

Original issue's description:
> Port most uses of SkOnce to SkLazyPtr.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=15006
>
> Committed: http://code.google.com/p/skia/source/detail?r=15014

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@15015 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
56f7cca144c539ec01f00d6382fded362ff193a3 31-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Port most uses of SkOnce to SkLazyPtr.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=15006

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@15014 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
f6351a071810b3a848a5002a0c0ba7e1490fd0db 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/)

Reason for revert:
Leaking refs on SkTypeface on Macs.

Original issue's description:
> Port most uses of SkOnce to SkLazyPtr.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=15006

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@15009 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
5a70945ddd036b8079987954123ff8f382c285af 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Port most uses of SkOnce to SkLazyPtr.

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

Author: mtklein@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@15006 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
311a3cda9457d50cc7c2a0fc9f153a9ce2c8cb8e 20-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add function to get both min and max scale factors from matrix

R=reed@google.com, jvanverth@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14804 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
1878651990d7c9da72cf43481432232bbef3550d 20-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename SkMatrix::get(Max|Min)Stretch to get(Min|Max)Scale

R=reed@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14798 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
92362383a4de7b0d819c88fa8b74242bb2507602 18-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkCanvas matrix ops return value.

The internal SkMatrix ops can no longer fail -> we can remove the bool
return value.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com, scroggo@google.com, fmalita@google.com

Author: fmalita@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13849 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
0f10f7bf1fb43ca6346dc220a076773b1f19a367 13-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow toString capability to be toggled independent of developer mode.

This change is motivated by the desire to see the text information in the debugger when not in developer mode. It is structured so user's can disable it if the capability is not wanted.

R=bsalomon@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13795 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
0b9ada1318acf7d5fe90c57331c2a4548aad8b98 30-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove (unnecessary) SkScalarMul and SkScalarMulAdd macros from SkMatrix.cpp.

SkScalarMulDiv remains, but it can be removed later (though it is slightly clearer to use it at times).

BUG=skia:
R=caryclark@google.com, mtklein@google.com, halcanary@google.com

Author: reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13252 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
bf0001d0472d727266762c5967ec0d919a6df083 13-Jan-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove remaining references to Sk64 (obsolete)

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13042 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
83c6a2252555a974be4054aaca3a294e76efc32a 18-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove last remnant of SK_SCALAR_IS_FIXED code

move SkScalarMean into its only caller, reducing out public API exposure

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12733 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
6e252d49c9bb6b805478560dd99b83ff1d1411de 18-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move SkScalarMean into its only caller, reducing out public API exposure

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12732 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
8f4d2306fa866a26f9448048ff63f692b2ba43aa 17-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SK_SCALAR_IS_[FLOAT,FIXED] and assume floats

To keep the CL (slightly) managable, this does not make any changes to
existing macros (e.g. SkScalarMul). Just tackling #ifdef constructs this
time around.

BUG=
R=bsalomon@google.com, caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12712 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
3c12840b234e614faf569e80f311a77ce65d9fe0 16-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkFP.h and replace SkFP with SkScalar stop respecting SK_SOFTWARE_FLOAT, assume its always false stop respecting SK_SCALAR_SLOW_COMPARES, assume its always false

BUG=
R=caryclark@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12686 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
c0784dbd408596aff13a5d97448f7a9e5d3cf7d9 13-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkScalarCompare type and header

BUG=
R=fmalita@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12681 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
cea9abb001b07eaf4340a78db708bfac9e8c68c2 09-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Do not use GrBicubic effect when downscaling. Also, don't use glTexStorage as it interferes with deleyed mipmap generation.

R=robertphillips@google.com

Author: bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12576 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
6e223af090c6f17e3bcd48f049e592ca30a95c5c 22-Nov-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> I feel like my clang is especially sensitive to unused variables.

BUG=

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12369 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
9e59cb69e1907de6400c4e90fb2918fc1b7f013d 21-Nov-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix compiler error where SK_SCALAR_IS_FLOAT is not defined. (attempt 2)

R=reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12352 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
5df06a2fea7078387eb8eeaedfa283825e774015 21-Nov-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix compiler error where SK_SCALAR_IS_FLOAT is not defined.

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12349 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
4faa869cdabbdcf4867118b4a1272296baaeeb52 05-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.

BUG=
R=reed@google.com, mtklein@google.com, senorblanco@chromium.org

Committed: https://code.google.com/p/skia/source/detail?r=12114

Committed: https://code.google.com/p/skia/source/detail?r=12119

Author: sugoi@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12130 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
12a23866fe18e800da1d361d000a359ea36696eb 04-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream."

This reverts commit 6bc22e8ef1ea70a1b58409aa21254358c50f149a.

git-svn-id: http://skia.googlecode.com/svn/trunk@12124 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
b48a59ae81a35642fe715a5cdd6fd758b652bff3 04-Nov-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.

BUG=
R=reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=12114

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12119 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
eb221268ab1067af7c48e04a75147d4bcca87191 04-Nov-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r12114 due to https://code.google.com/p/skia/issues/detail?id=1794 ('Assertion failures on various buildbots as of r12114')



git-svn-id: http://skia.googlecode.com/svn/trunk@12115 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
305f78e8c18a26b7ead11758d6a4fa0519932cca 04-Nov-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Checking structure sizes before reading them from memory to avoid overflowing the buffer's stream.

BUG=
R=reed@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@12114 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
1f81fd6546c111e21bc665657e976b9d842192df 23-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SK_ONCE for SkData and SkPathRef

Adds SK_ONCE_FRIEND, to allow SK_DEF_ONCE code to be friends with a class. This had to go in include/core to be visible to headers there.

BUG=
R=reed@google.com, bungeman@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11914 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
3dc82c44706b017877880160ad6af284ec3997e3 11-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Correct 32bit pointer assumption in assert in SkMatrix.


git-svn-id: http://skia.googlecode.com/svn/trunk@11739 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
21a705d2ebdf0319d45970784950886f62a77141 10-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SK_ONCE for SkMatrix::I()

Going to start doing these in progressively larger and larger bulk,
but I figured the first few changes probably merit caution.

BUG=
R=reed@google.com, bungeman@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11721 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
d5321726466185dce9ae92126044b944f51b3c83 07-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make skia almost compile again with clang.

clang is reporting many unused functions and variables.

R=bsalomon@google.com, robertphillips@google.com, reed@google.com

Author: tfarina@chromium.org

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

git-svn-id: http://skia.googlecode.com/svn/trunk@11630 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
85092f05c406ed5a0c65ff576816924c1a6b903b 04-Sep-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11071 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
25f72ed03485f58998846d80858d64b5a3c40c7f 03-Sep-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Matrix44Test and double-to-float conversion in SVD code

git-svn-id: http://skia.googlecode.com/svn/trunk@11067 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
5b2e2640ed345c4670b99b349f62eb6f9446ec1e 03-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revise SVD code to remove arctangents.
Also added bench for timing matrix decomposition.

R=reed@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/23596006

git-svn-id: http://skia.googlecode.com/svn/trunk@11066 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
259fbaf7a464827bc560517988daeb5836e11e98 15-Aug-2013 egdaniel@google.com <egdaniel@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add homogeneous point mapping to Matrix

Adds mapping of homogeneous points (points with three scalar components,
where the last component is not 1). Includes fix for tests when
running on 32 bit debug builds

BUG=
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@10755 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
f6ad1e8a06120214992fb7f49f5887cb64e3901a 09-Aug-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10659: Add a map homogenous points to SkMatrix


git-svn-id: http://skia.googlecode.com/svn/trunk@10667 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
2fae54d945b5e0e689a619e91da8db28734042c9 09-Aug-2013 egdaniel@google.com <egdaniel@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a map homogenous points to SkMatrix

BUG=
R=bsalomon@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@10659 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
16d53aac9c78635b25d930f1c20d677e8fdd29c3 30-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10426 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
4dcd062803fef457899add1df56e9defb667ce8d 29-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Matrix decomposition cleanup: Add is_degenerate_2x2(), and fix some asserts
(atan2 can take a zero x value, but both x == 0 and y == 0 is undefined).

R=reed@google.com, robertphillips@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/20303003

git-svn-id: http://skia.googlecode.com/svn/trunk@10410 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
5c561cb8d8151d38c69128345106cbf225033a1a 25-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10340 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
08284e4d2421fb6c1978e68038a3568711cd9877 24-Jul-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add basic SVD support to SkMatrix. Allows you to pull out the x- and y-scale factors, sandwiched by two rotations.

R=reed@google.com

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/19569007

git-svn-id: http://skia.googlecode.com/svn/trunk@10322 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
07d3a6575b86845ded0d4bd785aec8f4c2cc99dc 10-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8584 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
df3695e5c72b3b4401e71ff259827d87bfe8a06f 09-Apr-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> First pass at Rect Effect

https://codereview.chromium.org/13521006/



git-svn-id: http://skia.googlecode.com/svn/trunk@8571 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
c490f801b063a0837501feab3d12b73d71f46312 04-Mar-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change random number generator for 'tests' to SkMWCRandom. Also removes some
unused headers and fixes a couple of bugs exposed by changing the random
number generator:

First, the function SkMatrix::getMaxStretch() had an error where it was testing
the square of a number against near-zero. This led to it occasionally taking a
cheaper but imprecise path for computing the eigenvalues of the matrix. It's
been replaced with a check against the square of SK_ScalarNearlyZero.

The second case was a failure in ClipStackTest, where it hit the rare case of
a practically empty clip stack (it has a single Union) and we set a tight
bounds. The bounds rect doesn't get set by GrReducedClip::ReduceClipStack() in
this case, so when it clips the reduced stack it's clipping against garbage,
and the resulting regions don't match. The solution is to initialize the
tightBounds rect.


git-svn-id: http://skia.googlecode.com/svn/trunk@7952 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
13b77e83076d3735a86926f6f48741e1360c525c 22-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete build flags:

SK_IGNORE_TRANS_CLAMP_FIX
SK_IGNORE_1XN_BITMAP_OPT
SK_IGNORE_CLIP_BUG_FIX
SK_IGNORE_FAST_SCALEMATRIX_INVERT
SK_IGNORE_QUAD_STROKE_FIX
SK_IGNORE_MULTIPLY_XFERMODE_OPT
SK_IGNORE_LARGE_DASH_OPT
Review URL: https://codereview.appspot.com/7381050

git-svn-id: http://skia.googlecode.com/svn/trunk@7829 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
e40591d5484762067f976d979c506f126c7779e1 30-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> return if we're invertible for the fast scale+trans case when we have no inverse
matrix to return.
Review URL: https://codereview.appspot.com/7231063

git-svn-id: http://skia.googlecode.com/svn/trunk@7464 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
e16efc1882ab34a0bb3ae361a2d37f840044cf87 26-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
46d3d39e65e0b3ea2ad7c91c176ccafb4df0fa24 22-Jan-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add GPU support for axis-aligned ovals:
- Add drawOval base function to SkDevice, and override in SkGpuDevice
- Move isSimilarityMatrix to SkMatrix (renamed to isSimilarity) and fixed up unit test
- Since both SkGpuDevice::drawOval() and GrContext::drawPath() can try to draw ovals, added GrContext::canDrawOval() and GrContext::internalDrawOval() to avoid duplicate code
- Hooked in axis-aligned oval fill shader
- Enabled GPU stroked circles
- Added stroked circle bench test

Review URL: https://codereview.appspot.com/7137050



git-svn-id: http://skia.googlecode.com/svn/trunk@7304 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
76f9e938df0b5826fd4c80b854ceafaf385cfbe1 15-Jan-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added print out of SkShader information to debugger

https://codereview.appspot.com/7105045/



git-svn-id: http://skia.googlecode.com/svn/trunk@7201 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
4a1362a3c91ae9461a54bf1b04c250b0aa145db4 04-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SK_IGNORE_FAST_SCALEMATRIX_INVERT guard for new invert code



git-svn-id: http://skia.googlecode.com/svn/trunk@7025 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
2fb96cc5d713451216bd63d5dc8d19abc8550730 04-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> special-case matrix invert for translate and scale

update unittest to use diff scale-x and scale-y values, and tests for non-invertible scale matrices
Review URL: https://codereview.appspot.com/7027055

git-svn-id: http://skia.googlecode.com/svn/trunk@7019 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
d9f65e3df45c9b4994c70f6bf13d29985afd2f65 04-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7010 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
ae57358447bac678e3fc458fa2857a349a6a7081 03-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkTreatAsSprite in SkDraw (with guard for chrome if needed)



git-svn-id: http://skia.googlecode.com/svn/trunk@6994 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
422188f3c6286d2991a029027958387b070e4dc6 03-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6982 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
ad514302158887002e83625a837f9ecbe540d1d3 02-Jan-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add unittest for SkTreatAsSprite
Review URL: https://codereview.appspot.com/7042044

git-svn-id: http://skia.googlecode.com/svn/trunk@6974 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
683c3c76cfd2cc71621e570889a16548f8cc88c6 31-Oct-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Shortcut inverting the identity matrix.

Review URL: https://codereview.appspot.com/6775087/




git-svn-id: http://skia.googlecode.com/svn/trunk@6218 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
97cd69ca23b27d88e08727366c29c1147eb564de 12-Oct-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix matrix type in setRectToRect
Review URL: https://codereview.appspot.com/6655055

git-svn-id: http://skia.googlecode.com/svn/trunk@5913 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
fbfcd5602128ec010c82cb733c9cdc0a3254f9f3 23-Aug-2012 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/)

This CL is part I of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6485054

git-svn-id: http://skia.googlecode.com/svn/trunk@5262 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
3ec3ac5ffa929bafa00bd5643b26b096c0084747 09-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused local var (warning fix)



git-svn-id: http://skia.googlecode.com/svn/trunk@5039 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
19263b1e67b31590f9ecb50a1c5bcb6b331c8ef7 13-Jul-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkMatrix line endings (LF)



git-svn-id: http://skia.googlecode.com/svn/trunk@4592 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
6fc5699e777c27c4eea9587a131aecf6e92a677a 12-Jul-2012 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing type mask computation in SkMatrix to make it faster and make it so that matrices have the same type masks as their inverses.
This patch also add bench tests that call invert() followed by mapRect() on various types of matrices. Performance of these tests was greatly affected by typemask computation

Review URL: http://codereview.appspot.com/6380043/
BUG=https://code.google.com/p/chromium/issues/detail?id=135259



git-svn-id: http://skia.googlecode.com/svn/trunk@4562 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
7886ad3de1aa523d5c71f1fa9f355dfcb2412d1d 11-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SK_CAN_USE_FLOAT (deprecated)



git-svn-id: http://skia.googlecode.com/svn/trunk@4232 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
94e75ee46a569cbcdf61fb7f04ee3a69d3ca0896 08-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename the existing flatten(void*) methods.

This change avoids naminc confusion with the SkFlattenable flatten methods and
also changes SkPath to use the void* model instead of taking a SkReader32.
Review URL: https://codereview.appspot.com/6299062

git-svn-id: http://skia.googlecode.com/svn/trunk@4215 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
1f90287df3129cb267422e482c52ebeca6a8990f 01-Jun-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Punctuation cleanup to satisfy idiosyncracies of OpenBSD gcc 4.2.1.
Original patch by landry.breuil.

http://code.google.com/p/skia/issues/detail?id=626



git-svn-id: http://skia.googlecode.com/svn/trunk@4112 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
383963280ddd13030331765fe88d2aefa3e32130 09-Sep-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> [gpu] Remove getMaxStretch for perspective, use mapRadius for perspective path subdiv tol, add test

Review URL: http://codereview.appspot.com/4975063/



git-svn-id: http://skia.googlecode.com/svn/trunk@2246 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
181e9bd9484ece4132e0cc5cfcff602134e5489d 07-Sep-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve gpu path subdiv with perspective, remove tolerance scale, fix comment

Review URL: http://codereview.appspot.com/4993041/



git-svn-id: http://skia.googlecode.com/svn/trunk@2239 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
f244f901a9b76b75447e74cefd077ccf16eb8f40 06-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> detect when scale is really 1.0, and don't mis-mark our flags to kScale



git-svn-id: http://skia.googlecode.com/svn/trunk@2230 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
dd5f7442f65813c1023a59c3380f4446583ccd5d 30-Aug-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkMatrix::getPerspectiveTypeMaskOnly() and SkMatrix::isTriviallyIdentity().
Reduces profile time in setConcat() and computeTypeMask() for demos that
do a lot of matrix concatenation.



git-svn-id: http://skia.googlecode.com/svn/trunk@2191 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
cf9b7505f22aedde30612655e16f330f19ba2470 01-Aug-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix bug in SkMatrix::invert where typemask is not set on inverse when a matrix is inverted into itself.

Review URL: http://codereview.appspot.com/4819050/



git-svn-id: http://skia.googlecode.com/svn/trunk@2002 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976e 28-Jul-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Automatic update of all copyright notices to reflect new license terms.

I have manually examined all of these diffs and restored a few files that
seem to require manual adjustment.

The following files still need to be modified manually, in a separate CL:

android_sample/SampleApp/AndroidManifest.xml
android_sample/SampleApp/res/layout/layout.xml
android_sample/SampleApp/res/menu/sample.xml
android_sample/SampleApp/res/values/strings.xml
android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java
android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java
experimental/CiCarbonSampleMain.c
experimental/CocoaDebugger/main.m
experimental/FileReaderApp/main.m
experimental/SimpleCocoaApp/main.m
experimental/iOSSampleApp/Shared/SkAlertPrompt.h
experimental/iOSSampleApp/Shared/SkAlertPrompt.m
experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig
gpu/src/android/GrGLDefaultInterface_android.cpp
gyp/common.gypi
gyp_skia
include/ports/SkHarfBuzzFont.h
include/views/SkOSWindow_wxwidgets.h
make.bat
make.py
src/opts/memset.arm.S
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
src/ports/SkXMLParser_empty.cpp
src/utils/ios/SkImageDecoder_iOS.mm
src/utils/ios/SkOSFile_iOS.mm
src/utils/ios/SkStream_NSData.mm
tests/FillPathTest.cpp
Review URL: http://codereview.appspot.com/4816058

git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
5c63865b529eb5714e41419dfa23c70d26ff6e4e 18-Jul-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use texture cache for writePixels temp

Review URL: http://codereview.appspot.com/4757050/



git-svn-id: http://skia.googlecode.com/svn/trunk@1887 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
1ddd7c39289b7dd18537fdac4b630e378cd78842 13-Jul-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change pdfTransform to asAffine.
http://codereview.appspot.com/4704044/



git-svn-id: http://skia.googlecode.com/svn/trunk@1851 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
8d430185e08d2067584837a76b7193b803fee7a0 06-Jun-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Increase use of SkMatrix::hasPerspective(), merge in has_perspective().
Unifies SkMatrix::hasPerspective(), has_perspective(), and manual tests of SkMatrix::getType & kPerspective_Mask.



git-svn-id: http://skia.googlecode.com/svn/trunk@1517 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
521ed7c7c2e94f6e32132eb26ef875e3d1a4b331 06-Jun-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Attempt to correct issue with fixed point from SkMatrix changes in r1512.



git-svn-id: http://skia.googlecode.com/svn/trunk@1515 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
ac3852571e4079e7dee8fb576e31048d596c8c17 06-Jun-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Benchmarking suggests that replacing some of the conversions from float to int
with direct floating-point comparisons in computeTypeMask() is a significant win
(up to 40%?).
In practice, we see a 10-15% speedup in this function (the current most
expensive Skia function) in Chrome on the FishIETank demo.

The remainder of the function looks like it ought to be amenable to similar
speedups, but we haven't found a rewrite that behaves well in benchmarking yet.

http://codereview.appspot.com/4551097/


git-svn-id: http://skia.googlecode.com/svn/trunk@1512 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
3fb5187647397e056843c1f41a508992be22175d 01-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> speed-up SkMatrix::preScale by 3x, by special-casing it instead of just calling
concat. Inspired by the profile of the fishtank site



git-svn-id: http://skia.googlecode.com/svn/trunk@1462 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
cc4dac3dac215dc0dd56f7b30d07cc304671b033 10-May-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GrMatrix an alias of SkMatrix. Add new methods to SkMatrix.

Review URL: http://codereview.appspot.com/4538043/

Checked in on behalf of reed@ with some additional work (remove the do-nother sk->gr matrix converter).



git-svn-id: http://skia.googlecode.com/svn/trunk@1289 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
f2b98d67dcb6fcb3120feede9c72016fc7b3ead8 20-Dec-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> merge with changes for GPU backend



git-svn-id: http://skia.googlecode.com/svn/trunk@637 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
ddbbd805b5b453e12cda0b3300e5655d8fb2bc19 26-Oct-2010 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup/unify matrix transform for PDF backend.

Review URL: http://codereview.appspot.com/2719041

git-svn-id: http://skia.googlecode.com/svn/trunk@617 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
0e21ec009a4e2e6343d6a32dfe4c93faf1b01c01 20-Jul-2010 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for SkMatrix::invert() for large coordinate values.

See http://codereview.appspot.com/1731053



git-svn-id: http://skia.googlecode.com/svn/trunk@589 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
ab7ac026d25fcb6e10c042e933f03e5f806c9097 18-Sep-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> more float/double precision tweaks



git-svn-id: http://skia.googlecode.com/svn/trunk@355 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
0b9e2dbf2f51ac41439db2052cf80704d60932f4 16-Sep-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use doubles in matrix.invert() to keep more precision, needed for subtle
bugs when drawing stretched bitmaps (like ninepatch) at nasty scale factors
like 1.5 (where the inverse matrix steps 0.333333, 1.0, 1.666667, etc.)



git-svn-id: http://skia.googlecode.com/svn/trunk@354 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
31745581ca72bd6d4898f1344d2cc6bc41710664 08-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use scalarcomparetype in matrix tests, so we don't do anything tricky
(unnecessary) when floats are fast



git-svn-id: http://skia.googlecode.com/svn/trunk@259 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
4516f4786f5dda1b86a8f825b9e8e910d9c2363c 29-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use sk_bzero instead of bzero, since it isn't always available.



git-svn-id: http://skia.googlecode.com/svn/trunk@244 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
0ad336f8c6f6f0325eee309c9cd501ea432cc33e 29-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add shape flatten so they work properly in pictures
add flatten/unflatten to matrix



git-svn-id: http://skia.googlecode.com/svn/trunk@242 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
ed673310e2551e64d8196f7776d7d4c92085f8c2 27-Feb-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add initial unittest framework (tests)
move some previous unittests out of core classes and into tests



git-svn-id: http://skia.googlecode.com/svn/trunk@96 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp
8a1c16ff38322f0210116fa7293eb8817c7e477e 17-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> grab from latest android



git-svn-id: http://skia.googlecode.com/svn/trunk@27 2bbb7eff-a529-9590-31e7-b0007b416f81
/external/skia/src/core/SkMatrix.cpp