History log of /frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
015ee5f7edac69092788b5ab93e472275e985618 18-Nov-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-build-using-namespace warnings in cpu_ref." am: 6c7e0c1308 am: 248e44fd4d am: 2d7db226f8
am: 70af4c884f

Change-Id: I1ba365aa50baa7bb39a7875b6ce584aabd43b78a
462de21ac2e1773b99aedee012adb374e476ae36 16-Nov-2016 Chih-Hung Hsieh <chh@google.com> Fix google-build-using-namespace warnings in cpu_ref.

* Remove "using namespace ..." statements.
* Replace them with using declarations of the required names.
* Enclose the C++ methods and static and extern "C" functions with
namespace android and renderscript.
* Keep global C++ functions as-is and add using declarations for them.

Bug: 32670901
Test: build with WITH_TIDY=1
Change-Id: I818de466e8786a6c4f9ce0cd8e0fe027f34d7fad
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
f6009df2e4daf9be15b41ac5b4b5d25ba956b0e2 08-Jul-2016 Hidehiko Abe <hidehiko@google.com> Make boundary-check stricter.

There was a bug to access uninitialized buffer.
This CL fixes it.

BUG=b/29375932

Change-Id: I16b57d8f06f493c6996c6aeacdaf139833e62653
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
5a1f196d68d54513c081958adf4ce3dcafed9ea2 21-Apr-2016 Simon Hosie <simon.hosie@arm.com> Refactor ARM Blur prefill logic.

Refactor the prefill logic for ARM (and improve documentation along the way) so
as to fix some cases where data is read outside of the source image, and to
minimise the remaining cases which must fall back to the C implementation.

Change-Id: I3d06416b40c48dea06258e9f7bb5ddc246d7c710
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
c060f1435e7b9405f3be8974417fa6f410f03753 14-May-2015 Stephen Hines <srhines@google.com> Use "override" instead of "virtual" when replacing methods.

Bug: 20306487

Change-Id: Ic83cb04cac153a7556f5d516e8f5ec88b5527b6f
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
b0abb140ac51b93d1a85aadaa63fe057f2d29850 12-Mar-2015 David Gross <dgross@google.com> Pass RsExpandKernelDriverInfo not RsExpandKernelParams.

Which is to say: retire RsExpandKernelParams and pass RsExpandKernelDriverInfo
directly to kernel wrapper functions instead.

Requires related change in frameworks/compile/libbcc.

Change-Id: I453f45ec18f389e88e27fcfa57ddf245d077cb98
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
bfc23288e830aa3689d24f803561d98174c524e3 22-Oct-2014 Jason Sams <jsams@google.com> Enable ASM path for blur intrinsic when clipped

Fix minor clipping bug in ASM code where the start offset was
added twice.

Change-Id: I6d831478b4a7da8460e70015151dbadf16bd7096
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
bf2963268010b1e17cba00674a73287bf12a1be9 04-Sep-2014 Stephen Hines <srhines@google.com> am 2993761f: Merge "Fix bugs for x86 platform"

* commit '2993761fda2146755533886495691936a78871ac':
Fix bugs for x86 platform
a0cdfe05905a5a4d2e494665809c8af9d040c116 01-Sep-2014 Yong Chen <yong.a.chen@intel.com> Fix bugs for x86 platform

- Fix incorrect input/output pointer for blur intrinsic
- Avoid the negative value for length function in bc lib

Change-Id: If173662b63d7aba906a75bb50856d8d50c04639f
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
bff7da6ff43ba594dddeaf15bf4ad4d029eb3897 23-Aug-2014 Dan Albert <danalbert@google.com> am da2f0714: Merge "Fix x86 build for SSSE3."

* commit 'da2f071483b148bba216d40070d87f92785b527f':
Fix x86 build for SSSE3.
ebf0eb95cba9579af7cb67205b94b286f221c4ed 22-Aug-2014 Dan Albert <danalbert@google.com> Fix x86 build for SSSE3.

These functions were previously defined in a C file. The file was
renamed to C++, but the extern "C"s were not removed.

Change-Id: I62ec9ba7c73d24c221bbe3f7580cfd7f09bf701c
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
61db21cef81cbc8439b34a8f1d32952339ffc190 22-Aug-2014 Stephen Hines <srhines@google.com> resolved conflicts for merge of 81cfa2c5 to lmp-dev-plus-aosp

Change-Id: Ia3a7f084693825d4e46a4864788332a7d039d38f
4c513c12f0f620c336efce7b92b8f26aae39ffdd 22-Aug-2014 Jason Sams <jsams@google.com> resolved conflicts for merge of 5f95a8ab to lmp-dev-plus-aosp

Change-Id: I3044361ad6d5af09906e4a32e47efc3f29486514
d25fef7232a939faaffcdb83a1be28285313c38e 22-Aug-2014 Jason Sams <jsams@google.com> Fix blur and 3dlut with clipped output

bug 17157250

Change-Id: I388a255380fbdd9f6b5d1c7cb9f14df6f035ae48
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
44bef6fba6244292b751387f3d6c31cca96c28ad 12-Aug-2014 Chris Wailes <chriswailes@google.com> Replace NULL macros with nullptr literals.

Change-Id: I918c40879aa547438f77e7d1a95fa2aa33bec398
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
9ed79105cc6a8dbfaf959875249f36022cc2c798 26-Jul-2014 Chris Wailes <chriswailes@google.com> Remove the instep parameter.

This patch removes the instep parameter from calls to expanded kernels and
from the CPU reference implementation intrinsics.

Change-Id: I059db548a57702c576963f6b17a002b2ee393cdb
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
80ef693674f69c0343c41564e30f80e7fb513b60 08-Jul-2014 Chris Wailes <chriswailes@google.com> Split the RsForEachStubParamStruct in two.

This patch splits the RsForEachStubParamStruct into two smaller structs, one
used specifically by the driver and the other by the expanded kernels. Doing
so makes it clearer what data is used where. In addition, fewer data are
copied between memory locations during kernel invocation.

Several fields that were not being used were removed from the structs.

Change-Id: I7788ef754add44463b17a6b571c7cde6e73b9712
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
074424a4ac5b093331df2c92e7a5bcbfff136b71 22-May-2014 Jason Sams <jsams@google.com> Enable ARM64 intrinsics.

This also moves ARM intrinsic ifdefs behing ARCH_ARM_USE_INTRINSICS instead of ARCH_ARM_HAVE_VFP.

Change-Id: I48d3d55c77feb931e22288828247e281db43d32b
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
8b7117dfbcca8a74dfd83aaff7f82d2d7e3abd8f 30-Apr-2014 Jean-Luc Brouillet <jeanluc@google.com> Fix comments in gaussian blur

Change-Id: Ifae435f9b2e65d6064412d09558b0c6ea32aea25
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
7b7060c61e4182b29186849c5a857ea5f0898e56 21-Apr-2014 Rose, James <james.rose@intel.com> Improve RS intrinsics performance.

Renderscript CPU performance for intrinsics cases is not good for x86 platforms.
In many cases it is significantly slower even with SIMD Intrinsics. In current x86 implementation
it is using full 32 bit multiplies which aren't well supported on current Atom platforms.

This patch uses 16 bit multiply with 32 bit add pmaddwd instruction where appropriate.
It also adds atom specificoptimizations to improve RS intrinsics performance.

Change-Id: Ifc01b5a6d6f7430d2dc218f1618b9df3fb7937fe
Signed-off-by: Xiaofei Wan <xiaofei.wan@intel.com>
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
446788007efe0a673d0366284026adfa17b36fed 20-Feb-2014 Simon Hosie <simon.hosie@arm.com> Optimisations to blur intrinsic.

Try to keep all data in-register whereever possible, and use only a minimal
circular buffer on the stack when necessary. Implementations in AArch32 and
AArch64 NEON.

Change-Id: If3dd4932a94ee1cadde46e298b8f6bf14b6c2bdc
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
c859de1556dc9ac5c6f5647298bb5c685c5d2bb0 02-Dec-2013 Jason Sams <jsams@google.com> Fix bug in blur when processing odd widths


Change-Id: I10537cb623cf230636f191fd2b84b050d0f42700
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
75adb8213f045bf3ffbc5deb1350b36d486e228a 22-Oct-2013 Jason Sams <jsams@google.com> Fix crash running blur on 4K images

bug 11258120

The temporary buffer could be misaligned due to realloc only
aligning to 8 bytes.

Fix issues with with Histogram and 2/3 vector sizes.

Change-Id: I271f4635ead5ff0a7e7f89bb5cfcbc2bba626e22
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
f5ef8df639ba6363aa5d546e57ce872d04144cb6 06-Aug-2013 Jason Sams <jsams@google.com> Neon detection for RS SDK compat lib.

Change-Id: I3887158c7ec97ba116c28dc7b1d0c789b81fae60
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
0782188b07ceeca03a45b26873bec0ccfd412373 02-Apr-2013 Jason Sams <jsams@google.com> Fix corruption when neon is disabled.

Change-Id: I5b7b143f78bb87c9f26265c45d727ed1b3063a73
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
099bc262f862cdeb547cf8a78fe9e0e92560f437 21-Mar-2013 Tim Murray <timmurray@google.com> Start making RS 64-bit clean.

Change-Id: Ie40ad9a1d2b59094c86eb7e40b358e60120ce213
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
b6d2d2a6bc1cee3e04b7e632a96134bdb56f38ee 23-Feb-2013 Jason Sams <jsams@google.com> Fix corner cases with small blurs.

Change-Id: I7d1d42c3903ca3defd1737bd6e2557e2f5998fe5
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
ce0351debba8dadd1a7af2b3e926de6d787b49af 26-Jan-2013 Jason Sams <jsams@google.com> Fix intrinsic bugs.

Change-Id: I027e5dcd8e538e52a21941facc5b93db2a6eac8c
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
2913f381a554c28abb44f49eddd1ee4c68a72578 15-Jan-2013 Stephen Hines <srhines@google.com> Align all allocations to a 16-byte boundary.

This change also fixes an issue in the Blur intrinsic, where we mis-cast a
float array to float4 (and thus encountered some new alignment errors with
the updated LLVM).

Change-Id: I3955b38f156c35f4d160652c75ab416bae09b2c8
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
c44d6706868749abe37780fc28b2cc627ddcf269 29-Nov-2012 Jason Sams <jsams@google.com> Fix uchar blur with neon offsets

fix hardcoded width limit in blur.

Change-Id: I4f56b8454181110133c4a637b66f1df3c79da33e
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
7079cd8ddb0874d431446aea305b8c3b10e4f0ba 28-Nov-2012 Jason Sams <jsams@google.com> Fix uchar blur performance.

Fix bug with misaligned access on odd width images.

Change-Id: Ie9f40121cf8eddbafdb2149814fcff28fff62036
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
c905efd76fdcc1b8846b229bf7d991d185a7b4b7 27-Nov-2012 Jason Sams <jsams@google.com> Cleanup pass + implement blur uchar

Change-Id: Ib7f1c5218663b468a3c11daa2c3373ae132145ac

Conflicts:

cpu_ref/rsCpuIntrinsicBlend.cpp
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp
709a0978ae141198018ca9769f8d96292a8928e6 16-Nov-2012 Jason Sams <jsams@google.com> Separate CPU driver impl from reference driver.

Change-Id: Ifb484edda665959b81d7b1f890d108bfa20a535d
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlur.cpp