aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/opts/SkBitmapProcState_matrix_neon.h
Commit message (Collapse)AuthorAge
* Avoid SkFixed overflow in decal bitmap procsGravatar Florin Malita2017-01-06
| | | | | | | | | | | | | | | | | | The check for decal mode can overflow in SkFixed. Promote to 64bit (48.16) instead. Also update can_truncate_to_fixed_for_decal() to take SkFixed params and used it in ClampX_ClampY_filter_scale_SSE2(). BUG=chromium:675444 R=reed@google.com CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I759464cdaa5c005159e38e32167fb1937e2a1d28 Reviewed-on: https://skia-review.googlesource.com/6538 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Consolidate TILEX_LOW_BITS/TILEY_LOW_BITS -> EXTRACT_LOW_BITSGravatar Florin Malita2016-12-19
| | | | | | | | | | | R=reed@google.com CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD Change-Id: I5450d1ae3239c9d4e70502fc042222410ac77e72 Reviewed-on: https://skia-review.googlesource.com/6265 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Rename SkBitmapProcStateAutoMapper methodsGravatar fmalita2016-02-03
| | | | | | | | | | | | | | x(),y() -> fractionalIntX(), fractionalIntY() (to clarify the return type) Also add fixed & int helpers. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666433003 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1666433003
* Use SkBitmapProcStateAutoMapper for filter samplers alsoGravatar fmalita2016-02-03
| | | | | | | | | | | | | | | | | | | | | Observation: filter procs are also biased by s.fFilterOne{X,Y} / 2. They all do something along these lines: s.fInvProc(s.fInvMatrix, SkIntToScalar(x) + SK_ScalarHalf, SkIntToScalar(y) + SK_ScalarHalf, &srcPt); SkFixed fx = SkScalarToFixed(srcPt.fX) - (s.fFilterOneX >> 1); SkFixed fy = SkScalarToFixed(srcPt.fY) - (s.fFilterOneX >> 1); It's trivial to extend SkBitmapProcStateAutoMapper to handle this internally, and convert everyone off explicit mapping. R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1661613002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review URL: https://codereview.chromium.org/1661613002
* Sampler bias for all nofilter flavorsGravatar fmalita2016-02-02
| | | | | | | | | | | | Instead of a piecemeal approach to sampler bias (http://crrev.com/1642273002, http://crrev.com/1539083002), audit all nofilter procs (grep "fInvProc(") and convert them to SkBitmapProcStateAutoMapper. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1656833002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot R=reed@google.com Review URL: https://codereview.chromium.org/1656833002
* switch bitmapshader internals over to pixmapGravatar reed2015-06-04
| | | | | | | BUG=skia: NOTRY=True Review URL: https://codereview.chromium.org/1158273007
* ARM Skia NEON patches - 20bis - BitmapProcState accurracyGravatar commit-bot@chromium.org2014-02-20
| | | | | | | | | | | | | | | | Use SkFractionalInt for some calculations to improve accuracy. Signed-off-by: Kévin PETIT <kevin.petit@arm.com> BUG=skia:2175 NOTRY=true R=djsollen@google.com, mtklein@google.com, hshi@chromium.org Author: kevin.petit@arm.com Review URL: https://codereview.chromium.org/167433002 git-svn-id: http://skia.googlecode.com/svn/trunk@13518 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-NightlyGravatar skia.committer@gmail.com2014-01-29
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@13228 2bbb7eff-a529-9590-31e7-b0007b416f81
* ARM Skia NEON patches - 20 - New improved BitmapProcState codeGravatar commit-bot@chromium.org2014-01-28
BitmapProcState: new factorised code This one basically factorises the clamp and repeat transformations with some performance improvements. It has the benefit of being faster, much easier to maintain (nearly three times less code for more work done :-)), and more complete (all persp transformations weren't optimised in the previous version). It also introduces the use of can_truncate_to_fixed_for_decal where useful. The effect on benchmarks ranges from a 5% penalty to a 25% gain on a Cortex-A9 and from a 5% penalty to a 100% gain on a Cortex-A15. Signed-off-by: Kévin PETIT <kevin.petit@arm.com> BUG= R=djsollen@google.com, mtklein@google.com, luisjoseromeroesclusa@hotmail.com, reed@google.com Author: kevin.petit.arm@gmail.com Review URL: https://codereview.chromium.org/23835006 git-svn-id: http://skia.googlecode.com/svn/trunk@13218 2bbb7eff-a529-9590-31e7-b0007b416f81