History log of /frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e0c6f1d59fa8e995cdd80a41cc8ed1d6af35652e 14-Apr-2017 I-Jui (Ray) Sung <ijsung@google.com> Revive forEachDstAtop implementations for NEON/ASIMD

ScriptIntrinsicBlend's forEachDstAtop had broken NEON and ASIMD
implementations and were bypassed.

This CL fixed these two and turned them back on in
RsdCpuScriptIntrinsicBlend::kernel().

Bug: b/22047392
Test: CTS and RsTest on Angler
Change-Id: Ifa41d74222606f1c04b7b4e3fe1b43eb932ead89
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
7974fc03e11f3a8dd40f794f3b33b4889483090c 09-Feb-2017 Rahul Chaudhry <rahulchaudhry@google.com> frameworks/rs: fix typos and clang-tidy warnings

This change fixes a few typos and clang tidy warnings related to the
"llvm-namespace-comment" checks.

Bug: 26936282
Test: WITH_TIDY=1 WITH_TIDY_CHECKS="llvm-namespace-comment" mm
Change-Id: Ic65182e5b4999fbd48d6a8ad7172e4bfeeb541f4
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
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/rsCpuIntrinsicBlend.cpp
49f4e2b958790d692fe54700b00ecdc3e2264085 01-Apr-2016 Yang Ni <yangni@google.com> Merge "Remove unused variables"
a615daa9604a6687e389bfc9c31d793d1b963455 31-Mar-2016 Miao Wang <miaowang@google.com> Fix and enable advsimd_Blend.S for arm64 IntrinsicBlend.

Bug: 27153652

- Fixed address arithmetic for the assembly.
- CTS tests pass.

(cherry picked from commit 644d5943a78b3d84a21a617e7fd7fcd8cff4500a)

Change-Id: I512d978510d00f7b964ddd39c3ccb048e2859058
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
c2459dc5f1c9d299247f77d565c5be5dc57c75e0 25-Mar-2016 Yang Ni <yangni@google.com> Remove unused variables

Bug: 27272549

Also removed unused return value of FifoSocket::init().

Change-Id: Ia5db289a0daefdb3dd8802b5b7e539545e488da2
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
7c892eea2bf1f924b56e68af0b4b03c03cec12ce 06-Aug-2015 Yong Chen <yong.a.chen@intel.com> X86: Fix IntrinsicBlend bugs and re-enable BLEND_DST_ATOP optimization

Bug: 22047392

Change-Id: Ife4cfc6bdb385f360b493fbb7212e1cf8d5d33c3
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
820e22b13fb48bc4719fa606ee4bc47e184970e0 29-Jun-2015 Stephen Hines <srhines@google.com> Fix BLEND_DST_ATOP and disable vectorized optimizations temporarily.

Bug: 22047392

This function needed to assign the 'w' component (alpha channel) of the
source input to the output. This patch does that for the C++ code, but
needs to be updated for the inline assembly that we have for
NEON/ASIMD/SSE. For the time being, we can just disable those paths.

Change-Id: Iaac02ae2d2cb670d299446d5a017d518c0e303da
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.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/rsCpuIntrinsicBlend.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/rsCpuIntrinsicBlend.cpp
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/rsCpuIntrinsicBlend.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/rsCpuIntrinsicBlend.cpp
f37121300217d3b39ab66dd9c8881bcbcad932df 17-Jul-2014 Chris Wailes <chriswailes@google.com> Collapse code paths for single- and multi-input kernels.

This patch simplifies the RenderScript driver and CPU reference implementation
by removing the distinction between sing- and multi-input kernels in many
places. The distinction is maintained in some places due to the need to
maintain backwards compatibility. This permits the deletion of some functions
and struct members that are no longer needed. Several related functions were
also cleaned up.

Change-Id: Id70a223ea5e3aa2b0b935b2b7f9af933339ae8a4
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
4b2bea3dc20865f3a198797702e19912a6a2171c 13-Aug-2014 Stephen Hines <srhines@google.com> Revert "Collapse code paths for single- and multi-input kernels."

This reverts commit 818cfa034e257c7bb48356257f5cb67334e19aa6.

Change-Id: I59f39f52e6c8f60bb01cbcb8ccf2215eaf46a57f
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
818cfa034e257c7bb48356257f5cb67334e19aa6 17-Jul-2014 Chris Wailes <chriswailes@google.com> Collapse code paths for single- and multi-input kernels.

This patch simplifies the RenderScript driver and CPU reference implementation
by removing the distinction between sing- and multi-input kernels in many
places. The distinction is maintained in some places due to the need to
maintain backwards compatibility. This permits the deletion of some functions
and struct members that are no longer needed. Several related functions were
also cleaned up.

Change-Id: I77e4b155cc7ca1581b05bf901c70ae53a9ff0b12
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.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/rsCpuIntrinsicBlend.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/rsCpuIntrinsicBlend.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/rsCpuIntrinsicBlend.cpp
5d06919bc8019322180ea34768a7a4137fa64d11 20-Feb-2014 Simon Hosie <simon.hosie@arm.com> Revised NEON implementations of blend.

Reimplement blend intrinsic using wider memory accesses and a few more 8-bit
operations where possible. Implementations in AArch32 and AArch64 NEON.

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

Change-Id: I3887158c7ec97ba116c28dc7b1d0c789b81fae60
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.cpp
0b575de8ed0b628d84d256f5846500b0385979bd 15-Mar-2013 Tim Murray <timmurray@google.com> Add x86 server support.

Change-Id: I674acaf15b67afa48bc736f72942a11e2e38e940
/frameworks/rs/cpu_ref/rsCpuIntrinsicBlend.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/rsCpuIntrinsicBlend.cpp
709a0978ae141198018ca9769f8d96292a8928e6 16-Nov-2012 Jason Sams <jsams@google.com> Separate CPU driver impl from reference driver.

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