History log of /frameworks/rs/cpu_ref/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ae2ec3febedfc29376b9104413fb4042028f1265 01-Jun-2016 David Gross <dgross@google.com> Delete simple reduction implementation.

Bug: 27298560
Change-Id: I8c3d568e98aaf0b7d86881c985d13ed5b8e95338
sCpuCore.cpp
sCpuCore.h
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
56ecb64783b2637a0ff907c9459a7271881e5963 06-May-2016 Yang Ni <yangni@google.com> Merge "Avoid breaking on dead launch options" into nyc-dev
87643a32d4eaefe349d3a81513fffe0c4e3e8a80 04-May-2016 Yang Ni <yangni@google.com> Avoid breaking on dead launch options

Bug: 28463187

Launch options array[2-4] are not initialized by the support library
in the current SDK.

They may have arbitrary values that invalidate the checks that this CL
is removing, and cause a kernel launch to bail out unnecessarily.

This CL removes those checks, since the array.*Start and array.*End
fields in the launch options are not used anywhere in the current
runtime.

Change-Id: Ib8a2e551619f770b402f569acbde635ee047675a
sCpuScript.cpp
d48481048a68725e79bbe8ba8ea75e710c646fe1 28-Apr-2016 Miao Wang <miaowang@google.com> Fix potential security vulnerability in rsCpuExecutable.cpp

Bug: 28318721
Change-Id: I69a4521bc8fa9c8036f71cac4b846c7118114caa
(cherry picked from commit 523ecf7672c0d7b4c85e9e0674b2d588c42af0dd)
sCpuExecutable.cpp
d708d99149b92fad40fa8e6053ee231afaffe375 21-Apr-2016 Simon Hosie <simon.hosie@arm.com> Refactor ARM Blur prefill logic.

Bug: 28116032
Bug: 28076184

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
(cherry picked from commit 5a1f196d68d54513c081958adf4ce3dcafed9ea2)
sCpuIntrinsicBlur.cpp
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_neon_Blur.S
633beab5de5ffe4c5068cf1c7a1c0bd09ee9f195 20-Apr-2016 Yang Ni <yangni@google.com> Remove unnecessary logcat message

Bug: 28281435
Change-Id: If0865b20576322845cd23743916c4589ea199287
sCpuCore.cpp
sCpuExecutable.cpp
388d02df11f57b12ff7a62dff297e3131766e0c7 08-Apr-2016 David Gross <dgross@google.com> Merge "Multithreaded execution of general reduction kernels over 2D and 3D iteration spaces." into nyc-dev
415a249300cb9ca3f560814bfde52c6796fed1f7 07-Apr-2016 David Gross <dgross@google.com> Multithreaded execution of general reduction kernels over 2D and 3D iteration spaces.

Includes fix for bug in reduce_backward fz3 kernel (combiner function).

Bug: 27299475

Change-Id: I48ed2f99f53dfc786a85e04dc0206cb3ebe98034
sCpuCore.cpp
5e48002cc4a11e9ce63852a77488cfb9f6765c2b 06-Apr-2016 Yang Ni <yangni@google.com> Avoid accessing TLS in rsClearObject()

Bug: 27874893
Bug: 27925095

rsClearObject() may be called on rsContextDestroy() in the JNI thread,
where TLS is not initialized.

This also reverted Icca50fade1199b6f530f963e9e694366b7d8cf67 that
made rsContextDestroy() go through the FIFO. rsContextDestroy() must
happen off the FIFO, since it joins the FIFO consuming thread.

Both the rsClearObject() change and the rsContextDestroy() revert need
to go together to make RenderScript and Camera CTS tests pass. Hence
this single CL for both changes.

Change-Id: I5f1d91a4cc1ce9bf2b3386fbef6f1171638b5266
(cherry picked from commit ade3137c22dd91694742145c2d5fe9d6bae17516)
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScriptGroup2.cpp
8ad1691f2e620ab6d5e9b3e61d03a205d295d056 01-Apr-2016 David Gross <dgross@google.com> Merge "Guard general reduction logging output under property "debug.rs.reduce"." into nyc-dev
6760f7ba7934ddd51938a8d0206fc41c2a7cb419 01-Apr-2016 David Gross <dgross@google.com> Guard general reduction logging output under property "debug.rs.reduce".

Bug: 27299475
Change-Id: I5be634fe38d20b9fe6867ad3c0c0b982442b52fd
sCpuCore.cpp
sCpuCore.h
644d5943a78b3d84a21a617e7fd7fcd8cff4500a 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.

Change-Id: I81ba4cca2ef830f40d17bca6abd60235b71f559e
ndroid.mk
sCpuIntrinsicBlend.cpp
sCpuIntrinsics_advsimd_Blend.S
abe31c581489727afa84f9b756f0d2a0f4be057e 30-Mar-2016 David Gross <dgross@google.com> Merge "Multithreaded execution of certain general reduction kernels; reduction test overhaul." into nyc-dev
10adb0c2029f112b5738228617d5645f6ecea0c5 29-Mar-2016 David Gross <dgross@google.com> Multithreaded execution of certain general reduction kernels; reduction test overhaul.

A reduction kernel is eligible for multithreaded execution if it has a
combiner function and it is launched over a 1D iteration space.

Note: Properties debug.rs.reduce-accum and debug.rs.reduce-split-accum
are added for debugging multithreaded reduction.

The following changes are made to reduction tests in RsTest:
- Overhaul the test framework -- now data-driven, and can execute the same
test multiple times with different seeds and input sizes, features
separate sets of quick correctness tests, full correctness tests,
and performance tests. (Performance tests are not run by default.)
- Report timing information for test execution.
- Report more information for fz* kernel testing.
- Remove dp kernel testing -- this involved floating-point arithmetic
which is not guaranteed to produce identical results between java
and rs or for different rs multithreaded executions.
- Add sumgcd kernel testing. This is intended to be representative of
a compute-heavy kernel.
- findMinAndMax kernel testing must compare cell value not cell index
-- two or more cells might have the same min or max value, and java
and various rs multithreaded executions are not guaranteed to find
the same cell.
- Fix bug in findMinAndMax kernel's combiner function. (It behaved
incorrectly when operating on an accumulator datum that has been
initialized but never passed to the accumulator function.)
- RsTest now requests largeHeap.

Bug: 27299475
Change-Id: I58f99c21389dbae5c8e3ad85d98700dc165664bb
sCpuCore.cpp
sCpuCore.h
sCpuExecutable.cpp
sCpuScript.cpp
sd_cpu.h
2e252d9a39464d67c9e0d9d72e7aaff80c7a3939 24-Mar-2016 Yang Ni <yangni@google.com> Merge "Separate libRS.so into public and internal libs" into nyc-dev
7c045dff08287a0273e6a0340d5ca88a90030363 06-Aug-2015 Yong Chen <yong.a.chen@intel.com> X86: Fix IntrinsicBlend bugs and re-enable BLEND_DST_ATOP optimization

Bug: 22047392

Signed-off-by: Yong Chen <yong.a.chen@intel.com>

(cherry picked from commit 7c892eea2bf1f924b56e68af0b4b03c03cec12ce)

Change-Id: I27f78e671e6d5a57ccc425ac5afff0321d514e6e
sCpuIntrinsicBlend.cpp
sCpuIntrinsics_x86.cpp
a7481b21c4ad4127f54c02c7402039d068948a34 11-Mar-2016 Yang Ni <yangni@google.com> Fixed intrinsics inside a script group

Bug: 27439842

An RS intrinsic relies on RSExpandKernelDriverInfo.usr for the "this"
pointer to the ScriptIntrinsic object.

Need to to correctly set that field in a script execution for intrinsics.

Also fixed a bcc command-line option.

Added a test of script group with intrinsics to ImageProcessing GroupTest(native).

Change-Id: Ia8b45bca3396ac987ba167fd1709ee89123a2557
(cherry picked from commit 7a106adbb5e370b544f2cbf5b83c063560c81b57)
sCpuScript.cpp
sCpuScriptGroup2.cpp
85d0cb112010781ad07b5979f0824b7f0ae3987e 18-Mar-2016 Yang Ni <yangni@google.com> Separate libRS.so into public and internal libs

Bug: 26546579

libRS_internal.so is not going to be whitelisted by the NDK linker,
therefore loadable only by the internal implementation, but not any
application code.

libRS is going to contain only publicly exported functions, i.e. the
functions declared in frameworks/rs/rs.h, including those in
rsApiFuncDecl.h (generated from rs.spec).

Change-Id: Iac58695316edc9aff87ade2bac3b4a44d1a68b23
ndroid.mk
838c2d0dc0b8b07d4aa8de4360765738c6d2770e 25-Feb-2016 Miao Wang <miaowang@google.com> Better handle error log and nullptr reference.

Bug: 27367378

Change-Id: Ide29c702d7a70dfe087ddc600d3fd17279223196
(cherry picked from commit 68e00893f7400d1ce71a9ed92365ffdfd6730c03)
sCpuScript.cpp
f7f9316f4cf373733285f947bea876ead7216715 18-Nov-2015 Verena Beckham <verena@codeplay.com> Add a new libclcore_g library which contains debug info.

Add a new libclcore_g.bc which is functionally equivalent to
libclcore.bc but is compiled with debug information and -O0.
To achieve this some allocation functions had to be written in C,
because they were previously available in LLVM IR without debug
information.
The RenderScript cts has been run to verify these changes, both as it
is and forcing it to link with the new libclcore_g library. Both runs
show no regressions.

Signed-off-by: Verena Beckham <verena@codeplay.com>

(cherry picked from commit fb99e0f905b0f73a505c7900b434531ce7c3e2e5)

Change-Id: I64c82ce6f571e766c3c607e926326040dff8257c
sCpuScript.cpp
e4f999b761180a227864d97b172a42ca1d8c0df3 03-Feb-2016 Miao Wang <miaowang@google.com> Switch "transpose" for Matrix A & B, after gemmlowp change.

Change-Id: I26fcaebcca828388ef6fe53c6e9e4db8e60dd4d9
sCpuIntrinsicBLAS.cpp
e0f52d61fe6790093ef19c734dda2e2c9c0c0fbf 18-Nov-2015 Verena Beckham <verena@codeplay.com> Move scalar function implementations from into driver/runtime.

Move the implementation of all scalar SC_* functions from
rsCpuRuntimeMathFuncs.cpp to driver/runtime/rs_cl.c.
Removed the file rsCpuRuntimeMathFuncs.cpp since it is now empty.

Signed-off-by: Verena Beckham <verena@codeplay.com>
Change-Id: I2c5d063c67ad1d92bcf6b62841ca1fbb5a72bd9c
ndroid.mk
sCpuRuntimeMathFuncs.cpp
a48442ad9cc9922d012407b3aebe648b5f0acf14 31-Jan-2016 Stephen Hines <srhines@google.com> Merge "Move implementation of rsFrac from cpu_ref into driver/runtime."
6c1876bbef1b2c89975dce91230a168bd2d2ce4c 15-Jan-2016 David Gross <dgross@google.com> Support for general reduction kernels.

Requires coordinated change in frameworks/base.

Requires coordinated change in frameworks/compile/libbcc in order
for RsTest to run.

At present, general reduction kernels are run single-threaded.

Also: Remove dead struct field MTLaunchStructForEach::sig.

Bug: 23535724
Change-Id: Ice17ccf20a902f8a106eaa62ec071d46e3c0ad8c
sCpuCore.cpp
sCpuCore.h
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
46c93e405b0ad7e8fca12d0b1f9eac3997798e45 10-Jan-2016 David Gross <dgross@google.com> Expect to see "exportReduceNewCount: 0" in metadata.

Needs corresponding change in frameworks/compile/libbcc: The driver
and bcinfo need to remain precisely in sync with regard to metadata
format in order for RenderScript to work at all.

Bug: 23535724

Change-Id: Iad82e495d03215e970d2e99ff45ccfa629688f03
sCpuExecutable.cpp
d1be4d815ed18d5cf538ff5f36f5d36304eb337f 18-Nov-2015 Verena Beckham <verena@codeplay.com> Move implementation of rsFrac from cpu_ref into driver/runtime.

Move the implementation of all the rsFrac functions from
rsCpuRuntimeMath.cpp to driver/runtime/rs_core.c.

Change-Id: I42bb4ba694fff76854c8deaefdd55671fec40acc
Signed-off-by: Verena Beckham <verena@codeplay.com>
sCpuRuntimeMath.cpp
fef0cd45027f235126d4fb62bda5ea9037450d9c 12-Nov-2015 Yang Ni <yangni@google.com> Various fixes in setting globals in a script group

Bug: 25602504

1) Fixed setting 64-bit globals on a 32-bit platform.

The long values were casted to pointer-size integers (uintptr_t) or void*
in the runtime implementation. This caused the upper 32 bits to be lost
on 32-bit platforms. Fixed that by casting to int64_t instead.

2) Fixed setting Allocation values (either as arg or a global) in a script
group.

The size for a value in a script is signed, with -1 indicating that the
value is an Allocation. The sign has to be kept across different layers
of our stack.

3) Added a test for both native and support libraries for passing
floating point values to a script group, and for passing 64-bit values
(long or double) to a script group.

Change-Id: Ifff099a76be7707df7b67c388395f5a00f9cae66
sCpuScriptGroup2.cpp
e0bb9e833075eb665ac10b70c8b5bc8edf0e93a9 27-Aug-2015 Simon Hosie <simon.hosie@arm.com> Clarify vertical fetch loop in Blur assembly.

Change-Id: I50a12af2535c66e90ca847abde07f51fa910dc6d
ndroid.mk
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_neon_Blur.S
f5eb324d41433f81b64b5f49f7c4c5b656c7cdd8 03-Oct-2015 Stephen Hines <srhines@google.com> Add -Wextra to our RS build.

Change-Id: Ic1c430eec6840af4a8c19a1c13e8559ddf971eb3
ndroid.mk
9195e5188cb0e72d874512de01e7e58f1f47e0b7 15-Sep-2015 Miao Wang <miaowang@google.com> Update IntrinsicBLAS call to gemmlowp after rebase.

Change-Id: Id084ac7b53ea0b3c61311b4f4c78312f397b7c5f
sCpuIntrinsicBLAS.cpp
e2af295f94c8fb17ba51d0e6a199d5ca265f92da 24-Aug-2015 Chih-Hung Hsieh <chh@google.com> Rename some instructions to compile with llvm and gas.

* Rename .irep to .irp
* Rename "cmp x2, #-8" to "cmn x2, #8"
* Replace "vmov.s32" with "vmov"
* Replace "LSL #COMPONENT_SHIFT" with "LSL #(COMPONENT_SHIFT)"
* Nested .irp in *_Blur.S still cannot be compiled with llvm,
so -no-integrated-as is required.
* Verified before and after objdump binary codes are identical.

BUG: 23217766

Change-Id: I3c0d2eed44b79a39e3efcba3afadc3a14ca07874
ndroid.mk
sCpuIntrinsics_advsimd_3DLUT.S
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_advsimd_Resize.S
sCpuIntrinsics_neon_3DLUT.S
sCpuIntrinsics_neon_Blur.S
sCpuIntrinsics_neon_Resize.S
14ce007a633b10e3b9a3fae29d8f53a7e8c9b59f 31-Jul-2015 Matt Wala <wala@google.com> Add a basic implementation of the reduce kernel API to the CPU
reference implementation.

Bug: 22631253

For now, this just runs a serial reduction on one thread.

Change-Id: I34c96d24bb6f44274de72bb53160abcf79d143b0
sCpuCore.cpp
sCpuCore.h
sCpuExecutable.cpp
sCpuExecutable.h
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sCpuScriptGroup2.cpp
sd_cpu.h
83268ff957a17fc21132e923709ca43cea9b251c 18-Jul-2015 Stephen Hines <srhines@google.com> Merge "Add a flag to the API to specify -O0 on the bcc command line."
f5029803ae6ce9d92d70b76e7a7cdd8d484f31ca 22-May-2015 verena beckham <verena@codeplay.com> Add a flag to the API to specify -O0 on the bcc command line.

Add a flag RS_CONTEXT_OPT_LEVEL_0 which sets a field mOptLevel in the Context
to 0 when calling bcc.
Using this flag will result in an object file that is easier to debug.

Change-Id: I9673506710cc9f34c415b694fe5d6bc7e967f1db
Signed-off-by: verena beckham <verena@codeplay.com>
sCpuScript.cpp
sCpuScriptGroup2.cpp
5d70cb591d78d62d10839a52302ec9087c6f3350 17-Jul-2015 Miao Wang <miaowang@google.com> Fix GetCpuInfo() routine to correctly check the cpuinfo file to make
sure we don't miss SIMD path if there is one.

Change-Id: I8c8841ba9924ee28ae56be8b3c66c50b5badf796
sCpuCore.cpp
223231fe99c9c958de4a1c8723aff88cb667de52 17-Jul-2015 Miao Wang <miaowang@google.com> Update eight_bit_int_gemm call after gemmlowp rebase and provide
non-optimal path for armv7 without NEON.

- gemmlowp will handle the optimal path for x86, NEON and aarch64

Change-Id: I67ce4c1e5b3195017a3d46895a8ce096682bc172
sCpuIntrinsicBLAS.cpp
e941f18202b9c9883ff81c63710f7faec5c988e4 15-Jul-2015 Miao Wang <miaowang@google.com> Making libRSSupport able to optionally bundle libblas(V8) through dlopen
and dlsym.

Change-Id: I3ade3ad2802f3b8e5fc5661319b98a6212e6d8a2
sCpuBLAS.inc
sCpuBLASDispatch.h
sCpuIntrinsicBLAS.cpp
99d0e8130f5b4bb83d1a68d96496fa558e35193a 07-Jul-2015 Miao Wang <miaowang@google.com> Update the BNNM cpu reference implementation with NEON friendly
gemmlowp.

Change-Id: I5bcfd0fa988d8075e70272f277d7d7fab93d5fea
ndroid.mk
sCpuIntrinsicBLAS.cpp
11fd9ec1ab8dfa7ae45c6edeea48dddc4633efea 11-Jul-2015 Matt Wala <wala@google.com> CPU ref: Fix potential buffer over-read / uninitialized memory access.

GetCpuInfo() was reading /proc/cpuinfo into a string without properly
null terminating the result. The resulting unterminated string was
being passed to strstr().

Change the code to read the file with fgets(), which ensures the
result is null terminated. Also, document the GetCpuInfo() function
and the global variable that it sets.

Change-Id: I041331fdc25d79217ff7c1bf36a4aff2be8e0192
sCpuCore.cpp
sCpuCore.h
cac180053adf5ab5900bf885f74a4cac174ece47 01-Jul-2015 Miao Wang <miaowang@google.com> Merge "Make support lib CPU driver able to access IntrinsicBLAS"
4b5b295f6437c580083997c8b7cbaad3e5975df8 18-Jun-2015 Miao Wang <miaowang@google.com> Make support lib CPU driver able to access IntrinsicBLAS

bug: 21902810

(cherry picked from commit 0d6b6f51b9d1f98478a32a270fa2304f0839ca8c)

Change-Id: I1f15306f1cf333d6932127ae62e9af8386ecb3fe
sCpuCore.cpp
06deda3751a4a7358a7c7e03fbf1e4325fafb807 30-Jun-2015 Miao Wang <miaowang@google.com> update the offset type for BLAS.BNNM

bug: 22184114

Change-Id: I6ec212f8d5feb46fc9d0f97862b206978af1675b
(cherry picked from commit 22cb808b0dfc9bd514d2e19b302a97f8455b5731)
sCpuIntrinsicBLAS.cpp
8b7ddc3c62f01923f2e416d0a4654d051d220e8a 01-Jul-2015 Stephen Hines <srhines@google.com> Merge "Fix BLEND_DST_ATOP and disable vectorized optimizations temporarily."
1efae29f4bbe6c165caf6dfc4b89cf8a5f8c469b 28-Jun-2015 Yang Ni <yangni@google.com> Avoid overwriting shared library file that is open

b/21949580

Writing different contents to an existing .so file, which is currently
open, may corrupt its globals and code. Choose a different file name
instead.

Change-Id: I3e649b09a55b43339283aa1c46f2844c66434c17
(cherry picked from commit 9844cffc8af28c4829012bc0c48f85d04b671f88)
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScriptGroup2.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
sCpuIntrinsicBlend.cpp
565f98163670bf65d14803726b414c1e77791856 24-Jun-2015 Stephen Hines <srhines@google.com> Merge "Skip the checksum if we have precompiled code on the /system/ partition."
1c20667f7a174a7c0a1599d34a40c524fe24c615 19-Jun-2015 Yang Ni <yangni@google.com> Check for kernel chaining in ScriptGroup

b/21958851

bcc expects kernels chained up via input and output.
Check this in the runtime before passing ScriptGroup to bcc for
compiler fusion.

This serves the same purpose as
https://googleplex-android-review.git.corp.google.com/#/c/713267, but
provides additional checks in the runtime before bcc is even called.

Change-Id: I6004d577410ea1684f5043babadc1e1b885c4f6a
(cherry picked from commit 08e7693c13f895677b93537af3b6bc353318a81c)
sCpuScriptGroup2.cpp
6a236ad3a3760e8124b68a1b6220ed6e4fbfb152 22-Jun-2015 Stephen Hines <srhines@google.com> Skip the checksum if we have precompiled code on the /system/ partition.

Bug: 20894664

The system partition is read-only, and can/should be compiled correctly
during the offline creation of the system image. Since we cannot replace
these precompiled blobs (short of app update/OTA), there is no reason or
correct way to validate/replace the checksum.

Change-Id: Ia66bfdbe178bf215e146c3699f5bc7804222e978
sCpuScript.cpp
sCpuScript.h
c5b28f7626368e0ad5dc9ba5223c4a25b6e8b8e5 29-May-2015 David Gross <dgross@google.com> Merge "Remove dead uses of RSCompilerDriver and of compiler callbacks."
b043df0676fef226336deb3a00ead2f31e02343f 29-May-2015 David Gross <dgross@google.com> Remove dead uses of RSCompilerDriver and of compiler callbacks.

Change-Id: Ibe8725074724b75e35c25a404daaba07ffbca2ab
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
b59f313ddb0e05d13c270862c62ac1fa2a5bb855 29-May-2015 Yang Ni <yangni@google.com> Merge "Avoid casting for CpuScript object"
c246d91e490df18899490931469d277064070a63 22-May-2015 Yong Chen <yong.a.chen@intel.com> Fix memory leak when rs invoke function

Change-Id: I17c701dfda5b3031c1fc50bfc186e4b7f8b7ac1e
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
sCpuScript.cpp
cbff7bcc4aacdc39d56628fa5c7c50518d52748c 27-May-2015 Yang Ni <yangni@google.com> Avoid casting for CpuScript object

b/20894664

Vendor driver may have different layout for the Script object.
Avoid casting mHal.drv but use the vendor provided lookupScript callback
instead.

Change-Id: Ie492dd98a435b35843ca222a8430c51ccfc8aea9
sCpuScriptGroup2.cpp
cee9e9898ed549d00c1fd1c911feff66dbb4225e 23-May-2015 Stephen Hines <srhines@google.com> Merge changes from topic 'global_info'

* changes:
Update RS driver to support extraction of global variable properties.
Use "override" instead of "virtual" when replacing methods.
5aa018cc36e589b07674957714d27ae3d1fa1c4e 21-May-2015 Stephen Hines <srhines@google.com> Update RS driver to support extraction of global variable properties.

Bug: 20306487

This patch adds some new enums to classify properties (such as "static",
"constant", and "pointer") for global variables. The reference driver
is also extended to provide methods to examine these properties (when
the bitcode is compiled with bcc).

Change-Id: I331756f8a8990caf5ebdf85599060434a7cfdcb7
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
c060f1435e7b9405f3be8974417fa6f410f03753 14-May-2015 Stephen Hines <srhines@google.com> Use "override" instead of "virtual" when replacing methods.

Bug: 20306487

Change-Id: Ic83cb04cac153a7556f5d516e8f5ec88b5527b6f
sCpuCore.h
sCpuIntrinsic.h
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBLAS.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicResize.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuScript.h
sCpuScriptGroup.h
sCpuScriptGroup2.h
sd_cpu.h
902077a7b2db5b34560289e28fed0fab36ef4e6c 16-May-2015 Elliott Hughes <enh@google.com> Merge "Don't use TEMP_FAILURE_RETRY on close in frameworks/rs."
2df576745c52a04a42d615f83b03f19d803b7757 16-May-2015 Elliott Hughes <enh@google.com> Don't use TEMP_FAILURE_RETRY on close in frameworks/rs.

Bug: http://b/20501816
Change-Id: I63a7c690bc5bde3dc1354f6e04ad8d32b3b43015
sCpuScript.cpp
8237638f87ca0e265d050fbb13725b41a795fe5f 13-May-2015 Yang Ni <yangni@google.com> Generate global info for fused kernel

b/21114118

Change-Id: I6332572f2f2e6f7857a50bf503e73984371cfe0b
(cherry picked from commit b616bcf3df4ce5d7ccc369acf8e90afe59c359fa)
sCpuScriptGroup2.cpp
5cb19fd40ad3225005f65b6960c875746c2136b9 12-May-2015 Pirama Arumuga Nainar <pirama@google.com> Let vendor drivers access global-variable flags

bug 20894664

Expose flags for embedding global variables and skipping constant
globals in rsd_cpu.h. This allows vendor drivers to query or set these
flags.

Change-Id: I5c45355fb9254103ca8b0fa539edb691e6029ec7
sd_cpu.h
6063b3ef8f88f5b4f29994b58ef0c883c4bea066 11-May-2015 Miao Wang <miaowang@google.com> Merge "remove dead code (ALOGE) in rsCpuIntrinsicBLAS.cpp"
e64c3d560186f976f9b8923e0f2c6ac3080913a2 07-May-2015 Miao Wang <miaowang@google.com> remove dead code (ALOGE) in rsCpuIntrinsicBLAS.cpp

bug: 21028875

Change-Id: Ia2d85a265f6e4a2617373f99b5c7bdc3810a7f24
sCpuIntrinsicBLAS.cpp
0be70c6dd8897603530dbc7411f27d9dbd4fee9a 11-May-2015 Pirama Arumuga Nainar <pirama@google.com> Merge "Add /system/vendor/{lib|lib64} to linker args"
1de97c307624f57d95281ebaa77c2129e66e21bc 11-May-2015 Jason Sams <jsams@google.com> Merge "Add RSGlobalInfoPass information to RS driver."
682672e36b05349bc4d9dee74e9fab73ce804183 08-May-2015 Pirama Arumuga Nainar <pirama@google.com> Add /system/vendor/{lib|lib64} to linker args

Add vendor-specific lib directory to ld.mc's library search path. Since
ld.mc takes multiple search directories, there is no need to derive a
single path at runtime.

bug 20894664

Change-Id: Id62d2acbd94914c70bf4668f553a94a33e2a0587
sCpuExecutable.cpp
sCpuScript.h
5e5ca4291845886257df24dbc4491b0698bd7f22 08-May-2015 Jason Sams <jsams@google.com> Merge "Add a way to link against different driver names."
08ef7b7f7977e9c991d8ba94a63860edcb88a3d9 30-Apr-2015 Miao Wang <miaowang@google.com> fix the CHER, CHPR, ZHER, ZHPR crash due to incorrect param order.

Change-Id: If91cbf969c75e01afc6d93b204bc8167180c9ef9
sCpuIntrinsicBLAS.cpp
b75ba0fc7469d0bb4c1a6679664a846b3741792e 27-Apr-2015 Miao Wang <miaowang@google.com> fix RsBlas_xgemv and RsBlas_xgbmv crash. (typo)

Change-Id: Ia948afa2bc4af22f99323618738d5eb7d415ca97
sCpuIntrinsicBLAS.cpp
4c368af7e705f0bcb77fa99495b2e33ef20d2699 06-May-2015 Stephen Hines <srhines@google.com> Add a way to link against different driver names.

The existing linker path hard-coded "-lRSDriver" into the command line, but
this won't work for partner drivers that have a different implementation
loaded. In order to still properly handle use of the CPU driver, this needs
to change depending on whether we actually loaded an OVERRIDE_RS_DRIVER or
not.

Change-Id: I0c4a4f12f5db819b234952bc8f364ac6300f147b
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScriptGroup2.cpp
8409d6414dd4a42aa59779fcfe9fce18648cb135 29-Apr-2015 Stephen Hines <srhines@google.com> Add RSGlobalInfoPass information to RS driver.

Bug: 20306487

This change enables vendor drivers to configure support for including
additional information about global variables in the emitted CPU code.
This information includes the number of total global variables, the
names of these variables, the addresses of these variables and the
sizes of these variables. The driver can also select whether the
information includes constant (immutable) globals or not.

The reference driver defaults to embedding information about each of
the existing, non-constant global variables.

Change-Id: I1e55fc3f08e518f04eeee3e4f9dc7b6ea3b80d7c
sCpuCore.cpp
sCpuCore.h
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
80afd424b02291e6f088cab2961537c7ba1ee2a5 29-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> SetError if forEachMtlsSetup fails sanity check

bug 19866850

Explicitly set error when a kernel launch fails.

Change-Id: If42419f3cf7557c524afc5bb27a0753460ca7e4e
sCpuScript.cpp
38014b1ee631ee61e457b850138d3ea6eb73cb1b 23-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> Merge "Tweak arguments to ld.mc"
c2be413317efcc44e3b282fd38fca3334c11777e 22-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> Tweak arguments to ld.mc

Change the arguments to match mclinker's revamped option parser.

Change-Id: I71135ebf81e3105192caf5c946b16297b2702d37
sCpuExecutable.cpp
247f8ee57196d6cf3264e6f7505f53e8f8a7860d 19-Apr-2015 Logan Chien <tzuhsiang.chien@gmail.com> Code cleanup: Remove unused typedefs and declarations.

Change-Id: I48dafb2bc1dc335a52b289db2981397251f673c8
sCpuCore.cpp
sCpuScript.cpp
f6dc05e18930bdb5ca74e5be773ee269263fb676 17-Apr-2015 Yang Ni <yangni@google.com> Merge "Dedup checksum calculation routines"
cb17015fed6b11a5028f31cc804a3847e379945d 16-Apr-2015 Yang Ni <yangni@google.com> Dedup checksum calculation routines

I introduced a separate routine to cacluate checksum for ScriptGroup
in my previous CL, in addition to the one we use for regular scripts.
This CL removes the new one and uses the old one.

While I am on it, I made some other minor changes, e.g., changing
mBuildChecksum in RsdCpuScriptIml from char* to uint32_t, and a few
other minor cleanups in ScriptGroup2 implementation.

Change-Id: I168fdbb4e7bd14f1549a687e7b0d0ca6dd4da866
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
a9139c724f8312b3634d213599f2d6b3b2505db2 17-Apr-2015 Jason Sams <jsams@google.com> Fix allocation-less launches.

Change-Id: I6d6b46c55f3e88a810ebe51def3ebaccb1fd3fa2
sCpuCore.cpp
sCpuScript.cpp
0ced82a4a279c11411937afa0db1dc9d9782e35f 16-Apr-2015 Tim Murray <timmurray@google.com> Merge "Rename BGEMM to BNNM. Modify layout of eight-bit GEMM-like intrinsic storage."
2b999883f2f390ee43ed18317d77c810a0c6657b 13-Apr-2015 Tim Murray <timmurray@google.com> Rename BGEMM to BNNM. Modify layout of eight-bit GEMM-like intrinsic storage.

Change-Id: If4b1267dfd42d6dd65bedf20c0b674479eefab35
sCpuIntrinsicBLAS.cpp
f02a2b0a2749d4a4f07edbc23eddff2e51d11b72 08-Apr-2015 Yang Ni <yangni@google.com> Compute checksum for script group generated code

Change-Id: I5f469266fd11b5031d1357f356ac40e00f5c0348
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
8b94222cc8ea83c780c98b22dd1921f392a2bcf6 03-Apr-2015 Yang Ni <yangni@google.com> Added a name to ScriptGroup2

Implemented in the runtime and CPU driver the new script group name.
Code caching is not implemented yet, and to be added in another CL.

Change-Id: I46e351c8412740512f56b7915b14f36183c6eeaf
sCpuScriptGroup2.cpp
6363723cacc46cfdf473f9c0579e661920f0901c 10-Apr-2015 Jason Sams <jsams@google.com> remove dead code

Change-Id: I9ebda4e61be9cf270233ea8c0c51892517395487
ndroid.mk
sCpuRuntimeMath.cpp
sCpuRuntimeStubs.cpp
ca3c91ff8b9a4a4ef092809ab2361ab48940a434 07-Apr-2015 Jason Sams <jsams@google.com> Merge "Assembly optimisations for Resize."
aff744561bea3c8a7a7d59c0cb8cd9438f6dcd1c 31-Mar-2015 Tim Murray <timmurray@google.com> Add eight-bit GEMM-like intrinsic.

Change-Id: I9b920900b4cb8b27e2ab27386d05f4175142d6b2
ndroid.mk
sCpuIntrinsicBLAS.cpp
3a98366c7f53b20f8550ffac82732d60ece794b4 27-Nov-2014 Simon Hosie <simon.hosie@arm.com> Assembly optimisations for Resize.

Assembly implementations of bicubic resize for AArch32 and AArch64.

Change-Id: I7336507482773a68c0dad40abb2114f1218cab9f
ndroid.mk
sCpuIntrinsicResize.cpp
sCpuIntrinsics_advsimd_Resize.S
sCpuIntrinsics_neon_Resize.S
bd0af2d161e36e52e6782ccb2d15dd5a36467704 24-Mar-2015 Yang Ni <yangni@google.com> Clean up ScriptGroup2 implementation

b/19944127

- Adjust ref counting
- Fix value size type in closure creation

Change-Id: I1179d34aa67f845578740e71cc2da4f82419f251
sCpuScriptGroup2.cpp
7ce3943ca8b2773738710f9dfa145727ba16416c 27-Mar-2015 Dan Albert <danalbert@google.com> Remove uses of libcxx.mk.

This is a no-op.

Change-Id: Id799af86c5de18d7f1b816c4964e0d32acb0840b
ndroid.mk
2fa8a238dd69afebdeb757adcb1d674043d78e32 26-Mar-2015 Pirama Arumuga Nainar <pirama@google.com> Wrap TEMP_FAILURE_RETRY around system calls

BUG 19934827

Wrap TEMP_FAILURE_RETRY around system calls that can return EINTR
(waitpid, close).

Refactor fork/exec flows in various places into a utility function
and log errors so we can better understand failures in the test server.

Fix a small use-after-free issue in ScriptGroups.

Change-Id: I60b192f83c395a13c27cd6bd2289c44132b84791
sCpuExecutable.cpp
sCpuScript.cpp
sCpuScriptGroup2.cpp
d6f44bc5aecd024bf2311b9ae844300fbdc3f584 18-Mar-2015 Pirama Arumuga Nainar <pirama@google.com> Remove unnecessary include of RSInfo.h

RSInfo.h is obsolete and not needed here.

Change-Id: Ifc0e21ac0a393224b1e2dff63946aed16e5aa36d
sCpuExecutable.cpp
59b35f29cc576243a322bf88bc16063a9810da55 17-Mar-2015 Jason Sams <jsams@google.com> Fix issues with >2D launches

mtls->fep was being passed to setup in place of per-thread fep.

Change-Id: Ic26154fcf47dc7bc70cec43f0daf023fb83dfd78
sCpuCore.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
sCpuCore.cpp
sCpuCore.h
sCpuCoreRuntime.h
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicResize.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sCpuScriptGroup.h
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
958d8b23ac969d13ea3da0a2d9a355f5951afa8c 12-Mar-2015 Yang Ni <yangni@google.com> Merge "Handle FP precision in kernel fusion"
dced5c96bc53c45a1aac782ea9bd738b0d50fd09 12-Mar-2015 David Gross <dgross@google.com> Add new APIs rsGetDim[XYZ]() and add RSTest test cases to exercise them.

Test UT_kernel3d does not pass reliably, so it is disabled for now.

Tests will not compile without related
platform/frameworks/compile/libbcc and
platform/frameworks/compile/slang changes.

Bug: 18964628

Change-Id: I39660400953306ceb47c8b5e9665e8f0084775dd
sCpuCore.h
sCpuCoreRuntime.h
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
edf4ea312cc3f7dd4373f8db5aaf9325ff054c8e 11-Mar-2015 Yang Ni <yangni@google.com> Handle FP precision in kernel fusion

b/19098612

Find the proper core lib for full-precision and relaxed-precions
FP. Path both to bcc while compiling a script group, and let bcc
pick the right one based on the precision of the merged module.

Change-Id: I2a641387f0990463887594729a935a5c3f0f856f
sCpuScriptGroup2.cpp
062c287f573ecc06c38ee4295e5627e12c52ac3d 21-Feb-2015 Yang Ni <yangni@google.com> Runtime support for Script Group as single module

Also made two other cleanups:
- Changed KernelID/InvokeID into IDBase in class Closure
Rather than having two fields in class Closure, one of type ScriptKernelID and
the other InovkeID, use a single field of the common base class IDBase. Added a
boolean field to indicate whether it is kernel or invoke, since -fno-rtti is on.
- Removed user pointer from CPU closure

Change-Id: I5553f86b2e58325f85649078d48685a38f12d62f
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
506cb4f10c3496864b111b335aac43e154e8f646 04-Mar-2015 Pirama Arumuga Nainar <pirama@google.com> am ad1930cf: Merge "Add build fingerprint and ensure match on .so load"

* commit 'ad1930cf38d6a0a0e97f6ccacd7ecae96504f831':
Add build fingerprint and ensure match on .so load
ad1930cf38d6a0a0e97f6ccacd7ecae96504f831 04-Mar-2015 Pirama Arumuga Nainar <pirama@google.com> Merge "Add build fingerprint and ensure match on .so load"
aa6757ffc1b23d771566439c3179fdbc1e5ba569 14-Feb-2015 Pirama Arumuga Nainar <pirama@google.com> Add build fingerprint and ensure match on .so load

bug 19216507

If ro.debuggable system property is set,
- Compute the Adler32 checksum of bitcode, compiler arguments, bcc,
libclcore files.
- On shared object load, check that there is an embedded checksum value
in .rs.info and it matches the value computed in the previous step.
The .so is not loaded if the checksums don't match.
- If invoking bcc, pass the checksum as an argument.

If ro.debuggable is not set, a constant checksum is added to .rs.info.
But it is never checked.

Change-Id: I0a9d16b34148b748daf744007a8515511714a5a5
ndroid.mk
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
8bce1b68212210f7568590177635bfc71edd4368 24-Feb-2015 Yabin Cui <yabinc@google.com> am 3e5318a3: Merge "Move use of tempnam to mkstemp."

* commit '3e5318a36be470ba7a8c5cf82bbe069178733b11':
Move use of tempnam to mkstemp.
3e5318a36be470ba7a8c5cf82bbe069178733b11 24-Feb-2015 Yabin Cui <yabinc@google.com> Merge "Move use of tempnam to mkstemp."
433558f0f9abbf07770db288183a15fd261cace2 24-Feb-2015 Yabin Cui <yabinc@google.com> Move use of tempnam to mkstemp.

Bug: 19340053
Change-Id: I1734e085beef395ebcc6453af1efaa19f7409e22
sCpuScriptGroup2.cpp
8186f5ca9bf4bda113edeece558b4049732b3ed5 20-Feb-2015 Yang Ni <yangni@google.com> am 405710bf: Merge "Moved class ScriptExecutable to its own module"

* commit '405710bfdbb988764fe1dd65ac13352b8858848c':
Moved class ScriptExecutable to its own module
2abfcc6d129fe3defddef4540aa95cc445c03a7a 18-Feb-2015 Yang Ni <yangni@google.com> Moved class ScriptExecutable to its own module

b/19283946

This move also included the related class SharedObjectUtils.

Change-Id: Iefd587b659c4ad99340c330955b41cd92df45563
ndroid.mk
sCpuExecutable.cpp
sCpuExecutable.h
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup2.cpp
e9d5ce1d5cc056e5d5d2685a68ebf1318ba93559 20-Feb-2015 Yang Ni <yangni@google.com> am e15ea72b: Merge "Remove STL references from header files"

* commit 'e15ea72be26441644c21d536f18525702a24d28a':
Remove STL references from header files
5b15e9248ea9740d3651f1aff4bd9eae21cfd2c7 20-Feb-2015 Yang Ni <yangni@google.com> am e9c79f66: Merge "Revert "Replaced android::Vector with std::vector.""

* commit 'e9c79f66478170e4e45e49c71f5e9324842916cf':
Revert "Replaced android::Vector with std::vector."
c31585b8ca865bf2b35abc79c8a8ee42de27bee8 15-Feb-2015 Yang Ni <yangni@google.com> Remove STL references from header files

b/19148482

Replaced std::string with android::String8, and std::pair with
android::renderscript::Pair, in header files.

Change-Id: I20ac1a3b7a019e5eee12fac46ad6adf64d850459
sCpuCore.h
sCpuScript.cpp
sCpuScript.h
e9c79f66478170e4e45e49c71f5e9324842916cf 19-Feb-2015 Yang Ni <yangni@google.com> Merge "Revert "Replaced android::Vector with std::vector.""
6673c80dc61df9dbc576034ee83f07a077c57c54 19-Feb-2015 Bill Yi <byi@google.com> Merge commit '5d459b53fbc1ad6e52940c358d009393945c4f45' into HEAD
5c061d10fe1e5d4ae20715b0ca4e92fba12f82b8 19-Feb-2015 Pirama Arumuga Nainar <pirama@google.com> Merge "Move bcc::getCommandLine to fw/rs"
508b1afdff080ccb8546021649559fc5c720aecd 19-Feb-2015 Pirama Arumuga Nainar <pirama@google.com> Move bcc::getCommandLine to fw/rs

libbcc had a utility function to concatenate string arguments. This
patch moves that function to frameworks/rs. The function will no longer
be needed in libbcc once we move all the checksum/cache invalidation
logic to frameworks/rs.

Change-Id: I2b1c15c2763d90d7b099e41257bb72f200680943
sCpuScript.cpp
64c682b65cd04ac83b51251b40dca14423df351a 09-Jan-2015 Tim Murray <timmurray@google.com> Add BLAS to supported intrinsics.

Change-Id: I8e776b2ffdbac09a73924035eee2eca0a12facb3
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicBLAS.cpp
b8353c5943f4038fd7f08db3d958390ce9418798 15-Feb-2015 Yang Ni <yangni@google.com> Revert "Replaced android::Vector with std::vector."

b/19148482

This reverts commit 93d6bc872b7d9fba63abfa7513d56b38d9c3d371.

I also made some changes to Make it work with HEAD.

Change-Id: I5e516976ec1d85ffe1cf388c01795348a9441982
sCpuScriptGroup.cpp
9e5a1bdb972e296c83b4afd579ad21e7524ecd07 13-Feb-2015 Yang Ni <yangni@google.com> am 1ce0dfd8: Merge "Reformat and remove STL reference from header"

* commit '1ce0dfd82311d4922dbffdde302599410fc25c5d':
Reformat and remove STL reference from header
ff2bb54ebf593b1d19d3a2e4cfa70a8ea4432c0d 02-Feb-2015 Yang Ni <yangni@google.com> Reformat and remove STL reference from header

b/19148482

Reformmated according to Android C++ style guidelines.
Removed STL references in headers.

Change-Id: I6d82b8fe5ac868067b6d9ebe797125feb97e5641
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
2dc2c22d95197716317deb576e68a69eba80dbfe 05-Feb-2015 Yang Ni <yangni@google.com> am 841ba73b: Merge "Runtime support for invocables in ScriptGroups"

* commit '841ba73b843babb8ca0117e9801b6db6ba6cd394':
Runtime support for invocables in ScriptGroups
28e2a30f118a52d87399bf1a961f3ea4f440fce8 05-Feb-2015 Miao Wang <miaowang@google.com> am fe4f02f8: Merge "Make rsContext be able to have info about the path of native libs for 64bit Renderscript compat lib."

* commit 'fe4f02f81d7c461835be97eebbde744885846e99':
Make rsContext be able to have info about the path of native libs for 64bit Renderscript compat lib.
eb9aa675754c49f613c6ad71d41472b30f38b007 27-Jan-2015 Yang Ni <yangni@google.com> Runtime support for invocables in ScriptGroups

This also includes support for InvokeID

Change-Id: I5b59df166ea30b309b8dd9623825ac0e72d03856
sCpuScript.cpp
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
fe4f02f81d7c461835be97eebbde744885846e99 05-Feb-2015 Miao Wang <miaowang@google.com> Merge "Make rsContext be able to have info about the path of native libs for 64bit Renderscript compat lib."
f3213d7fd648da98bb3b03204eaf90f03c31926b 14-Jan-2015 Miao Wang <miaowang@google.com> Make rsContext be able to have info about the path of native libs
for 64bit Renderscript compat lib.

- Native lib path stored in Java and queried from JNI.
- Then set to Context during context creation.

Change-Id: I3c997cf849efb7b9a0b0ac35d5b62289d70e7434
sCpuScript.cpp
sCpuScript.h
0371d55d837206f0d94c269a0928e2e2d257cbe0 03-Feb-2015 Yang Ni <yangni@google.com> am cd32123c: Merge "Runtime support for compiler kernel fusion."

* commit 'cd32123c0268d67d5509774576c24e299ea69fd7':
Runtime support for compiler kernel fusion.
da0f069871343119251d6b0586be356dc2146a62 12-Jan-2015 Yang Ni <yangni@google.com> Runtime support for compiler kernel fusion.

The runtime will start a seperate process to call the new bcc to fuse kernels.

Change-Id: Ia73ea917a126a5055ec97f13d90a5feaafd6a2f5
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
eea118cd0f7eb18c45d37f88178ecbd821ec97e8 02-Feb-2015 Yang Ni <yangni@google.com> am f5e39bba: Merge "Remove STL references from header files"

* commit 'f5e39bba1d0e7be4adfa7364d92ba3f541420fdd':
Remove STL references from header files
e8f9fba78f0cb79fa8773373a635e30382113a75 30-Jan-2015 Yang Ni <yangni@google.com> Remove STL references from header files

b/19148482

Change-Id: I2138664d8ef51d15da23be69ac7d224f30224f42
sCpuScript.cpp
sCpuScript.h
9031b4b30126c62985d0a9f057fd93ff96145f74 29-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> am 104c694d: Merge "Mark scripts as threadable or not"

* commit '104c694d67a224adda7b673de04b763bc63d6c3f':
Mark scripts as threadable or not
68173de001c5d41c74828a426651e07cfd9e8710 28-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> Mark scripts as threadable or not

bug 19095896

Read embedded flag in .rs.info and use it to mark Scripts as threadable.
In compat lib path, scripts are always threadable.

Change-Id: I85a3753ffae788dbdec5fd130c20581790c4ee07
sCpuScript.cpp
sCpuScript.h
9a9146656a8355b2b5fb6b308809760e8f03e613 27-Jan-2015 Jason Sams <jsams@google.com> am f9630165: Merge "add array launch support."

* commit 'f963016579f1d244b932788e7ae4276e1a51944c':
add array launch support.
bf2111d3b3de310932099514f06924e48fa1d7b2 27-Jan-2015 Jason Sams <jsams@google.com> add array launch support.

Change-Id: I66cd89b5b44eafa92f391708a06464cd7cdde3ed
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic.cpp
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sCpuScriptGroup2.cpp
e47202dde0f0fce8b16a1cb202ebbd4d2b4917b2 26-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> am a309ef08: Merge "Read pragma keys and values from .rs.info"

* commit 'a309ef08865aeccd5575b7e4f727936bb6c18aab':
Read pragma keys and values from .rs.info
a309ef08865aeccd5575b7e4f727936bb6c18aab 26-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> Merge "Read pragma keys and values from .rs.info"
577194ac9c2bf10f31e564de91371764b265929a 23-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> Read pragma keys and values from .rs.info

bug 18322681

Pragmas were not embedded into shared objects in the compat lib path
because they aren't used. Along with the sibling change in libbcc, this
patch stores and retrieves pragmas from the .rs.info varible embedded in
shared object files.

Change-Id: Iebbf9a79e715a5a4a1ee0962a08386fa78516c6b
sCpuScript.cpp
sCpuScript.h
dd403b1ebf2961efdf53d73db2dabaf182e2ae7d 24-Jan-2015 Tim Murray <timmurray@google.com> am 1ad7abaf: Merge "Always recompile a script when using the debug context."

* commit '1ad7abafe1f5672c81fa4509ce0fda9a3cfdb376':
Always recompile a script when using the debug context.
bf96a520e162b503b293f65ca9ca9be66d4a0036 24-Jan-2015 Tim Murray <timmurray@google.com> Always recompile a script when using the debug context.

Change-Id: Icea9834805702c20c250d2dec48cdf8f11a0acfb
sCpuScript.cpp
e9e6f97ab2cfe6ab5618d0766b389043c70ddeb0 23-Jan-2015 Yang Ni <yangni@google.com> am e35c5288: Merge "Made shared lib routines public."

* commit 'e35c5288c3fb145f8d423b59bdf96df473e055eb':
Made shared lib routines public.
1c44cb6b1133730cd18929d637e71e9326c70bd0 22-Jan-2015 Yang Ni <yangni@google.com> Made shared lib routines public.

So that we can reuse the shared library create and loading routines
for script groups.

Change-Id: I9f35d8efc4be686c92141ab770f78f35ea3a02c1
sCpuScript.cpp
sCpuScript.h
14398352d56ce20b59605485489aa037fa0f20d3 22-Jan-2015 Yang Ni <yangni@google.com> am b46b67af: Merge "Created a new class to represent executable."

* commit 'b46b67af3053200e88259a3b0ad1275689e1b679':
Created a new class to represent executable.
d9bae689c1b8c3f2ed1a5f2b374dc9393584b8dd 21-Jan-2015 Yang Ni <yangni@google.com> Created a new class to represent executable.

The new class represents executables created from shared objects,
which allows query exported fields, for each, etc.
This allows this functionality to be shared with other part of the
system besides CPU script, e.g., script groups.

Change-Id: I5223c329bdb70085eb1dce7aab5ec91626f579f4
sCpuScript.cpp
sCpuScript.h
bb0b068bb8e0b1e23844f7e6199c43b157ec4328 22-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> am 24c1f31c: Merge "Do not check for .so in /system in native mode"

* commit '24c1f31c6f03ffffdb08ee2c1c309edbc15b035f':
Do not check for .so in /system in native mode
f0558cce29611fdba9fdd50d39785f53d95fe1d5 21-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> Do not check for .so in /system in native mode

Bug: 18322681

In native mode, the .so file will be present only in the app specific
cache directory. Any match in /system/lib is merely due to name clash
with another app. Shared libraries in /system/lib are relevant only in
compatibility mode.

Change-Id: I2713820c76b63bd69f726e50f0a39974661c05f1
sCpuScript.cpp
e02d1253d7c326ce266a0e693d77aec30f4c5c48 21-Jan-2015 Stephen Hines <srhines@google.com> am e3aa5ab8: Merge "Remove linkloader from frameworks/rs."

* commit 'e3aa5ab8ddba9931e2db6796a5b93e3faed24f41':
Remove linkloader from frameworks/rs.
45e753a46e587c69b3b0d0c5138e88715a24a29a 20-Jan-2015 Stephen Hines <srhines@google.com> Remove linkloader from frameworks/rs.

Bug: 18322681

Now that we have switched completely to the new shared library object
loading path, we can safely remove the legacy linkloader path.

In frameworks/rs, this removes the actual linkloader code, as well as
all helper calls into linkloader. This change also coalesces code paths
between the support library version of RS and the native version of RS,
since they both now depend on a similar shared library loader. A missing
call to dlclose() on Script teardown is also added on the native library
path.

Change-Id: Ie5cc152d93f5e75383f7c21a4523579cfae8823f
inkloader/android/librsloader.cpp
inkloader/android/librsloader.h
inkloader/android/test-librsloader.c
inkloader/include/ELF.h
inkloader/include/ELFHeader.h
inkloader/include/ELFObject.h
inkloader/include/ELFReloc.h
inkloader/include/ELFSection.h
inkloader/include/ELFSectionBits.h
inkloader/include/ELFSectionHeader.h
inkloader/include/ELFSectionHeaderTable.h
inkloader/include/ELFSectionNoBits.h
inkloader/include/ELFSectionProgBits.h
inkloader/include/ELFSectionRelTable.h
inkloader/include/ELFSectionStrTab.h
inkloader/include/ELFSectionSymTab.h
inkloader/include/ELFSymbol.h
inkloader/include/ELFTypes.h
inkloader/include/GOT.h
inkloader/include/MemChunk.h
inkloader/include/StubLayout.h
inkloader/include/impl/ELFHeader.hxx
inkloader/include/impl/ELFObject.hxx
inkloader/include/impl/ELFReloc.hxx
inkloader/include/impl/ELFSection.hxx
inkloader/include/impl/ELFSectionBits.hxx
inkloader/include/impl/ELFSectionHeader.hxx
inkloader/include/impl/ELFSectionHeaderTable.hxx
inkloader/include/impl/ELFSectionNoBits.hxx
inkloader/include/impl/ELFSectionProgBits.hxx
inkloader/include/impl/ELFSectionRelTable.hxx
inkloader/include/impl/ELFSectionStrTab.hxx
inkloader/include/impl/ELFSectionSymTab.hxx
inkloader/include/impl/ELFSymbol.hxx
inkloader/include/mmanWindows.h
inkloader/lib/ELFHeader.cpp
inkloader/lib/ELFSectionHeader.cpp
inkloader/lib/ELFSymbol.cpp
inkloader/lib/ELFTypes.cpp
inkloader/lib/GOT.cpp
inkloader/lib/MemChunk.cpp
inkloader/lib/StubLayout.cpp
inkloader/lib/mmanWindows.cpp
inkloader/main.cpp
inkloader/utils/flush_cpu_cache.h
inkloader/utils/helper.cpp
inkloader/utils/helper.h
inkloader/utils/raw_ostream.cpp
inkloader/utils/raw_ostream.h
inkloader/utils/rsl_assert.cpp
inkloader/utils/rsl_assert.h
inkloader/utils/serialize.h
inkloader/utils/traits.h
sCpuIntrinsicColorMatrix.cpp
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
50d707b073cf0c3d73c3dca7e050dcabf295ea84 21-Jan-2015 Jason Sams <jsams@google.com> am 365357ac: Merge "Cleanup of ForEachParams in cpu ref"

* commit '365357ac91d52c385e5af38ca6fe24d853f0ddb1':
Cleanup of ForEachParams in cpu ref
c0d68470b978a79ce024fde56f23ea3690603ccd 20-Jan-2015 Jason Sams <jsams@google.com> Cleanup of ForEachParams in cpu ref

Change-Id: I8cc51915b2a605c240d98e3010619b741a13bae2
sCpuCore.cpp
sCpuCore.h
sCpuScript.cpp
e9d9dab68add83b93b2493b277adc1168711334c 16-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> am 5c6002cc: Merge "Turn on .so path by default"

* commit '5c6002cc19cc3f1beffd204fd6cbca8bd75c0012':
Turn on .so path by default
b5215a52df4402a8a513c3dc65d06b9bd46e879d 16-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> Turn on .so path by default

Bug: 18322681

If there are problems in the .so loading path, you can turn it off by
having is_skip_linkloader() return false.

Change-Id: I31ae2d8a65f70005f4d749f9ecbe55ae6f153d8c
sCpuScript.cpp
94c0d6903ad66299bc3967db7c3a68df2e30d7ea 15-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> am 3e3fbed5: Merge "Skip linkloader, use shared object files"

* commit '3e3fbed52a47a9e3118f9df6bab6d45859138520':
Skip linkloader, use shared object files
22d158c258f6ae55fb2666331c8f5de94b77451c 15-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> am e8151ab5: Merge "Fix ilogb\'s return type"

* commit 'e8151ab5a9cbcc875cdce64b84287650418922e3':
Fix ilogb's return type
dc0d8f7c0f1f43f25c34fbc04656ad578f6e953b 03-Dec-2014 Pirama Arumuga Nainar <pirama@google.com> Skip linkloader, use shared object files

Bug: 18322681

- In rsCpuScript, if property rs.skip.linkloader is set, look for a .so
file in the cache directory and load it. If it is not available, use
bcc to generate relocatable object file and link it to a .so using
ld.mc. Use the embedded symbols in .rs.info and follow steps similar
to the compatibility library to invoke script functions or access
script variables.
- Add rs* symbols like rsGetAllocation to libRSCpuRef (ala
libRSSupport). Do necessary changes to argument types to get mangled
names correct.
- Make 64-bit version of rsSetObject take two pointers instead of a
pointer and a large object. rsIsObject takes a pointer instead of a
large object. Otherwise, we get failures in x86_64 due to calling
convention mismatch. To match the function names in the shared object
path, define these functions as 'extern "C"' with their mangled names.
- Add stubbed Math functions from rsCpuRuntimeMath and
rsCpuRuntimeMathFuncs into libRSCpuRef.so.
- Coalesce separate #ifdef paths in libRSCpuRef. Function parameters
for runtime callbacks and bcc plugin are needed in the
non-compatibilty path, but take default NULL arguments. This patch
introduces these parameters into the compatibility path as well, and
passes default NULL arguments.

Change-Id: I8a853350e39d30b4d852c30e4b5da5a75a2f2820
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuRuntimeMath.cpp
sCpuRuntimeMathFuncs.cpp
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
6fdd0601e45aaf7fd6eaa3ec7db0e981d4f8c5dd 13-Jan-2015 Pirama Arumuga Nainar <pirama@google.com> Fix ilogb's return type

Fix ilobg's return type in compat mode - was float instead of an int.

Change-Id: I523248fd1e2a867f3f8dbb0772771ef51f76ff53
sCpuRuntimeMath.cpp
sCpuRuntimeMathFuncs.cpp
650644594921f109c081127d45b6afaedf6df7aa 09-Jan-2015 Tim Murray <timmurray@google.com> am db5c7eef: Merge "Enable autovectorization in CPU driver."

* commit 'db5c7eef1b1ae60e94932ce19628b342c1ed2727':
Enable autovectorization in CPU driver.
687cfe85c3cffb244a7e5daeb1231f441a1ed54d 08-Jan-2015 Tim Murray <timmurray@google.com> Enable autovectorization in CPU driver.

Change-Id: Ibc10c61dee8d071256a9ebd6c4c47cb7dc617284
sCpuScript.cpp
3f28e7d2c69a7f89d3af6b9eeb10018581929e9e 08-Jan-2015 Yang Ni <yangni@google.com> am 015ba466: Merge "New Script Group API: runtime and cpu driver support."

* commit '015ba466dff2c05653b21afded83d311d35cfa7c':
New Script Group API: runtime and cpu driver support.
015ba466dff2c05653b21afded83d311d35cfa7c 08-Jan-2015 Yang Ni <yangni@google.com> Merge "New Script Group API: runtime and cpu driver support."
5b9ad7995e7f0e3414067de4fa7131188a685a2e 07-Jan-2015 Tim Murray <timmurray@google.com> am 1ca22d17: Merge "Use integrated-as on Darwin"

* commit '1ca22d17f714c2ebae5f0b06ba6fa7dee55bb0b9':
Use integrated-as on Darwin
1ca22d17f714c2ebae5f0b06ba6fa7dee55bb0b9 07-Jan-2015 Tim Murray <timmurray@google.com> Merge "Use integrated-as on Darwin"
04fe99fa8f4daef507e52e04eb8c6c2a37a4827c 17-Dec-2014 Tim Murray <timmurray@google.com> Use integrated-as on Darwin

Change-Id: I2a888713285fa5b435c6a54a3a4a7bb33130458d
ndroid.mk
1ffd86b448d78366190c540f98f8b6d641cdb6cf 07-Jan-2015 Yang Ni <yangni@google.com> New Script Group API: runtime and cpu driver support.

Change-Id: I9c612cf8874aabaf0ca7d1640567464c71ed3070
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuScriptGroup.cpp
sCpuScriptGroup.h
sCpuScriptGroup2.cpp
sCpuScriptGroup2.h
sd_cpu.h
b6370d17eaa77cc365a471b4410e4fbde9d6a159 06-Jan-2015 Jason Sams <jsams@google.com> am 9cc5708a: Merge "Align ScriptInvokeV parameters to 16 bytes for x86_64"

* commit '9cc5708a0bf7a81551ccad8ab5c5abe23ec1b853':
Align ScriptInvokeV parameters to 16 bytes for x86_64
9cc5708a0bf7a81551ccad8ab5c5abe23ec1b853 06-Jan-2015 Jason Sams <jsams@google.com> Merge "Align ScriptInvokeV parameters to 16 bytes for x86_64"
dff96fef1c2ecb7770342964008670dba00f360c 18-Dec-2014 Stephen Hines <srhines@google.com> am c837d22b: Merge "BCCContext is actually dead code."

* commit 'c837d22b93b0e0f5854a523d14956fc4a43a26a8':
BCCContext is actually dead code.
584e58bb75a4d742e3a9dfcfea36eba59b38dbd9 17-Dec-2014 Stephen Hines <srhines@google.com> BCCContext is actually dead code.

This should have been removed as part of the switchover to standalone bcc.

Change-Id: Icbb9a4c064dd9f002f9acfa1ac7748745501de2b
sCpuScript.cpp
sCpuScript.h
eaba5a3ca215729258dcf9ac6f0bb5f88c78f998 12-Dec-2014 Yong Chen <yong.a.chen@intel.com> Align ScriptInvokeV parameters to 16 bytes for x86_64

Change-Id: I0c9aea220b12f364c0a1a90232fbaa40ad90aeec
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
sCpuScript.cpp
8c5f5fdd8e00dd0fb364eec505d6b78a28f2fa4c 10-Dec-2014 Tim Murray <timmurray@google.com> am 79d1df90: Merge "Enable A53 erratum workaround in bcc."

* commit '79d1df9063189cb2cad3643f78423dbf8f99bbe7':
Enable A53 erratum workaround in bcc.
79d1df9063189cb2cad3643f78423dbf8f99bbe7 10-Dec-2014 Tim Murray <timmurray@google.com> Merge "Enable A53 erratum workaround in bcc."
358ffb84f56929cd2d61f6429a790a1606eaf865 09-Dec-2014 Tim Murray <timmurray@google.com> Enable A53 erratum workaround in bcc.

bug 18683922

Change-Id: I33636dfa74605211c4898cc08fcee6e0f77978e5
ndroid.mk
sCpuScript.cpp
4d61270b1f08cbaf3fca940047bb30617831fece 09-Dec-2014 Elliott Hughes <enh@google.com> am 4041272a: Merge "Remove unused #include."

* commit '4041272ab5cebc81f71c0f75a952547a0138ef2a':
Remove unused #include.
f75a0f094a6116aaeda1b2154e1b6f9a44f5bf34 09-Dec-2014 Elliott Hughes <enh@google.com> Remove unused #include.

Bug: 18556103
Change-Id: I5af65a0211bf6dddefeb35f7b156590c2517ef21
sCpuIntrinsics_neon_ColorMatrix.S
fdceadb811ec22c69f879ea0d0108be3d287708b 18-Nov-2014 Miao Wang <miaowang@google.com> am 4283f579: Fix rounding bug of IntrinsicConvolve in cpu_ref

* commit '4283f579c424f07bc07c7f075398053eed3f8281':
Fix rounding bug of IntrinsicConvolve in cpu_ref
4283f579c424f07bc07c7f075398053eed3f8281 17-Nov-2014 Miao Wang <miaowang@google.com> Fix rounding bug of IntrinsicConvolve in cpu_ref

bug 18121051

Change-Id: Ica3e32731a7f78c8869b84e1e257216a52f79f8a
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
ca3331c4984482c764561b82e00f451293722cf7 14-Nov-2014 Miao Wang <miaowang@google.com> Merge "Add Float32 support for IntrinsicResize."
31a3d42110a82c7c357fa9e6e8871f045d545585 14-Nov-2014 Stephen Hines <srhines@google.com> Merge "[MIPS] Add MIPS64 R6 relocations"
d75cc84d23f372e55f7173c727129cd5de00748b 14-Nov-2014 Miao Wang <miaowang@google.com> Add Float32 support for IntrinsicResize.

Change-Id: I1b1da92f58a11d9cb6870f4d117fe4ed80207a3b
sCpuIntrinsicResize.cpp
a2bd5e85ddb7c4cc439f4b4646dafa21558ea5c7 11-Nov-2014 Miao Wang <miaowang@google.com> Fix off-by-one bug of resize, when scale = 1;
Use a better way to do scaling.

bug 18296081

Change-Id: I3858d6d0f1cd0166d9862e9013386b1d844bd3f9
sCpuIntrinsicResize.cpp
51d016c72e44c9c6da47c53665033ce8816ab463 11-Nov-2014 Miao Wang <miaowang@google.com> Fix off-by-one bug of resize, when scale = 1;
Use a better way to do scaling.

bug 18296081

Change-Id: I3858d6d0f1cd0166d9862e9013386b1d844bd3f9
sCpuIntrinsicResize.cpp
ef05d4666eb87a924c8883e193fd505245101414 24-Oct-2014 Miao Wang <miaowang@google.com> Fix the rounding bug of resize test and impl; Add mirror test.

Change-Id: Ibfcc942ae3126d0186556f80dc5af17f77060b04
sCpuIntrinsicResize.cpp
77d57a305f4134e78ebc91869011c4009988104e 24-Oct-2014 Jason Sams <jsams@google.com> Fix query for CPU count.

Some devices report fewer processors online versus
configured. Always get the configured (higher) number

bug 18108290

Change-Id: Ic6202e05ad8c4686dd79795f880baf5429674d70
sCpuCore.cpp
32f9d04ae7b5f680c0921b3f9d4cdbf1665532b3 23-Oct-2014 Jason Sams <jsams@google.com> Enable 64 bit asm for int->int ColorMatrix

This brings 64 bit perf close to 32bit for the common
color matrix paths.

bug 17923388

Change-Id: I96c2c28a07864bf71c6c4a0186fb76f4a946316f
sCpuIntrinsicColorMatrix.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
sCpuIntrinsicBlur.cpp
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_neon_Blur.S
319babf8106540bf26ac5e76a85416846bae8d3b 09-Oct-2014 Jason Sams <jsams@google.com> Fix 64bit YUV intrinsic performance

bug 17923388

Change-Id: I9ee9ebf05eb5d3b661d8199864f92c14f0d0191d
sCpuIntrinsicYuvToRGB.cpp
c886b1f69987151f29b3d5d27959c8b5aae4ea19 24-Oct-2014 Miao Wang <miaowang@google.com> Merge "Fix the rounding bug of resize test and impl; Add mirror test." into lmp-mr1-dev
da68eff288c8b403bc41c1fa856ca09d73f35e2f 24-Oct-2014 Miao Wang <miaowang@google.com> Fix the rounding bug of resize test and impl; Add mirror test.

Change-Id: Ibfcc942ae3126d0186556f80dc5af17f77060b04
sCpuIntrinsicResize.cpp
43641e457d1c8aff9e8bc9febdded5261053abc6 24-Oct-2014 Jason Sams <jsams@google.com> Fix query for CPU count.

Some devices report fewer processors online versus
configured. Always get the configured (higher) number

bug 18108290


Change-Id: Ic6202e05ad8c4686dd79795f880baf5429674d70
sCpuCore.cpp
ff983194dbb0504f4a341487aa20bb08027a52b6 23-Oct-2014 Jason Sams <jsams@google.com> Enable 64 bit asm for int->int ColorMatrix

This brings 64 bit perf close to 32bit for the common
color matrix paths.

bug 17923388

Change-Id: I96c2c28a07864bf71c6c4a0186fb76f4a946316f
sCpuIntrinsicColorMatrix.cpp
4c8f2477285848ab0a4f33ad854de9398d332e8c 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
sCpuIntrinsicBlur.cpp
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_neon_Blur.S
5eb463f2c28cf161fe31b8078908a7b01198516f 20-Sep-2014 Simon Hosie <simon.hosie@arm.com> Subrectangle bug fixes to ARM Blur assembly.

Correctly sweep the ends of the initial convolution window where that window
overlaps one or both sides of the source image.

Change-Id: I4e3d2bfa7eb22ce29af2615bf324a69561f7e4d6
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_neon_Blur.S
9107db900edec122b8f6f49a81ab444d8a6c9c42 20-Sep-2014 Simon Hosie <simon.hosie@arm.com> Minor fixes to AArch64 Blur assembly.

Use the correct register for a low-weighted tap in uchar1 case, and use the
correct clipped radius calculation for the right-hand edge.

Change-Id: Ib6ecd8b115c8898bb641958ab0beab11a8fccc36
sCpuIntrinsics_advsimd_Blur.S
c10c49404a35384be5fe44bd04b6eed1ffc6a98c 22-Oct-2014 Bill Yi <byi@google.com> Merge commit '6a95b944f23e7c6a8fc3a6fe42350df4fad7d27d' into HEAD
b4d28c50d522e9e396b6aad7cf63debe51fd00a3 22-Oct-2014 Jason Sams <jsams@google.com> Merge "Subrectangle bug fixes to ARM Blur assembly."
81954efe716f4a14ffb8fd1e0bd16681d64744fc 22-Oct-2014 Jason Sams <jsams@google.com> Merge "Minor fixes to AArch64 Blur assembly."
d675c704622b7291f6d7245cb50ea4462ec4943d 22-Oct-2014 Jason Sams <jsams@google.com> Merge "Expand AArch64 YuvToRGB to use more registers."
772b306f2d7ca994fe35d7ed4a2e0318a2d9fbf7 09-Oct-2014 Jason Sams <jsams@google.com> Fix 64bit YUV intrinsic performance

bug 17923388

Change-Id: I9ee9ebf05eb5d3b661d8199864f92c14f0d0191d
sCpuIntrinsicYuvToRGB.cpp
e8814f7c80f84f08e60150e70b1a4e6a11b588bd 19-Jun-2014 Simon Hosie <simon.hosie@arm.com> Expand AArch64 YuvToRGB to use more registers.

bug 17923388

Change-Id: Ib8ebea344ff863bb4c6e13f11efae3dd50f7c0fa
sCpuIntrinsics_advsimd_YuvToRGB.S
c5e6b521e0782158adc2acba4c8691ade44578fb 21-Oct-2014 Jason Sams <jsams@google.com> Merge "Tail-store fixes to AArch64 YuvToRGB assembly." into lmp-mr1-dev
ccd2125b76fb04fd4676e9282d6f9d72e87950e6 17-Oct-2014 Petar Jovanovic <petar.jovanovic@imgtec.com> [MIPS] Add MIPS64 R6 relocations

This patch adds 6 MIPS64 R6 relocations:

- R_MIPS_PC21_S2
- R_MIPS_PC26_S2
- R_MIPS_PC18_S3
- R_MIPS_PC19_S2
- R_MIPS_PCHI16
- R_MIPS_PCLO16

It also adds missing R_MIPS_PC16 and R_MIPS_32.

Change-Id: I89601a93e4c1b9b40e81edc3c84474377fb98eb6
inkloader/include/impl/ELFObject.hxx
c8b78bcfa73890ddf5fdc9a2f9364403c8b71d87 10-Oct-2014 Tim Murray <timmurray@google.com> am b26ead53: Merge "Fix missing relocation entries and libclcore entry points." into lmp-dev

* commit 'b26ead533bb9d4e5e78f9a95fb543a577e7f95f2':
Fix missing relocation entries and libclcore entry points.
b26ead533bb9d4e5e78f9a95fb543a577e7f95f2 10-Oct-2014 Tim Murray <timmurray@google.com> Merge "Fix missing relocation entries and libclcore entry points." into lmp-dev
cbdb6480528fc374144df1ae9c604c9100d33268 09-Oct-2014 Tim Murray <timmurray@google.com> Fix missing relocation entries and libclcore entry points.

This fixes support for rsSetElementAt_ulong from pre-21 SDKs.

bug 17934731

Change-Id: I1598f612257b8faeec871df6b2f126395b0e7d82
sCpuRuntimeStubs.cpp
09d7d5993e75e22ade6b37bc98c42d30a81ec6af 09-Oct-2014 Jason Sams <jsams@google.com> am c214fe59: Fix incorrect error check for mmap

* commit 'c214fe59fc48740ed003a3cde4e5a60517c5d5ce':
Fix incorrect error check for mmap
9732e859ff5d1911915eb83411c9b1ae991c7523 20-Sep-2014 Simon Hosie <simon.hosie@arm.com> Tail-store fixes to AArch64 YuvToRGB assembly.

bug 17923388

Change-Id: I692cf3b38b0cf57404024170874070d5f2b95480
sCpuIntrinsics_advsimd_YuvToRGB.S
3e8d240af4e4b77d1a4903548c3757cbc15420a5 09-Oct-2014 Jason Sams <jsams@google.com> am 7d38b3a9: Merge "Tail-store fixes to AArch64 YuvToRGB assembly."

* commit '7d38b3a9b0fcad32cbac6f6431d7d73f552dabac':
Tail-store fixes to AArch64 YuvToRGB assembly.
476e523301f35c30aa1871cf8f8adea41d8977bb 09-Oct-2014 Stephen Hines <srhines@google.com> am cac74c05: Merge "Fix script instancing issue for RS compatibility library."

* commit 'cac74c05b41acd5b5d64bedee9e214a7803f2362':
Fix script instancing issue for RS compatibility library.
7d38b3a9b0fcad32cbac6f6431d7d73f552dabac 09-Oct-2014 Jason Sams <jsams@google.com> Merge "Tail-store fixes to AArch64 YuvToRGB assembly."
c15aabdc69839824b4bae6648aee1604c31dbdf8 09-Oct-2014 Jason Sams <jsams@google.com> Merge "Revert "RS: Add VP9 LoopFilter Intrinsic""
c214fe59fc48740ed003a3cde4e5a60517c5d5ce 09-Oct-2014 Jason Sams <jsams@google.com> Fix incorrect error check for mmap

bug 17909809

Change-Id: I8fd0d5c489ff8b110d657cd63d3cae164d4067b9
sCpuIntrinsicColorMatrix.cpp
cac74c05b41acd5b5d64bedee9e214a7803f2362 09-Oct-2014 Stephen Hines <srhines@google.com> Merge "Fix script instancing issue for RS compatibility library."
fe0922575f26af84ee33429626f36049410cb7b6 09-Oct-2014 Jason Sams <jsams@google.com> Revert "RS: Add VP9 LoopFilter Intrinsic"

This reverts commit 6fc3e12b8912458cb4adcfd32e2f53d76b0cc737.

Change-Id: I4eb50620548805344bd45669fda1af81128195f5
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicLoopFilter.cpp
p9_loopfilter_16_neon.S
p9_loopfilter_neon.S
p9_mb_lpf_neon.S
a1adf77cbfe83f989dbfb103bf24f258d61b6b80 08-Oct-2014 Chih-Hung Hsieh <chh@google.com> am 99573dde: Merge "Add -no-integrated-as at local level."

* commit '99573dde2a5b68dc69e00da5220a0d7898bc5e9c':
Add -no-integrated-as at local level.
12f143e33cfc5ccead1ab3209944f648b1a8d349 03-Oct-2014 Chih-Hung Hsieh <chh@google.com> Add -no-integrated-as at local level.

Later we will enable integrated-as as default at the global level.

BUG: 17820427

Change-Id: I6d7c28c7188deab5d507cb6836adac460e0affe7
ndroid.mk
b6bab6173430178d131f95f62e3b29627b9eb313 02-Oct-2014 Stephen Hines <srhines@google.com> Define calculatedValue for all paths.

Change-Id: I0e9318a4537e41a406abdbef9ec296bba72fdd70
(cherry picked from commit d176f116564d942a26039ff2f91e343c55ccc888)
inkloader/include/impl/ELFObject.hxx
d176f116564d942a26039ff2f91e343c55ccc888 02-Oct-2014 Stephen Hines <srhines@google.com> Define calculatedValue for all paths.

Change-Id: I0e9318a4537e41a406abdbef9ec296bba72fdd70
inkloader/include/impl/ELFObject.hxx
fca65171c3dfbaeced40b8a38387a3c12582cc7f 02-Oct-2014 Stephen Hines <srhines@google.com> am 13f65fea: Merge "Add missing <memory> include for std::unique_ptr." into lmp-dev

* commit '13f65fea3830b84a0476d26f750896175bc832c1':
Add missing <memory> include for std::unique_ptr.
13f65fea3830b84a0476d26f750896175bc832c1 02-Oct-2014 Stephen Hines <srhines@google.com> Merge "Add missing <memory> include for std::unique_ptr." into lmp-dev
7d774858f7b0459dc90158341a8f7eb4b395b61c 01-Oct-2014 Stephen Hines <srhines@google.com> Fix script instancing issue for RS compatibility library.

Bug: 17734273

This switches us from using symlinked files to using explicit copies. The
latest Android linker actually checks the inode for the loaded shared object,
so a symlink is now insufficient to have it count as a distinct object to
load.

Change-Id: I729993696ef8d656761fe571703ab96d4bec940b
sCpuScript.cpp
28c034238b8891398da625b070279c34185b3494 20-Sep-2014 Simon Hosie <simon.hosie@arm.com> Subrectangle bug fixes to ARM Blur assembly.

Correctly sweep the ends of the initial convolution window where that window
overlaps one or both sides of the source image.

Change-Id: I4e3d2bfa7eb22ce29af2615bf324a69561f7e4d6
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_neon_Blur.S
6267c335745f32fb0d898335930da6b0904be577 20-Sep-2014 Simon Hosie <simon.hosie@arm.com> Minor fixes to AArch64 Blur assembly.

Use the correct register for a low-weighted tap in uchar1 case, and use the
correct clipped radius calculation for the right-hand edge.

Change-Id: Ib6ecd8b115c8898bb641958ab0beab11a8fccc36
sCpuIntrinsics_advsimd_Blur.S
db683cd11b6cfd3d9edc208908332f87176a22d9 30-Sep-2014 Jason Sams <jsams@google.com> resolved conflicts for merge of 79a9dacb to lmp-dev-plus-aosp

Change-Id: Id4a5aafcd67afa6962bd9c042ce81fb6170c8c12
79a9dacb328ac37a2ec29b06b2ee6740fe8fadf0 30-Sep-2014 Jason Sams <jsams@google.com> Revert "RS: Add VP9 LoopFilter Intrinsic"

This reverts commit 6fc3e12b8912458cb4adcfd32e2f53d76b0cc737.

Conflicts:
cpu_ref/Android.mk
cpu_ref/rsCpuCore.cpp
cpu_ref/rsCpuIntrinsicLoopFilter.cpp
rsDefines.h

bug 17720646

Change-Id: Ie297cfbfa04e61944ac1340797ac81c23b2f2ea8
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicLoopFilter.cpp
p9_loopfilter_16_neon.S
p9_loopfilter_neon.S
p9_mb_lpf_neon.S
340f54c0eb3cd71bc12b993f98cd94e1a2a7e6dc 30-Sep-2014 Stephen Hines <srhines@google.com> Add missing <memory> include for std::unique_ptr.

Bug: 14416410
Change-Id: I96055b34bf497bceead776ec956a0b5b0dd817c3
inkloader/include/ELFHeader.h
inkloader/include/ELFObject.h
b91add7e84a36e677d453919c209e551623c13b1 19-Jun-2014 Simon Hosie <simon.hosie@arm.com> Expand AArch64 YuvToRGB to use more registers.

Change-Id: Ib8ebea344ff863bb4c6e13f11efae3dd50f7c0fa
sCpuIntrinsics_advsimd_YuvToRGB.S
48fab7f9adae67c18b3d221a48ebe43e2fa77289 20-Sep-2014 Simon Hosie <simon.hosie@arm.com> Tail-store fixes to AArch64 YuvToRGB assembly.

Change-Id: I692cf3b38b0cf57404024170874070d5f2b95480
sCpuIntrinsics_advsimd_YuvToRGB.S
9b2711a80e755cefcf3f006d2f7f5f2665658578 20-Sep-2014 Stephen Hines <srhines@google.com> am ee7d3f48: Merge "Fix wrong machine identifier for AArch64 in linkloader."

* commit 'ee7d3f48fab7fd938885b18497cbf79247ddce71':
Fix wrong machine identifier for AArch64 in linkloader.
4b6eea2ec76fd3aa8096358092d828c6b4f0a45e 20-Sep-2014 Stephen Hines <srhines@google.com> am 88f462c6: Merge "Implement getMaxNumStubs() for x86 and x86_64."

* commit '88f462c66c2f91e35ec24f14175162af485f9b01':
Implement getMaxNumStubs() for x86 and x86_64.
9adc78bbef17208ba11d5bc4b15e9677c985d87f 20-Sep-2014 Stephen Hines <srhines@google.com> Fix wrong machine identifier for AArch64 in linkloader.

This doesn't change functionality at all, since the only "machine" variant
with special handling is EM_MIPS. Thus, reconfiguring as EM_AARCH64 instead
of EM_ARM is safe (and correct).

Change-Id: I6249682155957d20253ae48d2564e5b31cf21351
inkloader/include/impl/ELFObject.hxx
88f462c66c2f91e35ec24f14175162af485f9b01 20-Sep-2014 Stephen Hines <srhines@google.com> Merge "Implement getMaxNumStubs() for x86 and x86_64."
5e62c3a34aedaf6a91022da352df20647623935b 17-Sep-2014 Xiaofei Wan <xiaofei.wan@intel.com> Implement getMaxNumStubs() for x86 and x86_64.

Change-Id: I5e7a446d17d3bdf4e93fd8fdaf8fd3ef9c3de571
Signed-off-by: Xiaofei Wan <xiaofei.wan@intel.com>
inkloader/include/impl/ELFSectionRelTable.hxx
a0574689b5c8d7cafcc8ceedb14bb5776a3286d6 16-Sep-2014 Yong Chen <yong.a.chen@intel.com> am 76887149: Fix two bugs in cpu_ref

* commit '7688714916905f29362071ce2eb9e296ca469838':
Fix two bugs in cpu_ref
7688714916905f29362071ce2eb9e296ca469838 15-Sep-2014 Yong Chen <yong.a.chen@intel.com> Fix two bugs in cpu_ref

- Make correct parameters for x86 IntrinsicConvolve5x5
- Use correct intrinsic ID for loopFilter

Change-Id: I5180b9e2a80a6e023299963b19bf8b4dcd4ebd4b
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicLoopFilter.cpp
45d29c41b1b9805991dcd8557f6d1b70977f5428 15-Sep-2014 Yong Chen <yong.a.chen@intel.com> Fix two bugs in cpu_ref

- Make correct parameters for x86 IntrinsicConvolve5x5
- Use correct intrinsic ID for loopFilter

Change-Id: I5180b9e2a80a6e023299963b19bf8b4dcd4ebd4b
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicLoopFilter.cpp
4df913a7efe2f62b2bb9550d0c98bdc9ce360eea 11-Sep-2014 Stephen Hines <srhines@google.com> am 97df6f6b: Merge "[MIPS] Add GOT right below the text section"

* commit '97df6f6b0f354b8b08f24c2561546d53ce983775':
[MIPS] Add GOT right below the text section
97df6f6b0f354b8b08f24c2561546d53ce983775 11-Sep-2014 Stephen Hines <srhines@google.com> Merge "[MIPS] Add GOT right below the text section"
33164686a7ac88d4eda38201be4127937e9c12b0 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

Signed-off-by: Yong Chen <yong.a.chen@intel.com>

(cherry picked from commit a0cdfe05905a5a4d2e494665809c8af9d040c116)

Change-Id: I3c6e082dffdfef122999c93d1c235e99af8c62ba
sCpuIntrinsicBlur.cpp
eac3e9b89366d1381e2c567b358a6e4a7fa390e8 04-Sep-2014 Petar Jovanovic <petar.jovanovic@imgtec.com> [MIPS] Add GOT right below the text section

Make sure that GOT is close to the text section, so the function can reach
it easily. This is important for MIPS64 for which there is an assumption
that GOT can be reached if 32-bit value is added to $t9 (the start of the
function for PIC). The MIPS64 code looks like this:

// lui $v0, %hi(%neg(%gp_rel(fname)))
// daddu $v1, $v0, $t9
// daddiu $globalbasereg, $v1, %lo(%neg(%gp_rel(fname)))

This patch prevents possible issue in which a function could not reach GOT.

Change-Id: I024f1f9483ffcd312bb6fcbc61145a171e7096e9
inkloader/include/GOT.h
inkloader/include/impl/ELFSectionProgBits.hxx
inkloader/lib/GOT.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>
sCpuIntrinsicBlur.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
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_x86.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
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlur.cpp
4592e82e77fdd8b6bc1cbc99c6809907f5dcddbe 21-Aug-2014 Jason Sams <jsams@google.com> Fix build break from bad merge.

Underlying structure changed in AOSP since LMP was branched.

Change-Id: I7793f9b03e5febfd9bc8965f7976ecaa9c6e2275
sCpuIntrinsicColorMatrix.cpp
ef48ce24c2fac16326ea9719cae7e930633c52dc 21-Aug-2014 Jason Sams <jsams@google.com> resolved conflicts for merge of adbc54f3 to lmp-dev-plus-aosp

Change-Id: I04f438a6fc4cd374a821c32102cc758d9a30d731
7e3243389f49a0bf673c35f9a82e4bbfe211877b 21-Aug-2014 Stephen Hines <srhines@google.com> am 4bb773ef: Merge "Replace android::String8 with std::string"

* commit '4bb773ef75eeff5960852b733bcca5834020ee9e':
Replace android::String8 with std::string
44bef6fba6244292b751387f3d6c31cca96c28ad 12-Aug-2014 Chris Wailes <chriswailes@google.com> Replace NULL macros with nullptr literals.

Change-Id: I918c40879aa547438f77e7d1a95fa2aa33bec398
inkloader/android/librsloader.cpp
inkloader/include/ELFHeader.h
inkloader/include/ELFObject.h
inkloader/include/ELFSectionBits.h
inkloader/include/ELFSectionProgBits.h
inkloader/lib/MemChunk.cpp
inkloader/lib/StubLayout.cpp
inkloader/main.cpp
inkloader/utils/serialize.h
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLoopFilter.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuRuntimeMath.cpp
sCpuRuntimeStubs.cpp
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sd_cpu.h
de52a834dbcb2a3196948e7b9f67d395493ea9a4 21-Aug-2014 Jason Sams <jsams@google.com> Fix two intrinsic clipping bugs.

bug 17157250

Change-Id: I65c945da6bd90733333a5472c1a85b5d3e3e4d6b
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve5x5.cpp
569b09b34243f71dd6d81ce637a92a0a707adbe4 21-Aug-2014 Stephen Hines <srhines@google.com> am 3fa79f84: Merge changes I4c6abd96,I9bcf36d0

* commit '3fa79f84fcce0b5f59498980a2bb8e355cf53cd4':
Replaced android::Vector with std::vector.
Adjust to handle the change to std::vector in libbcc.
237599760fbd1e98622c957ffd6c17279895be59 20-Aug-2014 Stephen Hines <srhines@google.com> am db0a8d1d: Merge "Rename rsCpuIntrinsics_x86 to a C++ source file."

* commit 'db0a8d1de452ad4c69120aa26ab1d604cad2c67d':
Rename rsCpuIntrinsics_x86 to a C++ source file.
4905166b56d74c97a83eee152bbbf1fa690ab132 19-Aug-2014 Stephen Hines <srhines@google.com> am cdb78457: Merge "Remove the instep parameter."

* commit 'cdb784579cee7094ad35ecc0cd3b45245eb1c382':
Remove the instep parameter.
6847e73314e13aa02231268cca245a81eb0539ca 12-Aug-2014 Chris Wailes <chriswailes@google.com> Replace android::String8 with std::string

Change-Id: I5b2b6d3e38afd0b040f0a584613745206bf01ba0
sCpuScript.cpp
3fa79f84fcce0b5f59498980a2bb8e355cf53cd4 20-Aug-2014 Stephen Hines <srhines@google.com> Merge changes I4c6abd96,I9bcf36d0

* changes:
Replaced android::Vector with std::vector.
Adjust to handle the change to std::vector in libbcc.
7de1920270dabef99538bc82a344632e04487fa9 20-Aug-2014 Stephen Hines <srhines@google.com> Rename rsCpuIntrinsics_x86 to a C++ source file.

Change-Id: Ib2897d71180259796be780efda63abe14a209e6f
ndroid.mk
sCpuIntrinsics_x86.c
sCpuIntrinsics_x86.cpp
93d6bc872b7d9fba63abfa7513d56b38d9c3d371 29-Jul-2014 Chris Wailes <chriswailes@google.com> Replaced android::Vector with std::vector.

Change-Id: I4c6abd964dc4b1412ec2e592fc8e835fecfe53f6
sCpuScript.cpp
sCpuScriptGroup.cpp
70d4971878444fe7cf4263998b0c3f46e2b6c71f 08-Aug-2014 Chris Wailes <chriswailes@google.com> Adjust to handle the change to std::vector in libbcc.

Change-Id: I9bcf36d088d423246312d97e2a87a05e90f6617d
sCpuScript.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
sCpuCore.cpp
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicLoopFilter.cpp
sCpuIntrinsicResize.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sCpuScriptGroup.h
26f26c7f30604712794cdce967f8724931078b23 18-Aug-2014 Stephen Hines <srhines@google.com> am 8d63899d: Merge "Collapse code paths for single- and multi-input kernels."

* commit '8d63899d90e3048832dc3c6c5ea5ef434658c8d5':
Collapse code paths for single- and multi-input kernels.
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
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicResize.cpp
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sd_cpu.h
385e32592394cf796d33102b8b7034ae81fdc13e 13-Aug-2014 Stephen Hines <srhines@google.com> am cd8df40f: Merge "Revert "Collapse code paths for single- and multi-input kernels.""

* commit 'cd8df40f07d88f896bea05ed06a20d1a4d5e9728':
Revert "Collapse code paths for single- and multi-input kernels."
38f10a1eee245153b843dd78712ecaff6e89c412 13-Aug-2014 Stephen Hines <srhines@google.com> am f2dd1651: Merge "Collapse code paths for single- and multi-input kernels."

* commit 'f2dd1651ea50bf176d5e6580cc0589f7a3e89995':
Collapse code paths for single- and multi-input kernels.
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
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicResize.cpp
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sd_cpu.h
bc140a9945120ec7d48824864acf0595dd31f7e2 13-Aug-2014 Stephen Hines <srhines@google.com> am fb0a2749: Merge "Add support for MIPS64 in linkloader"

* commit 'fb0a274983ae8bfb07aff8c292305389789d6e92':
Add support for MIPS64 in linkloader
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
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicResize.cpp
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sd_cpu.h
fb0a274983ae8bfb07aff8c292305389789d6e92 13-Aug-2014 Stephen Hines <srhines@google.com> Merge "Add support for MIPS64 in linkloader"
6a45ddb32f391060aa05da6ff09c4814d450586e 06-Aug-2014 Tim Murray <timmurray@google.com> Bugfixes for AArch64.

- Disable use of runtime pointer until we can set it correctly in invokes.
- Disable YUV and ColorMatrix ASIMD intrinsics
- Modify runtime stubs to use large objects correctly
- Fix calling convention in allocation.ll
- Add appropriate rsr functions for compat lib and large objects

bug 16846318

Change-Id: I7f6a4ff66fd1b3ad40b08cfc9ecdda7d53e95c7d
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicYuvToRGB.cpp
05ef73f2d934f1083cc3b8aeb33fe21de9d6e88f 05-Aug-2014 Jason Sams <jsams@google.com> Fix isObject when in 64bit mode.

This also cleans up the passing of args to SetObject and ClearObject.
Fix related issues in 64bit teardown.

Change-Id: I90d1b93c45ff5bc84957d5441ab48a4e2f6feb20
sCpuScript.cpp
89226c21a902990642d4c1a9b8a71b89825e3e01 12-Aug-2014 Tim Murray <timmurray@google.com> am 1aa9dfc0: Bugfixes for AArch64.

* commit '1aa9dfc002f6b763d34d75d9f47abb4aa70584a2':
Bugfixes for AArch64.
1aa9dfc002f6b763d34d75d9f47abb4aa70584a2 06-Aug-2014 Tim Murray <timmurray@google.com> Bugfixes for AArch64.

- Disable use of runtime pointer until we can set it correctly in invokes.
- Disable YUV and ColorMatrix ASIMD intrinsics
- Modify runtime stubs to use large objects correctly
- Fix calling convention in allocation.ll
- Add appropriate rsr functions for compat lib and large objects

bug 16846318

Change-Id: I7f6a4ff66fd1b3ad40b08cfc9ecdda7d53e95c7d
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicYuvToRGB.cpp
59886ba8f9bd4375bca1b82fe245696dfb383716 28-Jul-2014 Tim Murray <timmurray@google.com> Fix relocation issue for AArch64.

Change-Id: Ie10563b6a1ea894c45076480b123dcc2a854b5a5
inkloader/include/impl/ELFObject.hxx
5b0df2a1e2b329cbc3da9d4eed3bc469368c4009 06-Aug-2014 Jason Sams <jsams@google.com> am 262d77c2: Merge "Fix isObject when in 64bit mode." into lmp-dev

* commit '262d77c269ab55966d5803e4f795b3b60a548a37':
Fix isObject when in 64bit mode.
f29edf80510d483b8663e9d8b859959e37361aee 05-Aug-2014 Jason Sams <jsams@google.com> Fix isObject when in 64bit mode.

This also cleans up the passing of args to SetObject and ClearObject.
Fix related issues in 64bit teardown.

Change-Id: I90d1b93c45ff5bc84957d5441ab48a4e2f6feb20
sCpuScript.cpp
39f577243c8ce69a24a7d7ab50ba33b1800ad74e 30-Jul-2014 Tim Murray <timmurray@google.com> am ad0544fd: Merge "Fix relocation issue for AArch64."

* commit 'ad0544fdf918e64cec05d1c98588880f10b09220':
Fix relocation issue for AArch64.
ad0544fdf918e64cec05d1c98588880f10b09220 30-Jul-2014 Tim Murray <timmurray@google.com> Merge "Fix relocation issue for AArch64."
4e658279f46c556b5d18955aaba695991210400b 29-Jul-2014 Yang Ni <yangni@google.com> am 99192979: Validate input/output for a ScriptGroup.

* commit '99192979b3ef356998a438f5bd2e45fede6b457f':
Validate input/output for a ScriptGroup.
5f6f16fe612e1c30732becc66205500994889ac9 25-Jul-2014 Yang Ni <yangni@google.com> Validate input/output for a ScriptGroup.

If a script group requires input or output allocations, make sure
they are set before starting the execution of the script group.
If any allocation is missing, skip the execution and set a bad
value error with a message.

Change-Id: I7ee2da96aca3e6c9820225e6b2c39cb9378cb42f
sCpuScriptGroup.cpp
99192979b3ef356998a438f5bd2e45fede6b457f 25-Jul-2014 Yang Ni <yangni@google.com> Validate input/output for a ScriptGroup.

If a script group requires input or output allocations, make sure
they are set before starting the execution of the script group.
If any allocation is missing, skip the execution and set a bad
value error with a message.

Change-Id: I7ee2da96aca3e6c9820225e6b2c39cb9378cb42f
sCpuScriptGroup.cpp
9aaebe5695c0b14c1ff33a696a8074e8736acef9 28-Jul-2014 Tim Murray <timmurray@google.com> Fix relocation issue for AArch64.

Change-Id: Ie10563b6a1ea894c45076480b123dcc2a854b5a5
inkloader/include/impl/ELFObject.hxx
cfd173917c39e172ed84be26dce229bc8b5cccbb 25-Jul-2014 Stephen Hines <srhines@google.com> am 28c8f3a8: Merge "Split the RsForEachStubParamStruct in two."

* commit '28c8f3a8f4e92ef9956c5a01f09347eff1e59417':
Split the RsForEachStubParamStruct in two.
d282991c78d1fd79a222c5f114e623da255ba8a0 17-Jul-2014 Stephen Hines <srhines@google.com> Update RS for LLVM rebase to r212749.

This is mostly s/LLVM::OwningPtr/std::unique_ptr/.

Change-Id: I393f801e0afb867aa262c004844c2542d6d12da4
inkloader/android/librsloader.cpp
inkloader/include/ELFHeader.h
inkloader/include/ELFObject.h
inkloader/include/ELFReloc.h
inkloader/include/ELFSection.h
inkloader/include/ELFSectionBits.h
inkloader/include/ELFSectionHeader.h
inkloader/include/ELFSectionHeaderTable.h
inkloader/include/ELFSymbol.h
inkloader/include/impl/ELFObject.hxx
inkloader/include/impl/ELFReloc.hxx
inkloader/include/impl/ELFSectionHeader.hxx
inkloader/include/impl/ELFSectionHeaderTable.hxx
inkloader/include/impl/ELFSectionNoBits.hxx
inkloader/include/impl/ELFSectionProgBits.hxx
inkloader/include/impl/ELFSectionRelTable.hxx
inkloader/include/impl/ELFSectionStrTab.hxx
inkloader/include/impl/ELFSectionSymTab.hxx
inkloader/include/impl/ELFSymbol.hxx
inkloader/main.cpp
8386869e7f0b4bd6d8f75cf9839202435a63d393 25-Jul-2014 Dave Allison <dallison@google.com> am d315b98b: Merge "Fix linker veneer for aarch64 in renderscript" into lmp-dev

* commit 'd315b98bdf02789476ed3a0d1f35e210b917ff0a':
Fix linker veneer for aarch64 in renderscript
4e42468106fb8d5c63e2a4d09f1ccafdad61f893 24-Jul-2014 Dave Allison <dallison@google.com> Fix linker veneer for aarch64 in renderscript

Fix to ldr instruction encoding for loading target address.
Also adds a debug print for future debug (default is off)

Bug: 16031597
Change-Id: Ibe47226d9f95e7982dcbbf559389e927c48aed3d
inkloader/include/impl/ELFObject.hxx
inkloader/lib/StubLayout.cpp
28c8f3a8f4e92ef9956c5a01f09347eff1e59417 25-Jul-2014 Stephen Hines <srhines@google.com> Merge "Split the RsForEachStubParamStruct in two."
d315b98bdf02789476ed3a0d1f35e210b917ff0a 25-Jul-2014 Dave Allison <dallison@google.com> Merge "Fix linker veneer for aarch64 in renderscript" into lmp-dev
8817e3ebd67635810000de8898afee615a674760 24-Jul-2014 Dave Allison <dallison@google.com> Fix linker veneer for aarch64 in renderscript

Fix to ldr instruction encoding for loading target address.
Also adds a debug print for future debug (default is off)

Bug: 16031597
Change-Id: Ibe47226d9f95e7982dcbbf559389e927c48aed3d
inkloader/include/impl/ELFObject.hxx
inkloader/lib/StubLayout.cpp
34b2068c973ae65962c61fa11cf785a69bb5e233 24-Jul-2014 Stephen Hines <srhines@google.com> am fb8fe820: Merge changes I2a12d44b,I393f801e

* commit 'fb8fe8207eeb8b93429c7816606d27cf8066ab9f':
Pass -Bsymbolic to the linker from clang when compiling against stlport_static.
Update RS for LLVM rebase to r212749.
5600ebccedd4ae86bd6e41459e33bd2ae3992261 06-May-2014 Simon Hosie <simon.hosie@arm.com> Arbitrary sub-rectangle handling for ColorMatrix.

AArch64 code for odd-length cases, and correct pointer offsets.

Change-Id: I28049a768a1e3e65611898904fa42bd295208871
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_advsimd_ColorMatrix.S
abe41a94aeda9bc1c3d544e992534f5367a4874a 23-Jul-2014 Jason Sams <jsams@google.com> am 4a7c5fc6: Merge "Arbitrary sub-rectangle handling for ColorMatrix."

* commit '4a7c5fc6025329cf8d31c44b5ea6ff1f955e71f1':
Arbitrary sub-rectangle handling for ColorMatrix.
fb8fe8207eeb8b93429c7816606d27cf8066ab9f 24-Jul-2014 Stephen Hines <srhines@google.com> Merge changes I2a12d44b,I393f801e

* changes:
Pass -Bsymbolic to the linker from clang when compiling against stlport_static.
Update RS for LLVM rebase to r212749.
4a7c5fc6025329cf8d31c44b5ea6ff1f955e71f1 23-Jul-2014 Jason Sams <jsams@google.com> Merge "Arbitrary sub-rectangle handling for ColorMatrix."
c29686a4d4bd0ea8c0341d3ddbec796fa905f3a7 17-Jul-2014 Stephen Hines <srhines@google.com> Update RS for LLVM rebase to r212749.

This is mostly s/LLVM::OwningPtr/std::unique_ptr/.

Change-Id: I393f801e0afb867aa262c004844c2542d6d12da4
inkloader/android/librsloader.cpp
inkloader/include/ELFHeader.h
inkloader/include/ELFObject.h
inkloader/include/ELFReloc.h
inkloader/include/ELFSection.h
inkloader/include/ELFSectionBits.h
inkloader/include/ELFSectionHeader.h
inkloader/include/ELFSectionHeaderTable.h
inkloader/include/ELFSymbol.h
inkloader/include/impl/ELFObject.hxx
inkloader/include/impl/ELFReloc.hxx
inkloader/include/impl/ELFSectionHeader.hxx
inkloader/include/impl/ELFSectionHeaderTable.hxx
inkloader/include/impl/ELFSectionNoBits.hxx
inkloader/include/impl/ELFSectionProgBits.hxx
inkloader/include/impl/ELFSectionRelTable.hxx
inkloader/include/impl/ELFSectionStrTab.hxx
inkloader/include/impl/ELFSectionSymTab.hxx
inkloader/include/impl/ELFSymbol.hxx
inkloader/main.cpp
b9226587245293eefb8959d10fee05ebc2658efd 17-Jul-2014 Jean-Luc Brouillet <jeanluc@google.com> am b43d5d8c: Merge "Deprecate rs_fp_imprecise"

* commit 'b43d5d8cec78dfdfa2040d0dbd4f436d0d6a1bba':
Deprecate rs_fp_imprecise
7ebb02bf54cc3e6b6424c8da642ed75b460cc40d 10-Jul-2014 Jean-Luc Brouillet <jeanluc@google.com> Deprecate rs_fp_imprecise

Change-Id: I063e356e939393e6fa4f39d056cb526aeaf8ee70
sCpuScript.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
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicHistogram.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicLoopFilter.cpp
sCpuIntrinsicResize.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sCpuScriptGroup.h
a3a08243577a5d03239434e3f072af4c59f466e2 10-Jul-2014 Petar Jovanovic <petar.jovanovic@imgtec.com> Add support for MIPS64 in linkloader

Add relocateMIPS64() and handle the necessary relocations for the 64-bit
architecture.

Change-Id: Ib6372185dad349fce038a1801cf533e7dae8b27f
inkloader/include/ELFObject.h
inkloader/include/ELFReloc.h
inkloader/include/GOT.h
inkloader/include/impl/ELFObject.hxx
inkloader/lib/GOT.cpp
058a7a4f5bfda35e75cbd87af2be58e874f254c4 12-Jul-2014 Tim Murray <timmurray@google.com> am 8c8eb23d: Merge "Add 64bit large object support"

* commit '8c8eb23d31768bca01e2fd69c3931aeda31f3329':
Add 64bit large object support
35180b6231025f81e42f6ff5ec761f24a91d30ee 12-Jul-2014 Stephen Hines <srhines@google.com> am 60506d94: Merge "Fix build break for size_t vs. uint32_t difference."

* commit '60506d94c399dea8b6325000be27b07fed67852a':
Fix build break for size_t vs. uint32_t difference.
c562a29b2c221c22792cdbb7deeadca3fc0a6edd 12-Jul-2014 Stephen Hines <srhines@google.com> am db69bf01: Merge "Adds support for multi-input kernels to Frameworks/RS."

* commit 'db69bf0117c44d8996a3d179cc3b7a98bf8726ea':
Adds support for multi-input kernels to Frameworks/RS.
eaff410b9ba00927aeaad92dbbe72a45ff9e00aa 12-Jul-2014 Stephen Hines <srhines@google.com> am 11007c74: Merge "Moved RsForEachStubParamStruct out of rs_hal.h and into rsCpuCore.h."

* commit '11007c7488436bf4213d62e2785e25111eb97bf7':
Moved RsForEachStubParamStruct out of rs_hal.h and into rsCpuCore.h.
f4d3836c83097f57b62c235910fbf490c56ddf56 10-Jul-2014 Jean-Luc Brouillet <jeanluc@google.com> Deprecate rs_fp_imprecise

Change-Id: I063e356e939393e6fa4f39d056cb526aeaf8ee70
sCpuScript.cpp
6c6f7539377ec779a9ea36bfcc5859ad41f6e677 09-Jul-2014 Tim Murray <timmurray@google.com> am 8c8eb23d: Merge "Add 64bit large object support"

* commit '8c8eb23d31768bca01e2fd69c3931aeda31f3329':
Add 64bit large object support
191f131b123e20a217bcc57a3b2b626cc39f6bac 09-Jul-2014 Stephen Hines <srhines@google.com> am 60506d94: Merge "Fix build break for size_t vs. uint32_t difference."

* commit '60506d94c399dea8b6325000be27b07fed67852a':
Fix build break for size_t vs. uint32_t difference.
09e1490af01ecd12cf19ee1b507cea860814470b 08-Jul-2014 Stephen Hines <srhines@google.com> am db69bf01: Merge "Adds support for multi-input kernels to Frameworks/RS."

* commit 'db69bf0117c44d8996a3d179cc3b7a98bf8726ea':
Adds support for multi-input kernels to Frameworks/RS.
7f57593db8e1c9a59c3e028c377321f652f9fad0 08-Jul-2014 Stephen Hines <srhines@google.com> am 11007c74: Merge "Moved RsForEachStubParamStruct out of rs_hal.h and into rsCpuCore.h."

* commit '11007c7488436bf4213d62e2785e25111eb97bf7':
Moved RsForEachStubParamStruct out of rs_hal.h and into rsCpuCore.h.
4b3c34e6833e39bc89c2128002806b654b8e623d 11-Jun-2014 Chris Wailes <chriswailes@google.com> Adds support for multi-input kernels to Frameworks/RS.

This patch modifies Frameworks/RS in the following ways:
* Adjusted the data-layout of the C/C++ version of RsForEachStubParamStruct to
accommodate a pointer to an array of input allocations and a pointer to an
array of stride sizes for each of these allocatoins.
* Adds a new code path for Java code to pass multiple allocations to a RS
kernel.
* Packs base pointers and step values for multi-input kernels into the new
RsForEachStubParamStruct members.

Change-Id: I46d2834c37075b2a2407fd8b010546818a4540d1
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
cb51798a0379409c0f9927c44bbcdd772ed7ec18 08-Jul-2014 Chris Wailes <chriswailes@google.com> Moved RsForEachStubParamStruct out of rs_hal.h and into rsCpuCore.h.

Change-Id: Iea673ccd9db5077abef373457f51c6b0d09cea92
sCpuCore.h
c5a20170784a6a44ee1de1a754ca8c7175b78a6d 09-Jul-2014 Stephen Hines <srhines@google.com> Fix build break for size_t vs. uint32_t difference.

Change-Id: I11b9592214c4fa57ef62f42fd086a5a3df33abbf
sCpuIntrinsic.cpp
sCpuIntrinsic.h
a36c50a6ab87f4c9049318d4c6c8ec7b0a1e6e12 17-Jun-2014 Jason Sams <jsams@google.com> Add 64bit large object support

Add HAL hooks for filling in LO fields.

Change-Id: Ib9bdee714a062de519d2a9708c1016404a1b11a4

Conflicts:
driver/rsdBcc.cpp
driver/rsdCore.cpp
rsAllocation.h
rs_hal.h
sCpuScript.cpp
c2c00e81713f6a0d6fde711898e94826167795ef 27-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> am 32e093ad: Merge "Use build fingerprint and compile command for caching."

* commit '32e093ad58e9b858a6a3b747f262c5f0757a2e22':
Use build fingerprint and compile command for caching.
1c38baa7565a61f4c69169aa2753b644586afd00 26-Jun-2014 Stephen Hines <srhines@google.com> am a3f7905a: Merge "Add in a missing unlockMutex() on an error path."

* commit 'a3f7905addd8ef7302efbfa7c0c3ce89a88e7660':
Add in a missing unlockMutex() on an error path.
f94e8db4232979b2fc93e8a77c42bfa57d3da56a 26-Jun-2014 Stephen Hines <srhines@google.com> Add in a missing unlockMutex() on an error path.

Change-Id: I223e64381190184e37a92ce6478340cb7a323e29
sCpuScript.cpp
1b70788fd4571cd6e94db2219c930b5b59081969 26-Jun-2014 Jason Sams <jsams@google.com> am 51905042: Merge "Use remainder of AArch64 register file in Blur."

* commit '519050428c14962951e1fbde020fe2cf2fd64fbe':
Use remainder of AArch64 register file in Blur.
afb3114606d96c247ad91cb2bd15dc7ed6e1579a 25-Jun-2014 Stephen Hines <srhines@google.com> am 03836b04: Merge "Switch the dimensions array to use uint32_t instead of size_t."

* commit '03836b040d3bf53a93b8577060a4eb0c11639a5e':
Switch the dimensions array to use uint32_t instead of size_t.
519050428c14962951e1fbde020fe2cf2fd64fbe 26-Jun-2014 Jason Sams <jsams@google.com> Merge "Use remainder of AArch64 register file in Blur."
32e093ad58e9b858a6a3b747f262c5f0757a2e22 27-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> Merge "Use build fingerprint and compile command for caching."
40e35cdbe217ec8bf9fc3c69873c7d62fc14158f 26-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> Use build fingerprint and compile command for caching.

If either of those have changed, we need to invalidate the
compiled bit code.

Change-Id: Ic0c392ea5bfff5bf6dc8511740306895b1b12c82
sCpuScript.cpp
sCpuScript.h
4bea0d3b51fcdd9976af72c553a4a1d492016ca2 04-Jun-2014 Simon Hosie <simon.hosie@arm.com> Use remainder of AArch64 register file in Blur.

A lot of load/store can be avoided by using the rest of the register file,
here, so take advantage of that.

Change-Id: Ifaa2071d73ddb4f1f49f7de04f29001b5621ef7a
sCpuIntrinsics_advsimd_Blur.S
ac8d146a41f18afad5314ac8af440d6aedbe20bf 25-Jun-2014 Stephen Hines <srhines@google.com> Switch the dimensions array to use uint32_t instead of size_t.

size_t isn't safe, since we pack/unpack the array as a 32-bit int array, but
that is the wrong type for 64-bit. Switching to uint32_t is better, since we
only support 1 dimension today, and won't need many more than that even for
complex cases in the future.

Change-Id: Ie0dda264a9398b0e385e0f9ee0a91cda08325dbc
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
18f3f6fc011d6d73a4dddd24d628aa4d83839c3a 20-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> am 5557f339: Merge "Move the lib paths out of RSInfo."

* commit '5557f3391d1fe27269290fb65498d06f7ed42425':
Move the lib paths out of RSInfo.
9ab5094dd32352b33e251e540934f6e814c5fa5b 19-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> Move the lib paths out of RSInfo.

Change-Id: Ic65874459509043fef261f7e0122aade4e557c57
sCpuScript.cpp
sCpuScript.h
60b4af5728f5ea84aa3bb0d4ce556d91c3c9bed4 18-Jun-2014 Andrew Hsieh <andrewhsieh@google.com> am 8b0ab0a6: Merge "Fix Windows SDK build."

* commit '8b0ab0a6c33816485acf4a9a1864d5e4fd645ce2':
Fix Windows SDK build.
8b0ab0a6c33816485acf4a9a1864d5e4fd645ce2 18-Jun-2014 Andrew Hsieh <andrewhsieh@google.com> Merge "Fix Windows SDK build."
1409b09faf025bf48edf061afee683c22ad320e8 17-Jun-2014 Jason Sams <jsams@google.com> am d94d3b91: Merge "Use relative addresses in Blend function table."

* commit 'd94d3b91b3307610adbf48d11d4ab5e0f04e5ec5':
Use relative addresses in Blend function table.
d94d3b91b3307610adbf48d11d4ab5e0f04e5ec5 17-Jun-2014 Jason Sams <jsams@google.com> Merge "Use relative addresses in Blend function table."
8d50174ff0e80bc3846f9dfd6f7d154fc4949db4 26-May-2014 Logan Chien <tzuhsiang.chien@gmail.com> Fix Windows SDK build.

* Use gcc instead of clang in order to get proper exception support.
* Use libstdc++ instead of libc++ since gcc does not support _Atomic.
* Fix various 32/64 typing in linkloader.

Change-Id: I34abcf1e9fa98633e0fd35b4e1b71a0d5389008a
ndroid.mk
inkloader/android/librsloader.cpp
inkloader/include/impl/ELFObject.hxx
35e1335de1ae815513af5b0b93c5794b653e25ac 14-Jun-2014 Tim Murray <timmurray@google.com> am b26cd991: Merge "Disable NEON libclcore for AArch64."

* commit 'b26cd991dc7f1eea42f1688d1db303ed7775d043':
Disable NEON libclcore for AArch64.
53b0d778806fb21fb653f5346595ae95dc51b5e1 13-Jun-2014 Stephen Hines <srhines@google.com> am f6328b8d: Merge "Resolve R_X86_64_PC32 relocation type in RS."

* commit 'f6328b8db3b5de20fb27812157db2ff8bda4669c':
Resolve R_X86_64_PC32 relocation type in RS.
3a5382c2514ecf11454f169415f9c35a6c00968f 13-Jun-2014 Stephen Hines <srhines@google.com> am 1109ae5c: Merge "Add stub for x86 & x86_64."

* commit '1109ae5cbbebb4922aba0ae84cd859c6695a6184':
Add stub for x86 & x86_64.
e43e66fdbbdb461655499ec035ab5720b6520dab 12-Jun-2014 Dave Allison <dallison@google.com> am 9d7e8d94: Merge "Fix CALL26/JUMP26 relocations for AARCH64"

* commit '9d7e8d948791e5f7d87ba71f92ef2d6d4e012caa':
Fix CALL26/JUMP26 relocations for AARCH64
b26cd991dc7f1eea42f1688d1db303ed7775d043 14-Jun-2014 Tim Murray <timmurray@google.com> Merge "Disable NEON libclcore for AArch64."
bee48d79ba974e3dfbb782f9cce5c8d554f488e7 13-Jun-2014 Tim Murray <timmurray@google.com> Disable NEON libclcore for AArch64.

On ARMv8/AArch64, we can use the standard libclcore.bc for any precision,
as ASIMD is full IEEE 754 precision.

Change-Id: Iecff433b20f40a7f2272e497ad2e47a2f4b63ef3
ndroid.mk
sCpuScript.cpp
1109ae5cbbebb4922aba0ae84cd859c6695a6184 13-Jun-2014 Stephen Hines <srhines@google.com> Merge "Add stub for x86 & x86_64."
72151aac81a3cc92b9777aaa9b80f31a4ce9fcf7 12-Jun-2014 Xiaofei Wan <xiaofei.wan@intel.com> Add stub for x86 & x86_64.

Add stub support for x86, this will be used in x86 & x86_64 RS relocation.

Change-Id: Id5d1cc0679b43348a4f66707c21c6bdf85a3a7e4
Signed-off-by: Xiaofei Wan <xiaofei.wan@intel.com>
inkloader/include/ELFSectionProgBits.h
inkloader/include/StubLayout.h
inkloader/lib/StubLayout.cpp
77867c3e8dbad29699db85099551004d9af560bf 12-Jun-2014 Dave Allison <dallison@google.com> Fix CALL26/JUMP26 relocations for AARCH64

This fixes the code to relocate CALL26 and JUMP26 AARCH64 relocations. It will
jump directly to the target address if it is in range, otherwise it will use
a linker veneer (stub).

Change-Id: I816de505b95a5797e1ba3bf1023dfc24484e5da8
inkloader/include/impl/ELFObject.hxx
inkloader/include/impl/ELFSectionProgBits.hxx
29dec29b96f513ceaa06ec1a8c422579a0a3a320 13-Jun-2014 Xiaofei Wan <xiaofei.wan@intel.com> Resolve R_X86_64_PC32 relocation type in RS.

Add stub when offset is out of range in x86_64

Change-Id: I7ad4879545971cd3ce59b8634c943bf4ee723fd8
Signed-off-by: Xiaofei Wan <xiaofei.wan@intel.com>
inkloader/include/impl/ELFObject.hxx
4b2ea46bdc7676d1a0328709435ae57f0d7d7289 11-Jun-2014 Jason Sams <jsams@google.com> am d45b4439: Merge "Convert LUT loop to use scalar data types."

* commit 'd45b443972955574f0a36c46855760eefd63e66b':
Convert LUT loop to use scalar data types.
ed157c86dca0f671ea11d57a1b884cd15f76cdb2 11-Jun-2014 Jason Sams <jsams@google.com> Convert LUT loop to use scalar data types.

Change-Id: I53f6d87a4d7093ee0dc20371dcf4cdb8396522fd
sCpuIntrinsicLUT.cpp
1c9a5e1e15ccef0ea769750a3d7353cd5fbe4733 10-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> am a979674d: Merge "Remove FAKE_ARM64_BUILD now that we have 64 build working."

* commit 'a979674d5063a947b2d8f340e306f51b4a0632fb':
Remove FAKE_ARM64_BUILD now that we have 64 build working.
a979674d5063a947b2d8f340e306f51b4a0632fb 10-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> Merge "Remove FAKE_ARM64_BUILD now that we have 64 build working."
f4d216ee0f0ef18edbde208a61dc4e2fe4c8f050 10-Jun-2014 Jean-Luc Brouillet <jeanluc@google.com> Remove FAKE_ARM64_BUILD now that we have 64 build working.

Change-Id: Ieb6627adcd1d097fe709559e182efcfc6841d13e
sCpuScript.cpp
sCpuScript.h
0d53201417f03300689ec7b9ccf6a7d66aaeed52 10-Jun-2014 Dave Allison <dallison@google.com> am 45927b48: Merge "Add R_AARCH64_ADD_ABS_LO12_NC relocation to RS linkloader."

* commit '45927b4889bdc69e7403f90cd3e9e9e1bfb445b1':
Add R_AARCH64_ADD_ABS_LO12_NC relocation to RS linkloader.
d25f7a0a19446fa3d0c20fcf375e11e3fb5d1a0a 09-Jun-2014 Dave Allison <dallison@google.com> Add R_AARCH64_ADD_ABS_LO12_NC relocation to RS linkloader.

Add the missing relocation.
Also add R_AARCH64_LDST8_ABS_LO12_NC as I noticed this was missing too.

Bug: 15448747
Change-Id: I6e79017e8ef659eb8913347c4eacb5ff0ef008a6
inkloader/include/impl/ELFObject.hxx
f07408eb1df70fad7d842067e2991db95815d286 04-Jun-2014 Stephen Hines <srhines@google.com> am c2c41ff8: Merge "[MIPS64] Enable mips64 build"

* commit 'c2c41ff87105cbc67ad55daf9339ba2a54bf341c':
[MIPS64] Enable mips64 build
e8e408ada85b77e0a7314ef8e734aa9fc981a237 14-May-2014 Duane Sand <duane.sand@imgtec.com> [MIPS64] Enable mips64 build

Change-Id: Iad5141ff83be3497c577c63177516f899775e271
ndroid.mk
6e7e258316f72be95039278e88e3bc1daea1668f 06-May-2014 Simon Hosie <simon.hosie@arm.com> Arbitrary sub-rectangle handling for ColorMatrix.

AArch64 code for odd-length cases, and correct pointer offsets.

Change-Id: I28049a768a1e3e65611898904fa42bd295208871
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_advsimd_ColorMatrix.S
4650eba1dfd0dd6d33aca105adceee7aeff29cfe 03-Jun-2014 Tim Murray <timmurray@google.com> am 5e0109a2: am f34ba456: Merge "Modify script loading behavior."

* commit '5e0109a20a4c6c950c0e4938a204acb4dec82d7e':
Modify script loading behavior.
29809d1f95d4cd4cbc6b2f9384b3321759691e13 28-May-2014 Tim Murray <timmurray@google.com> Modify script loading behavior.

This moves away from RSInfo and toward bcinfo. This also disables all caching for the time being.

Change-Id: Id7c717258d51e0b45540a78596f1bc9c94468efb
sCpuScript.cpp
sCpuScript.h
9cca69a233b87786ef27dd547fca7cea2d402faf 31-May-2014 Tim Murray <timmurray@google.com> am 482bd65e: am 822db82c: Merge "Update runtime stubs."

* commit '482bd65e9bbc3d4cf012e72158e0142fb468e856':
Update runtime stubs.
6a9cc720f106358880eb33f2ea48fe5f5d6d0c37 31-May-2014 Tim Murray <timmurray@google.com> Update runtime stubs.

Adds exp2f.

Change-Id: I97c83af4b3be2cdadea2c2e9243da4772d5b4e69
sCpuRuntimeMath.cpp
2b54b28c8235fb762fbafd88a3ef7857053987b3 23-May-2014 Simon Hosie <simon.hosie@arm.com> Use relative addresses in Blend function table.

Change-Id: I6399ab11daf6b13626116ef653ad9cf572a94ff5
sCpuIntrinsics_advsimd_Blend.S
f6deeee12e6cfdcac4c0f5321095625226c44fdf 27-May-2014 Tim Murray <timmurray@google.com> am 7a09ae78: am bebfcc59: Merge "Update runtime stubs. "

* commit '7a09ae78e200ea6cdf4f1f8280adcca68062872c':
Update runtime stubs.
60fe47db884673ace2b41c6a037a376bbd0fd670 27-May-2014 Tim Murray <timmurray@google.com> Update runtime stubs.

Adds rsDebug for doubles. Also adds additional powf lookup.

Change-Id: I0f0a815a2b143102bcbf6d274d1ca4a0d897b651
sCpuRuntimeMath.cpp
sCpuRuntimeStubs.cpp
e923f9a978362b1d4c0cd17aacb4a830c49e60b7 23-May-2014 Jason Sams <jsams@google.com> am ef32455d: am 64c12679: Merge "Enable ARM64 intrinsics."

* commit 'ef32455d351ed3306a696e74742defbc0a4e9527':
Enable ARM64 intrinsics.
51be0e996482f47b40234e641b3310737a203c72 23-May-2014 Stephen Hines <srhines@google.com> am 60500c8b: am 529f0e00: Merge "Switch to the separate RS loading path."

* commit '60500c8be57d05bf24601d8e15c6ce83cf1a8968':
Switch to the separate RS loading path.
64c126798d1210b15a103ef98c09861f60a9d7de 22-May-2014 Jason Sams <jsams@google.com> Merge "Enable ARM64 intrinsics."
529f0e0026d4e9c497cbaabd4712533951a6bd9d 22-May-2014 Stephen Hines <srhines@google.com> Merge "Switch to the separate RS loading path."
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
ndroid.mk
sCpuCore.cpp
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicLoopFilter.cpp
sCpuIntrinsicYuvToRGB.cpp
25e3af55a43faddced1a9931574dfdc3cc8ad8fd 22-May-2014 Stephen Hines <srhines@google.com> Switch to the separate RS loading path.

This change goes with a similar change to libbcc that separates compilation
from loading. We create our own symbol resolvers in the driver.

Change-Id: Ifdeed588d5935c49a1e19bdc46d0a8f0b9252e00
sCpuScript.cpp
sCpuScript.h
daeeba27842fc77e99652e93a1a1cbf6f14044b2 22-May-2014 Dave Allison <dallison@google.com> am ca48a48d: am f981663b: Merge "Add aarch64 relocations"

* commit 'ca48a48de6529529fe9e5ecd7465acfd6780f721':
Add aarch64 relocations
723ba16bac04e65c147742fa08ae2b87da3c0fd5 20-May-2014 Dave Allison <dallison@google.com> Add aarch64 relocations

This adds missing aarch64 relocations for the RS linker.

Bug: 15020895
Change-Id: Ibcd8537426c57247ac6f7cbc358bfc9b78546249
inkloader/include/impl/ELFObject.hxx
cdd409931b5802ba1284abcad06a4ce714a68522 19-May-2014 Stephen Hines <srhines@google.com> am c348888c: am 57fa42d4: Merge "Switch to standalone bcc compilation path (again)."

* commit 'c348888c5a24a52c02417840110b0e06cea6617d':
Switch to standalone bcc compilation path (again).
d69b0eb7f8c180b401b45376144ee05af078b13a 15-May-2014 Stephen Hines <srhines@google.com> Switch to standalone bcc compilation path (again).

Bug: 7342767
Change-Id: I6d876742cbd4dbbc7fac1d559a7c54da9e118889
sCpuScript.cpp
7e47dca8875d31953a6e3205954b885866d5533a 14-May-2014 Jason Sams <jsams@google.com> am 82325ad0: am 53a408b7: Merge "YuvToRGB sub-rectangle handling."

* commit '82325ad020e458b896a3d80ed3fdc9485b247902':
YuvToRGB sub-rectangle handling.
53a408b7cfb5992eeb159ec305f16dd112ad3080 13-May-2014 Jason Sams <jsams@google.com> Merge "YuvToRGB sub-rectangle handling."
2d28948a13f296ad9937893ccfaabfdb91019bb9 13-May-2014 Jason Sams <jsams@google.com> am bdf8dc3a: am bbbd923d: Merge "Fix some empty matrix cases in ColorMatrix."

* commit 'bdf8dc3a0dfe6501da17b8c75ac8031717e90aa6':
Fix some empty matrix cases in ColorMatrix.
bbbd923d622eb0b9db27157629955f4f64e924a9 13-May-2014 Jason Sams <jsams@google.com> Merge "Fix some empty matrix cases in ColorMatrix."
43bd992337fb8efde6f7bf02d68b858720760a60 13-May-2014 Jason Sams <jsams@google.com> am 7eac4da7: am 3849dae1: Merge "Handle 3DLUT odd-length cases in assembly."

* commit '7eac4da73a5bb7721da9328cfa82e339501d5913':
Handle 3DLUT odd-length cases in assembly.
3849dae10c6af1abc36de4ac856879f2728415bc 13-May-2014 Jason Sams <jsams@google.com> Merge "Handle 3DLUT odd-length cases in assembly."
f0e571f6d5a352ce547bfee67f670bbde7b665fe 09-May-2014 Stephen Hines <srhines@google.com> am 6a194e62: am 8711f9da: Merge "Use the proper triple when compiling with bcc."

* commit '6a194e6206250b738558ea725cf3129a6a90cc32':
Use the proper triple when compiling with bcc.
8711f9dad12664fd981eec0db6bed5da8ef4e6cc 09-May-2014 Stephen Hines <srhines@google.com> Merge "Use the proper triple when compiling with bcc."
9daf5e00a26395934285055c011fbf94a4665447 08-May-2014 Jason Sams <jsams@google.com> am 7da83646: am 5d1e327e: Merge "Strict clamping when packing to u8."

* commit '7da8364655bed45823c22d5d809b5dfcff596585':
Strict clamping when packing to u8.
5d1e327e51838ebc3baeb35db2d2d00603b7a86a 08-May-2014 Jason Sams <jsams@google.com> Merge "Strict clamping when packing to u8."
82e0a6779cb1006921153081fb33374197e7c9de 06-May-2014 Stephen Hines <srhines@google.com> Use the proper triple when compiling with bcc.

Change-Id: I6cbd14e1e196012583929dd383803903dc80e9ff
ndroid.mk
sCpuScript.cpp
f7805ffb93d7e0daf2164549a75a8ced74c7f376 08-May-2014 Ying Wang <wangying@google.com> am 0b048ffd: am 5ffc8d2f: Merge "Remove unused LOCAL_LDLIBS."

* commit '0b048ffd29c8c1e7836b2d50fe03e020a7d8235b':
Remove unused LOCAL_LDLIBS.
af353bfc2d857f8c800d3feecff3353e0c5f41e9 08-May-2014 Ying Wang <wangying@google.com> Remove unused LOCAL_LDLIBS.

Change-Id: Ic0b3b5dc136f4b537136936fa3f0c36a71f2c4ba
ndroid.mk
1d9c887c58d115975e01c9d500595f503803dc8c 02-May-2014 Simon Hosie <simon.hosie@arm.com> YuvToRGB sub-rectangle handling.

Fix some difficult edge cases when processing only a portion of the image.

Also fix a register-marshalling bug in AArch64 assembly.

Change-Id: I8cd67f394fb42b216b2c3c7401e90eb2b86fca3d
sCpuIntrinsicYuvToRGB.cpp
sCpuIntrinsics_advsimd_YuvToRGB.S
sCpuIntrinsics_neon_YuvToRGB.S
07e4665c04a71462e6cfc1c2bb2300a9ed111e60 10-Apr-2014 Simon Hosie <simon.hosie@arm.com> Handle 3DLUT odd-length cases in assembly.

Change-Id: I43802cad1a8ae74e369791a88a9644dc389519af
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsics_advsimd_3DLUT.S
sCpuIntrinsics_neon_3DLUT.S
42488d249e0c5b2f12973d576261bda74b54c85f 16-Apr-2014 Simon Hosie <simon.hosie@arm.com> Strict clamping when packing to u8.

Change-Id: I511ec4b7f0985c9404a5d1daabcf97fe380c62af
sCpuIntrinsics_neon_ColorMatrix.S
c7c255e86b2cbd36e4da94632c49b3c8b4f74031 08-Mar-2014 Simon Hosie <simon.hosie@arm.com> Fix some empty matrix cases in ColorMatrix.

Change-Id: I77ee44844472c647f12e80e2d68c11e2b272e595
sCpuIntrinsicColorMatrix.cpp
98950317aadf5e19c613644ce7a0e7ee293ac30e 06-May-2014 Jason Sams <jsams@google.com> am be75fc2d: am a5b0367f: Merge "Switch to using LLVM intrinsics for conversions"

* commit 'be75fc2da17e719631329c0338565db9d0dda780':
Switch to using LLVM intrinsics for conversions
70404fa9781f13a8ca07d621f74f3810daab9704 05-May-2014 Jason Sams <jsams@google.com> Switch to using LLVM intrinsics for conversions

Replaces the hand written .ll files for conversion.

Change-Id: Ie8c6c8354847ddc84217f163060a9ee909496327
sCpuIntrinsicInlines.h
b5cf2b46ed356ac8c5e2674fbf8afa4ec7a17b2e 02-May-2014 Stephen Hines <srhines@google.com> am 5fe9a5a1: am 345db92b: Merge "Revert "Switch to standalone bcc compilation path.""

* commit '5fe9a5a1aa10afc7a9e7e9a4ca90a33eb6069a7d':
Revert "Switch to standalone bcc compilation path."
748a43678b33a7d814f4466f2846b8c955a9e1e8 02-May-2014 Stephen Hines <srhines@google.com> Revert "Switch to standalone bcc compilation path."

The current standalone bcc on the device needs to be able to select from
multiple possible target triples before we enable it by default.

Bug: 14470052

This reverts commit 99281b5bc2a81a42fa490ddbc1496621c2d84486.

Change-Id: I68f98b3c4f78d708aa5f544d36570e3db9c3e7d1
sCpuScript.cpp
dcefcec86f9b99ed944ad118ecac89b598a3460b 01-May-2014 Jean-Luc Brouillet <jeanluc@google.com> am 5470b9fb: am 2d08f007: Merge "Fix comments in gaussian blur"

* commit '5470b9fb37bf149a39cd409476b8f093cf00e7d7':
Fix comments in gaussian blur
2d08f007e16273691bbfeba45d43257dafee1dc6 01-May-2014 Jean-Luc Brouillet <jeanluc@google.com> Merge "Fix comments in gaussian blur"
e09b71b3efd482b2fc45e0e742257e19a2964245 30-Apr-2014 Stephen Hines <srhines@google.com> am 0b66b5f7: am df531391: Merge "Switch to standalone bcc compilation path."

* commit '0b66b5f727d541ba44aa28d7362d1748c830b3bc':
Switch to standalone bcc compilation path.
212304e1395963e5dc79496e5133718c337dd2c0 30-Apr-2014 Stephen Hines <srhines@google.com> am 912029f8: am 0ddfb1eb: Merge "Configure standalone bcc compiler to work with plugin libraries."

* commit '912029f88ab9a1c9fa8f96c429e0fafac33b3f34':
Configure standalone bcc compiler to work with plugin libraries.
df53139188b08a70f1a94fb9f476cbc3364f68c8 30-Apr-2014 Stephen Hines <srhines@google.com> Merge "Switch to standalone bcc compilation path."
0ddfb1ebd5ef0630e7351a202248285ada097d5f 30-Apr-2014 Stephen Hines <srhines@google.com> Merge "Configure standalone bcc compiler to work with plugin libraries."
8b7117dfbcca8a74dfd83aaff7f82d2d7e3abd8f 30-Apr-2014 Jean-Luc Brouillet <jeanluc@google.com> Fix comments in gaussian blur

Change-Id: Ifae435f9b2e65d6064412d09558b0c6ea32aea25
sCpuIntrinsicBlur.cpp
f4c981e1abbbf877ac418637b4b05998da71b463 30-Apr-2014 Stephen Hines <srhines@google.com> am 90e7e571: am 41718a0d: Merge "Switch to __builtin___clear_cache(), since __clear_cache is deprecated."

* commit '90e7e571c48cd7bb6821f475241a421bbc06d193':
Switch to __builtin___clear_cache(), since __clear_cache is deprecated.
41718a0de646f7bc389b26ea871c62ed3494fb94 30-Apr-2014 Stephen Hines <srhines@google.com> Merge "Switch to __builtin___clear_cache(), since __clear_cache is deprecated."
99281b5bc2a81a42fa490ddbc1496621c2d84486 04-Feb-2014 Stephen Hines <srhines@google.com> Switch to standalone bcc compilation path.

Bug: 7342767
Change-Id: Idabdc75cb7daefa44177b23efe6ef8c3df4e908a
sCpuScript.cpp
005113297b19ed256b6db9d6bc293ed9266899fc 31-Jan-2014 Stephen Hines <srhines@google.com> Configure standalone bcc compiler to work with plugin libraries.

Bug: 7342767

This change adds support (hidden behind the EXTERNAL_BCC_COMPILER ifdef)
for loading plugin libraries via the external bcc toolchain. The external
bcc compiler loads the named library and will then invoke a customized
rsCompilerDriverInit() from that library.

Change-Id: I07c2ea68be54c2255d36926fd37e395db790ef8f
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
dc061e48d5b17d14cfd18c170b4331e67d857475 30-Apr-2014 Stephen Hines <srhines@google.com> Switch to __builtin___clear_cache(), since __clear_cache is deprecated.

Change-Id: Ib6ab398b39c72365dfa81c467bf6f56326f4097a
inkloader/utils/flush_cpu_cache.h
7b0cddeae03a7ba85e681e43cbf4c3083b6883b5 30-Apr-2014 Jason Sams <jsams@google.com> am e96419bd: am 5d56c90e: Merge "Add comments for fast-path RS kernel"

* commit 'e96419bd36a15340ac69634a0f177e02f30fef2d':
Add comments for fast-path RS kernel
e7fd0788c9735acf76e3d251013d0aa2d7a900c4 30-Apr-2014 Jason Sams <jsams@google.com> am 0a637ca4: am f1304740: Merge changes Iafa1fe3d,I32dba6b3

* commit '0a637ca4db4ef739863662c203f4a002320d19e2':
Mark convert_(long/double) as API 21
Fix performance regression in color matrix.
858d0352934596aa46fe97a70f30d4d837f6fc7f 30-Apr-2014 Jason Sams <jsams@google.com> Add comments for fast-path RS kernel

Change-Id: I4b7450383d7b4c788fdfd5555d79dc94836b9fee
sCpuIntrinsicColorMatrix.cpp
98dd4bb2b1b08f04dd5034fe0c69daa15f6cc6da 30-Apr-2014 Jason Sams <jsams@google.com> Fix performance regression in color matrix.

Previous bug fix which added "len &= 3" was buggy.

Change-Id: I32dba6b340ced35a7686243c5d9c468b5ade1ad6
sCpuIntrinsicColorMatrix.cpp
065665487fe9f9fb2d2f4e52f99e6387845b02d2 25-Apr-2014 Stephen Hines <srhines@google.com> am a6d32f10: Merge "Update fw/rs for Clang 3.5."

* commit 'a6d32f109788d3a3275648664ea8b4452ecf7bdd':
Update fw/rs for Clang 3.5.
8c24cd62187fb963cb1b76d2e91ae8c247c7f6fb 11-Apr-2014 Tim Murray <timmurray@google.com> Update fw/rs for Clang 3.5.

Change-Id: I0a9a1b1e61cb435f0102936ad9ffd51599c49e88
ndroid.mk
d56fa5280ec42b2609d2b0baa96a2b7006c4a611 24-Apr-2014 Jason Sams <jsams@google.com> resolved conflicts for merge of d3fe4992 to klp-modular-dev-plus-aosp

Change-Id: I7204f824ea46d2d1fff9c5269526e586c0bf4e77
1fb4e815d77966fa38c65107e4c34f22f7fe0065 24-Apr-2014 Jason Sams <jsams@google.com> am 0a6fea1a: Merge "Improve RS intrinsics performance."

* commit '0a6fea1ac38508b4e48f0da6d1024e211e900e84':
Improve RS intrinsics performance.
d3fe4992b47848deb9a2876951aeb0bb1c62ad3f 24-Apr-2014 Jason Sams <jsams@google.com> Merge "Revert "Add VP9 inter-frame prediction intrinsic""
0a6fea1ac38508b4e48f0da6d1024e211e900e84 24-Apr-2014 Jason Sams <jsams@google.com> Merge "Improve RS intrinsics performance."
ee0f4835e065ef08a6283e3f86cdc671a5a156c7 24-Apr-2014 Jason Sams <jsams@google.com> Revert "Add VP9 inter-frame prediction intrinsic"

This reverts commit 60498fe9679ea25a260a503d6dfd27cbc0a0c079.

Change-Id: I4d8bb284793874a08c0cc991c0e04ecc104e1e0f

Conflicts:
cpu_ref/Android.mk
cpu_ref/rsCpuCore.cpp
rsDefines.h
ndroid.mk
onvolve/convolve.c
onvolve/convolve8_avg_neon.s
onvolve/convolve8_neon.s
onvolve/convolve_avg_neon.s
onvolve/convolve_copy_neon.s
onvolve/convolve_neon.c
onvolve/vp9_common.h
onvolve/vp9_filter.h
sCpuConvolve.h
sCpuCore.cpp
sCpuIntrinsicInterPred.cpp
sCpuIntrinsicInterPred.h
e660532259b1baf2c112e693360a42dc7bce4336 22-Apr-2014 Stephen Hines <srhines@google.com> am 70fe08dd: Merge "Skip the .ARM.exidx section, since it is currently unused."

* commit '70fe08dd27dc8fa682275a7057e8baafa6aa9369':
Skip the .ARM.exidx section, since it is currently unused.
0715b383c2d121de12af5bdcba5183edd753f523 21-Apr-2014 Stephen Hines <srhines@google.com> Skip the .ARM.exidx section, since it is currently unused.

Change-Id: I454e4cf311a3eed5cc3b1f4398bdbc7976a0d430
inkloader/include/impl/ELFObject.hxx
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>
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsics_x86.c
e7c71b42e03d596a5e2f49b9cb76c479c4956cd9 17-Apr-2014 Tim Murray <timmurray@google.com> am 48360016: Merge "Fix ARM64 build."

* commit '4836001604783fb7e3ce0ffd9a33afaf34865bba':
Fix ARM64 build.
810aa7a47f3dfe2b207e755121e801ae88bda0fa 17-Apr-2014 Jason Sams <jsams@google.com> resolved conflicts for merge of 0d6043ca to klp-modular-dev-plus-aosp

Change-Id: Ic0b72a5ae43d78ed224d2aeda25a83a79f9f26ec
39ab94aafb7f0916a7f6e345ee1fa0f5ff3bbacd 17-Apr-2014 Jason Sams <jsams@google.com> Bicubic resize intrinsic

Change-Id: Ie869484505c3e25e8ea57ff208b9e052ee8dca7b
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicResize.cpp
0d6043caef208ee6c661eb17bcb376abfe90cd48 17-Apr-2014 Jason Sams <jsams@google.com> Bicubic resize intrinsic [DO NOT MERGE]

Change-Id: I49fec0d33f0aab9b32438e4e97db18ea036989a7
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicResize.cpp
6cdb84d219baf95287e223c8d078c1852fa1a29a 17-Apr-2014 Tim Murray <timmurray@google.com> Fix ARM64 build.

Change-Id: Ic947b16baaea22a0a6ad02da938ea48b986b2f0e
inkloader/include/impl/ELFObject.hxx
db2ffd2e9c7b7949905621e55a73d3431cf4fc90 04-Apr-2014 WeiTang <wei.a.tang@intel.com> Enable linker loader support for 64bit elf object

Change-Id: I6425c427d6a9eddd30e44abf595601180ca52eba

Conflicts:
cpu_ref/linkloader/include/impl/ELFObject.hxx
inkloader/android/librsloader.cpp
inkloader/include/impl/ELFObject.hxx
cc141397f74536754b9ca6d847f7385b38f92b50 16-Apr-2014 Tim Murray <timmurray@google.com> Merge "Resolve x86_64 relocations in RS."
c726af7297d4818264999ced4078bdae728b9a04 11-Apr-2014 Dave Allison <dallison@google.com> Merge "Add support for AARCH64 relocations to the RS linkloader."
7c4d899920c9aecb5e64da2f667a4a24496bbbe5 08-Apr-2014 Jason Sams <jsams@google.com> Fix potential overrun by optimized code.

Change-Id: I0435eb04d51c3f95a9db4af2dbd7da0919dfe366
sCpuIntrinsic3DLUT.cpp
863b8c326f138f570f2d055e1a14100d00fb8983 08-Apr-2014 Jason Sams <jsams@google.com> Fix color matrix bug.

Change-Id: I8087572249f73165136cec3520e8d1c29eea002f
sCpuIntrinsicColorMatrix.cpp
adab849c946f3b18bcc6da06ad1a4efcec7cff3c 01-Apr-2014 Matthieu Delahaye <matthieu@multicorewareinc.com> RS: Fix VP9 LoopFilter to handle 4K video

One of the buffer allocated within the intrinsic was not
wide enough to accomodate space needed for 4K videos.

Change-Id: I3079e8a4c175a25ea427cefc80958ee660674e0b
sCpuIntrinsicLoopFilter.cpp
30e2a4c8d848bc788cc5600e6b929b4f761f3f03 28-Mar-2014 Dave Allison <dallison@google.com> Add support for AARCH64 relocations to the RS linkloader.

This is still a WIP until we can verify what relocations are actually used by
the 64 bit compiler. This covers ABS, PREL, CALL and JUMP relocations only for
now.

This has not been tested but does build.

Change-Id: Iaa85c49e96a63e8c4eef225b8cab619a1cdb861f
inkloader/include/ELFObject.h
inkloader/include/ELFSectionProgBits.h
inkloader/include/StubLayout.h
inkloader/include/impl/ELFObject.hxx
inkloader/include/impl/ELFSectionRelTable.hxx
inkloader/lib/ELFHeader.cpp
inkloader/lib/StubLayout.cpp
4e5c414252846e96d2e353515134387d86150c68 16-Mar-2014 Simon Hosie <simon.hosie@arm.com> AArch64 ports of Convolve3x3 and Convolve5x5.

Change-Id: I68d9e0ddda128f07d4383d20e9bad161f0c6965b
ndroid.mk
sCpuIntrinsics_advsimd_Convolve.S
sCpuIntrinsics_neon.S
sCpuIntrinsics_neon_Convolve.S
5dcaaa5f50926bebf6877e254c521faa7e2593e3 16-Mar-2014 Simon Hosie <simon.hosie@arm.com> Optimisations to 3DLUT assembly.

Process more pixels at once to try to keep the register file fuller and more
tightly packed and allow more concurrency. Implementations in AArch32 and
AArch64 assembly.

Change-Id: I683078ff02155cc14bacce35bce3d3fe06857095
ndroid.mk
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsics_advsimd_3DLUT.S
sCpuIntrinsics_neon.S
sCpuIntrinsics_neon_3DLUT.S
ea76eb386a2d851d50be69ebeb7ae593f84a5be9 16-Mar-2014 Simon Hosie <simon.hosie@arm.com> Make Blur AArch64 assembly position-independent.

Change-Id: I426fba9fff3ac165f5be5f78e2458dbc3b59ab02
sCpuIntrinsics_advsimd_Blur.S
0462a39371659d1eeed5eb48dd6d507760301c22 08-Mar-2014 Simon Hosie <simon.hosie@arm.com> Add AArch64 assembly for ColorMatrix.

Change-Id: I2fcc57aceea08243d5132287f6de053b846c5fe7
ndroid.mk
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_advsimd_ColorMatrix.S
sCpuIntrinsics_neon_ColorMatrix.S
7e4f65d7477617a2e19a371e88f888f554f7736a 16-Mar-2014 Simon Hosie <simon.hosie@arm.com> Avoid Clang's integrated AArch64 assembler.

Change-Id: I9babbce1e7b04bb1f8af29886d7cafb16fd8f71c
ndroid.mk
6dc86b492191f9062e912afd948e08362201f332 25-Mar-2014 Jason Sams <jsams@google.com> Merge "RS: Add VP9 LoopFilter Intrinsic"
41de3047284411afde00707e0a98fe2949bc04ec 20-Mar-2014 Xiaofei Wan <xiaofei.wan@intel.com> Resolve x86_64 relocations in RS.

Change-Id: I7e32aa150bd04d6b48afd656291a85b0ca5c182d
Signed-off-by: Xiaofei Wan <xiaofei.wan@intel.com>
inkloader/include/impl/ELFObject.hxx
3cdd1fbfa0ad068b1b584643453883770425722c 19-Mar-2014 Ian Rogers <irogers@google.com> Define FAKE_ARM64_BUILD for all 64bit targets.

Change-Id: I105ce21b11453b89c8544b907ebab97340ae02d3
ndroid.mk
0e780a7ce6794e53e475573dbcb8af01fe57e708 19-Mar-2014 Narayan Kamath <narayan@google.com> Merge "Move renderscript over to __clear_cache (compiler-rt)."
6fc3e12b8912458cb4adcfd32e2f53d76b0cc737 04-Mar-2014 Matthieu Delahaye <matthieu@multicorewareinc.com> RS: Add VP9 LoopFilter Intrinsic

Change-Id: I5caa46da2c825a95cc1ed35a1cdbcd6da0ffce88
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicLoopFilter.cpp
p9_loopfilter_16_neon.S
p9_loopfilter_neon.S
p9_mb_lpf_neon.S
00dbeacfd62bdecd5fce9426c4795aec8618753b 18-Mar-2014 Jason Sams <jsams@google.com> Merge "Revert "RS: Add VP9 LoopFilter Intrinsic""
933bdc9b648995ab68da746c6daa2206eec02b0f 18-Mar-2014 Jason Sams <jsams@google.com> Revert "RS: Add VP9 LoopFilter Intrinsic"

This has build errors with the x86 SDK.

This reverts commit 64048e720cf940cb0f7f6f9a4ab4f061918a1fd9.

Change-Id: Ia712a46abd06e2a580853c863bfa53410b7f99e9
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicLoopFilter.cpp
p9_loopfilter_16_neon.S
p9_loopfilter_neon.S
p9_mb_lpf_neon.S
21dbc8ba61dd6a5852b1346c14bd29373326c240 18-Mar-2014 Jason Sams <jsams@google.com> Merge "Solve four separate memory leaks related to rsdHalInit"
3028980f677cb19d94add01f6c0a9f54efd39306 18-Mar-2014 Jason Sams <jsams@google.com> Merge "RS: Add VP9 LoopFilter Intrinsic"
64048e720cf940cb0f7f6f9a4ab4f061918a1fd9 04-Mar-2014 Matthieu Delahaye <matthieu@multicorewareinc.com> RS: Add VP9 LoopFilter Intrinsic

Change-Id: If1ac77774c74b5513ce7a2db4ef31888a351a9c5
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicLoopFilter.cpp
p9_loopfilter_16_neon.S
p9_loopfilter_neon.S
p9_mb_lpf_neon.S
07ef704308b514272ed2f5c3e6a2f4c055550158 19-Feb-2014 Jens Gulin <jens.gulin@sonymobile.com> Solve four separate memory leaks related to rsdHalInit

Three of the items are local to RsdCpuReferenceImpl and now freed in
destructor after all threads are stopped.
Last one is the RsdHal item itself where the pointer for some reason
was explicitly cleared but not freed. There is no reference counting
but it should be ok to free in Shutdown.

Change-Id: I7832e412d12f4bd7cc728481ae0c782fa57b57e4
sCpuCore.cpp
1e2aedbef554a10a16296d3b529327fffcb10e0d 14-Mar-2014 Jason Sams <jsams@google.com> Revert "RS: Add VP9 LoopFilter Intrinsic"

This reverts commit e4749f3a5a6a6041ef2894162edce5115b307db0.

Change-Id: I45ccdacb1706abd4df7f635c5e64dcb1ee4b876d
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicLoopFilter.cpp
p9_loopfilter_16_neon.S
p9_loopfilter_neon.S
p9_mb_lpf_neon.S
e195a3f57ace3b66d313a6ee88c6e93d5c9d87f4 13-Mar-2014 Tim Murray <timmurray@google.com> Make RS compile on ARM64.

bug 13280327

Change-Id: I79080c448ca17d0cba8df075737c22b24ce9a085
ndroid.mk
sCpuIntrinsicColorMatrix.cpp
sCpuScript.cpp
sCpuScript.h
72f5f8c0e7833d9a4f0288700256982dc7127e23 11-Mar-2014 Narayan Kamath <narayan@google.com> Move renderscript over to __clear_cache (compiler-rt).

bug: 12965705

Change-Id: Ia9917a4aff377fd43a4e71c71a886639763eb250
inkloader/utils/flush_cpu_cache.h
sCpuIntrinsicColorMatrix.cpp
e4749f3a5a6a6041ef2894162edce5115b307db0 04-Mar-2014 Matthieu Delahaye <matthieu@multicorewareinc.com> RS: Add VP9 LoopFilter Intrinsic

Change-Id: Ia49e56c7e21fee1601a0418bd105ef6429c336ca
ndroid.mk
sCpuCore.cpp
sCpuIntrinsicLoopFilter.cpp
p9_loopfilter_16_neon.S
p9_loopfilter_neon.S
p9_mb_lpf_neon.S
83f304cb26008d3f4da154cec19c3a12fa2e6c74 06-Mar-2014 Jason Sams <jsams@google.com> Fix build issues with external patch.

Change-Id: Ib5ea4338df179eb27e4ce9958ef42df1e3ac3eb1
ndroid.mk
sCpuCore.cpp
60498fe9679ea25a260a503d6dfd27cbc0a0c079 18-Feb-2014 Matthieu Delahaye <matthieu@multicorewareinc.com> Add VP9 inter-frame prediction intrinsic

Change-Id: If8985a6200fb6d34083eff711ccdf2f1b3c374e6
ndroid.mk
onvolve/convolve.c
onvolve/convolve8_avg_neon.s
onvolve/convolve8_neon.s
onvolve/convolve_avg_neon.s
onvolve/convolve_copy_neon.s
onvolve/convolve_neon.c
onvolve/vp9_common.h
onvolve/vp9_filter.h
sCpuConvolve.h
sCpuCore.cpp
sCpuIntrinsicInterPred.cpp
sCpuIntrinsicInterPred.h
02170e63931c2d93f57912efbf5d7706578a8438 05-Mar-2014 Ying Wang <wangying@google.com> Use arch-specific flags.

To fix multilib build.

Change-Id: Ifaaea96662de6d3d96a3448754dfe720c4e60deb
ndroid.mk
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
ndroid.mk
sCpuIntrinsicBlur.cpp
sCpuIntrinsics_advsimd_Blur.S
sCpuIntrinsics_neon.S
sCpuIntrinsics_neon_Blur.S
ccd7a46d0c0052209bf3ab8657f40622065d1d1f 01-Feb-2014 Simon Hosie <simon.hosie@arm.com> Optimise YuvToRGB using 16-bit arithmetic.

Reimplement YuvToRGB intrinsic using 16-bit SIMD arithmetic to increase
throughput. Implementations in AArch32 and AArch64 NEON.

Change-Id: Idd43e383f5147c33b0b546fa822c970de432c19d
ndroid.mk
sCpuIntrinsicYuvToRGB.cpp
sCpuIntrinsics_advsimd_YuvToRGB.S
sCpuIntrinsics_neon.S
sCpuIntrinsics_neon_YuvToRGB.S
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
ndroid.mk
sCpuIntrinsicBlend.cpp
sCpuIntrinsics_advsimd_Blend.S
sCpuIntrinsics_neon.S
sCpuIntrinsics_neon_Blend.S
95ad60aad51227e277d57b3669496f129b88add3 20-Feb-2014 Elliott Hughes <enh@google.com> Merge "Make renderscript immune from changes to bionic implementation details."
eab7cd3de8639f8dfc01dcab59b2a472e4d7dbd1 20-Feb-2014 Elliott Hughes <enh@google.com> Make renderscript immune from changes to bionic implementation details.

This is a copy of what these macros looked like at the time you started
using them, which is presumably what you intended, though you may prefer
a different code alignment in future.

Change-Id: I8c061e2255df6e0c2f722063779488d9d2dfaab5
sCpuIntrinsics_neon.S
sCpuIntrinsics_neon_ColorMatrix.S
165aa63b99b77abc8c486679a9f90104ce9fff73 07-Feb-2014 Colin Cross <ccross@android.com> rs: support multilib builds

Generate source files into $(local-generated-sources-dir)
Restrict which architectures try to build using LOCAL_MODULE_TARGET_ARCH

Change-Id: Ibb1049c248ed4bcec32b81771f1f9fbcce66a390
ndroid.mk
f8852d0494a260c583795a96a2a06c49b86a9b10 30-Jan-2014 Ian Rogers <irogers@google.com> Work-around 64bit build issues.

Log errors and abort as a temporary work-around for 64bit support.

Change-Id: I7f6b483d671189bd12ae0ef79515fcdd871eba17
inkloader/android/librsloader.cpp
inkloader/include/impl/ELFObject.hxx
8994abbe699bb05fa70cff101becc925db6b2c26 05-Dec-2013 synergy dev <synergye@codefi.re> cpu_ref: fix c++11 narrowing violations

the best fix for these is to use static casting

Change-Id: I00344826a33e5387638ae5edf4c6b85c92f43769
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicYuvToRGB.cpp
4bc1a0ce2124624045f5b19d027175d3598670fa 13-Dec-2013 Stephen Hines <srhines@google.com> Merge "Add missing functions and tests for support library."
d9b0f02db23455d7bd2f11fda871b2af9120f85e 13-Dec-2013 Elliott Hughes <enh@google.com> Stop using the PLD macro.

Every ARM processor we run on has the pld instruction.

Change-Id: I05512bf20a73590698c714d6921db4e44e971606
sCpuIntrinsics_neon.S
cadee38f6940e5584d3ec3398a21bd2a494361e2 12-Dec-2013 Stephen Hines <srhines@google.com> Add missing functions and tests for support library.

Missing functions:
rsFrac(float)
rsMatrixLoadRotate(rs_matrix4x4 *, float, float, float, float)
rsMatrixLoadScale(rs_matrix4x4 *, float, float, float)
rsMatrixLoadTranslate(rs_matrix4x4 *, float, float, float)
rsMatrixRotate(rs_matrix4x4 *, float, float, float, float)
rsMatrixScale(rs_matrix4x4 *, float, float, float)
rsMatrixTranslate(rs_matrix4x4 *, float, float, float)
rsMatrixLoadOrtho(rs_matrix4x4 *, float, float, float, float, float, float)
rsMatrixLoadFrustum(rs_matrix4x4 *, float, float, float, float, float, float)
rsMatrixLoadPerspective(rs_matrix4x4 *, float, float, float, float)
rsMatrixInverse(rs_matrix4x4 *)
rsMatrixInverseTranspose(rs_matrix4x4 *)
rsMatrixTranspose(rs_matrix4x4 *)
rsMatrixTranspose(rs_matrix3x3 *)
rsMatrixTranspose(rs_matrix2x2 *)
rsUptimeNanos()
rsGetDt()

Headers tested in this CL:
rs_element.rsh
rs_math.rsh
rs_matrix.rsh
rs_object.rsh
rs_sampler.rsh
rs_time.rsh

Change-Id: I6cb1972a44f66dc7fed8fe3cf0329720d166af81
sCpuRuntimeMath.cpp
c859de1556dc9ac5c6f5647298bb5c685c5d2bb0 02-Dec-2013 Jason Sams <jsams@google.com> Fix bug in blur when processing odd widths


Change-Id: I10537cb623cf230636f191fd2b84b050d0f42700
sCpuIntrinsicBlur.cpp
6de1d8375526502b468232d77fce3e957c705137 14-Nov-2013 Tim Murray <timmurray@google.com> Fix histogram intrinsic.

bug 11676706

Change-Id: I12ac5ed5f8528574619feb9737737d0111ad0be6
sCpuIntrinsicHistogram.cpp
ee48c0bbf290a73e2cd4710b70d62fc203dac0dc 31-Oct-2013 Stephen Hines <srhines@google.com> Create a cache directory for our symlinked files if necessary.

Bug: 11519886

Change-Id: I93d3c194a15e4842455c31406095e90bced882ee
sCpuScript.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
sCpuIntrinsicBlur.cpp
sCpuIntrinsicHistogram.cpp
4da42506a08ed7fdb61615b3524f111df939fc6e 03-Oct-2013 Stephen Hines <srhines@google.com> Remove references/use of ARCH_X86_HAVE_* in frameworks/rs.

Bug: 11048298

These SSE-related defines are unnecessary because all x86 Android devices
have these features. We switch all the checks to __i386__ instead.

This also fixes an issue where non-ARM bitcode files were being created with
the ARM defines present. This is problematic when we then try to do things
that would be arch-specific (i.e. the presence of SSE-enabled functions for
clamp(), ...).

This also cleans up the different target architecture specified in the x86
bitcode files so that they match the platform target (i686-unknown-linux).

Change-Id: I4776bbdce360de26e8a00e05d2cb19341d94a173
ndroid.mk
sCpuScript.cpp
4a1495f3404b939459aa817f06ea9325ca1a4625 30-Sep-2013 Jason Sams <jsams@google.com> The NEON yuv asm code may overrun the buffer

by up to four bytes while reading U & V. Adjust the cutoff
for the boundary to allow for this.

bug 10826418

Change-Id: I93252a5f823cfd0dbf65fbfc194b4848cf44557a
sCpuIntrinsicYuvToRGB.cpp
0052f8dcb5ebb5c9205a1d25445629fb5a772380 20-Sep-2013 Jason Sams <jsams@google.com> Fix for YUV bugs

Two issues, YUV intrinsic would repeat u&v for the edge padding
During the support for flexible YUV, u&v got swapped in the accessor.

bug 10826418

Change-Id: I1cf6e27c2114807d6aece4f9dd44257d4f4aa477
sCpuIntrinsicYuvToRGB.cpp
f5e947e74cea50b4687500970237c41ff698d9da 12-Sep-2013 Jason Sams <jsams@google.com> Merge "Fix YUV intrinsic with camera input where frames are NULL" into klp-dev
ac67f6d87fddf45cda71cce31770aa41cc435fbd 12-Sep-2013 Jason Sams <jsams@google.com> Merge "Fix issues with U8->U8 when mixed with add or lane conversion" into klp-dev
e99f3e21a0d88ca59eb9281699e8212a3a4205a3 12-Sep-2013 Jason Sams <jsams@google.com> Fix YUV intrinsic with camera input where
frames are NULL

bug 10710716

Change-Id: I9e69a8a51ccfc15798a09760249a951561dcd544
sCpuIntrinsicYuvToRGB.cpp
ec3cd2dff915d476ce0d7cdbb20c0497635a700f 12-Sep-2013 Jason Sams <jsams@google.com> Fix issues with U8->U8 when mixed with add or lane conversion

bug 10427746

Change-Id: Iea14223c754d0b2256d752d9211a0c45109c3a02
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_neon_ColorMatrix.S
a23b201166cfab963488fc565a8b14d618b0f8d9 12-Sep-2013 Jason Sams <jsams@google.com> Merge "Fix ColorMatrix performance and correctness issues." into klp-dev
9e4a96af136dab5b21a37580d17cbcb89872114e 12-Sep-2013 Jason Sams <jsams@google.com> Fix ColorMatrix performance and correctness issues.

bug 10427746

Change-Id: Ie42753a551badf4de3144f16fa0e407eca5b9c74
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_neon_ColorMatrix.S
c78839b5bbcffae7d64a5a1c9aa60c9a4c5d3918 11-Sep-2013 Stephen Hines <srhines@google.com> Detect use of RS objects in kernels to disable a ScriptGroup optimization.

Bug: 10394865

This change disables a ScriptGroup optimization when we can't guarantee
that there is no implicit ordering between two kernels. In this case, it
is possible to communicate between kernels using the same bound global
RS object (like Allocation). A subsequent kernel in the ScriptGroup could
accidentally pick up stale data, leading to incorrect results.

Now, we disable this optimization whenever we see binds/sets of variables
that are potentiall RS object types for a given Script/kernel. This is
overly conservative, but sufficient for now.

This change also fixes a small issue with preLaunch/postLaunch missing for
the default ScriptGroup execution case.

Change-Id: I0d19d200cc8dc397d68008a4df6ea423b1e4d04f
sCpuScriptGroup.cpp
17e3cdc24776d8fdbf1ce16287b9b4dcd516708f 10-Sep-2013 Jason Sams <jsams@google.com> Fix ScriptGroup performance regression

bug 10151545

Change-Id: Ica4a30c6fe8718f7fdbff0b446885d9ac7083769
sCpuIntrinsicColorMatrix.cpp
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
61656a7c6fc13421679d0a1cdf8b5b861e286892 04-Sep-2013 Jason Sams <jsams@google.com> Cleanup type offsets which cannot be calculated for flexible YUV.

Support flexible YUV

bug 10567550

Change-Id: I4f6e5a8d86eeee635605460f1751208f3320969b
(cherry picked from commit a75372759e288be3fb8835735a830b1f7d1a4c42)
sCpuIntrinsicYuvToRGB.cpp
sCpuIntrinsics_neon.S
927edc2b99b73d1f236320663ed7ed4cfeee2f91 31-Aug-2013 Tim Murray <timmurray@google.com> am 869d1d0b: am aa782376: Fix YUV intrinsic with compat lib.

* commit '869d1d0b7eb90c78ea4e621315895d178c6fd72a':
Fix YUV intrinsic with compat lib.
aa782376e05c47141bc3f90966d609cfc69ebc39 30-Aug-2013 Tim Murray <timmurray@google.com> Fix YUV intrinsic with compat lib.

Change-Id: I05bfd1d4de24e3e9eadf092ec519d54ed411aa89
sCpuIntrinsicYuvToRGB.cpp
2b0d8e60d7daeffa7c9a5e11cfbfc9e5e04933b7 30-Aug-2013 Jason Sams <jsams@google.com> Float color matrix fixes

Fix histogram to use update API names.

bug 10427746

Change-Id: Idc9d6025380b2344d14f2aeb4da66bff47169021
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_neon_ColorMatrix.S
68c817211a6fe87bebed83d38a05fff32cc24a7e 22-Aug-2013 Jason Sams <jsams@google.com> color matrix bugs

bug 10427746

Change-Id: Ie652fe5180702a2eceb3a7077bc1821ba21c1ee4
sCpuIntrinsicColorMatrix.cpp
5e37175676a1089fc7c40ac8b705799dccabcc30 16-Aug-2013 Stephen Hines <srhines@google.com> am fd47ac29: am 43cfc0cb: Remove barriers to using NDK v8 includes.

* commit 'fd47ac29478ed01a581b3326d898ad848858a314':
Remove barriers to using NDK v8 includes.
fd5136767dee529cfcab02bb766b7d369e20ba58 16-Aug-2013 Stephen Hines <srhines@google.com> am 6699b978: am 11418c87: Provide a tgammaf() wrapper for compatibility on Gingerbread.

* commit '6699b9783ec6ed29b62c4f7bdb491fec1c51eaeb':
Provide a tgammaf() wrapper for compatibility on Gingerbread.
43cfc0cbe6e6e8f585a0ae5f1d9cc2859ab1dda7 15-Aug-2013 Stephen Hines <srhines@google.com> Remove barriers to using NDK v8 includes.

Bug: 10315692

Removed CLOCK_BOOTTIME, added some additional guards around cutils includes,
and explicitly included errno.h when we use ETIMEDOUT.

Change-Id: I0a764beea2f8ff7387a9afe985f00b5f03c68725
sCpuRuntimeMath.cpp
11418c87254f0cbffa910fe8f105b7da92452487 15-Aug-2013 Stephen Hines <srhines@google.com> Provide a tgammaf() wrapper for compatibility on Gingerbread.

Bug: 10315692

GB devices don't have tgammaf(float) and only have tgamma(double). We
provide a simple wrapper to convert between the two for the compatibility
library.

Change-Id: Id8566450405482e876148d62ffbe46fa62049049
sCpuRuntimeMath.cpp
8e0edc869aa8d7dbe8d629785b834a5e67d31a4d 10-Aug-2013 Tim Murray <timmurray@google.com> Merge "fix SDK build breakage with NEON" into klp-dev
56b0b63c8d2ad0f880820db133a2e97ac56a942a 09-Aug-2013 Tim Murray <timmurray@google.com> fix SDK build breakage with NEON

Change-Id: I823ab46a24a9db24e1b8a800284a5987747ae2ee

Conflicts:
cpu_ref/Android.mk
ndroid.mk
a65de10aabdee0794d0e9c96db944e990166ef0d 09-Aug-2013 Jason Sams <jsams@google.com> Float color matrix support.

Change-Id: I106b0cb1ad511aa549e4c90d79b3e84b55da45e4
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_neon_ColorMatrix.S
3870c6666e2e7d372daa6e0610f0f83695c954ec 09-Aug-2013 Tim Murray <timmurray@google.com> fix SDK build breakage in mr2-dev and NEON

Change-Id: I823ab46a24a9db24e1b8a800284a5987747ae2ee
ndroid.mk
5cb36d9b36617f6b0493602ef61d620dc8f7e0ae 09-Aug-2013 Jason Sams <jsams@google.com> Merge commit 'b10a68c3' into manualmerge

Conflicts:
cpu_ref/rsCpuIntrinsicColorMatrix.cpp

Change-Id: Ibc2f1514f8858d99f08380f698bc9ae533c69212
e6b3d13534186d08f14d0753c26c535825ffdec8 08-Aug-2013 Stephen Hines <srhines@google.com> Move mmanWindows.* to proper locations.

Change-Id: If7044224de65735e257cf90d0c3bf655c31dd4d5
inkloader/include/mmanWindows.h
inkloader/lib/mmanWindows.cpp
ddceab9a001f07a3395226c5e06e3b420720af0f 07-Aug-2013 Jason Sams <jsams@google.com> Refactor hal to remove cpuConsumer from drivers

This CL should minimize build breaks due to
BufferQueue changes in the future.

Change-Id: I565a6eae5cc25603741fef32f2cfcb31a32eb757
sCpuScript.cpp
f5ef8df639ba6363aa5d546e57ce872d04144cb6 06-Aug-2013 Jason Sams <jsams@google.com> Neon detection for RS SDK compat lib.

Change-Id: I3887158c7ec97ba116c28dc7b1d0c789b81fae60
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicYuvToRGB.cpp
2644c42ddc16ef2515fc2e566ad2f60f1a1b47c6 03-Aug-2013 Raphael Moll <raphael@google.com> am 9b21cf51: am 1033b597: Fix Windows build issues for librsloader.

* commit '9b21cf5166b9ce3ac01c98d5122198dbde972b24':
Fix Windows build issues for librsloader.
6e8baf5350d41d87fdfb31b18facb4566307dedf 31-Jul-2013 Jason Sams <jsams@google.com> Merge "Color Matrix improvements."
9b2b9efa1a1f9b0ec8c20601216f8dc5698c75f5 30-Jul-2013 Jason Sams <jsams@google.com> Color Matrix improvements.

Change-Id: I4594ea43a0a2b298a9ad66bd5e63d8b829d4f620
ndroid.mk
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsics_neon.S
sCpuIntrinsics_neon_ColorMatrix.S
35cfed80c9f8ae98af389bb934da21a5adfe8278 30-Jul-2013 Stephen Hines <srhines@google.com> Merge "Fix Script instancing issue for support library."
c2c11cc9037d5ddd55282c6dab82db542b398d9e 19-Jul-2013 Stephen Hines <srhines@google.com> Fix Script instancing issue for support library.

Our support library relies on opening shared library versions of Scripts
on older devices. This has the unfortunate side effect of sharing global
variables across Script instances. In traditional RenderScript, the actual
Scripts are always instanced, and thus have distinct storage/values for
every global (and static global).

This change fixes the instancing issue by keeping track of loaded libraries
(via a global set, since dlopen is tracked/shared per-process). If we detect
a collision, we create a new randomly named symlink of the library to actually
load from. The dlopen() function only looks at the library name passed to it,
so this allows us to cheaply create a duplicate instance. Once the symlinked
library is actually loaded, we destroy it.

A new unit test has also been added to RSTest_CompatLib to verify instance
behavior. This is a modified version of the same test we have present in CTS
for traditional RenderScript instance verification.

Change-Id: I6a0bca2b65d125b54793d98f0f73ae92e0280af7
sCpuScript.cpp
6ba6c664f773a53d7b6ddaf2c216d11404fd18fc 13-Jul-2013 Stephen Hines <srhines@google.com> Move linkloader into cpu_ref/ instead of driver/.

This library is actually part of the reference implementation and not part of
the direct instantiation in driver/. Having this code live in driver/ (for
partners to modify/replace) is misleading.

Change-Id: Ifba4575ff3bcdd09a3839384cfb26c2b0bf9d5fa
inkloader/android/librsloader.cpp
inkloader/android/librsloader.h
inkloader/android/test-librsloader.c
inkloader/include/ELF.h
inkloader/include/ELFHeader.h
inkloader/include/ELFObject.h
inkloader/include/ELFReloc.h
inkloader/include/ELFSection.h
inkloader/include/ELFSectionBits.h
inkloader/include/ELFSectionHeader.h
inkloader/include/ELFSectionHeaderTable.h
inkloader/include/ELFSectionNoBits.h
inkloader/include/ELFSectionProgBits.h
inkloader/include/ELFSectionRelTable.h
inkloader/include/ELFSectionStrTab.h
inkloader/include/ELFSectionSymTab.h
inkloader/include/ELFSymbol.h
inkloader/include/ELFTypes.h
inkloader/include/GOT.h
inkloader/include/MemChunk.h
inkloader/include/StubLayout.h
inkloader/include/impl/ELFHeader.hxx
inkloader/include/impl/ELFObject.hxx
inkloader/include/impl/ELFReloc.hxx
inkloader/include/impl/ELFSection.hxx
inkloader/include/impl/ELFSectionBits.hxx
inkloader/include/impl/ELFSectionHeader.hxx
inkloader/include/impl/ELFSectionHeaderTable.hxx
inkloader/include/impl/ELFSectionNoBits.hxx
inkloader/include/impl/ELFSectionProgBits.hxx
inkloader/include/impl/ELFSectionRelTable.hxx
inkloader/include/impl/ELFSectionStrTab.hxx
inkloader/include/impl/ELFSectionSymTab.hxx
inkloader/include/impl/ELFSymbol.hxx
inkloader/lib/ELFHeader.cpp
inkloader/lib/ELFSectionHeader.cpp
inkloader/lib/ELFSymbol.cpp
inkloader/lib/ELFTypes.cpp
inkloader/lib/GOT.cpp
inkloader/lib/MemChunk.cpp
inkloader/lib/StubLayout.cpp
inkloader/main.cpp
inkloader/utils/flush_cpu_cache.h
inkloader/utils/helper.cpp
inkloader/utils/helper.h
inkloader/utils/raw_ostream.cpp
inkloader/utils/raw_ostream.h
inkloader/utils/rsl_assert.cpp
inkloader/utils/rsl_assert.h
inkloader/utils/serialize.h
inkloader/utils/traits.h
140a7acade66ab5d1f3dc55803a3a65a71f3f86c 11-Jul-2013 Stephen Hines <srhines@google.com> resolved conflicts for merge of 5376c9bf to master

Change-Id: I51507da10f8d7116a2aa29446a00a43d397a37c8
b0934b67b95cc27e2358c2aa4db5f7c1067c8f9b 04-Jul-2013 Stephen Hines <srhines@google.com> Remove libutils and fix rsDebug for RS support library.

Bug: 9664050

Our bitcode runtime library translates vector rsDebug() calls into passing
their parameters via pointers. The previous version of libRSSupport.so was
being created with non-pointer versions of these routines accidentally.
This change also fixes a missing permission issue for ImageProcessing2, so
that the compatibility library can be verified.

This change also removes the use of libutils by switching the implementation of
String8/Vector in the compatibility library to internal types backed by
libstlport_static.

Change-Id: I20da75e8c19a82a42dc2bceaba1937d21372db84
sCpuCore.cpp
sCpuRuntimeStubs.cpp
sCpuScript.cpp
sCpuScriptGroup.cpp
34b0d3119567b992f0f876a2dffc0161bdcef3e6 27-Jun-2013 Jason Sams <jsams@google.com> Implement all formats for convolve 5x5.

Change-Id: I93456429e909beffa2b76bc3f7f46bd306c5941d
sCpuIntrinsicConvolve5x5.cpp
4768dade83376d58dbee788f2a705a63918ee8bc 28-Jun-2013 Stephen Hines <srhines@google.com> Merge "Provide path to execute standalone bcc compiler."
3b35d775a777c36a178ce3fc97ff1e169aab3f1e 26-Jun-2013 Jason Sams <jsams@google.com> Implement U1, U2, F1, F2, F4 convolve 3x3

Change-Id: Ib6ffd75ba19cf09a710f39fcd07400aae12d60ca
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicInlines.h
b58d9adf52f0216c0281c749023bdd5b52236875 20-Jun-2013 Stephen Hines <srhines@google.com> Provide path to execute standalone bcc compiler.

Bug: 7342767

Change-Id: Ife9d9fee77416832445dcf30f0e3eba3dd173bad
ndroid.mk
sCpuScript.cpp
389ae9ac71245bc213b8148f2982464074a4b158 19-Jun-2013 Stephen Hines <srhines@google.com> Merge "Add the name of the forEach functions to the tracing output"
b68ba7e6f3d1e6440c1409e85a6c3af14fc39ee6 19-Jun-2013 Jason Sams <jsams@google.com> Performance fix
Add support for processing 2 and 3 channel.

Change-Id: I124e1e92a65a296de1c3a839d9555f5eeeeb75c6
sCpuIntrinsicHistogram.cpp
47935ac8e3dd619f758abd576605a564e33bb59c 17-Jun-2013 Tobias Grosser <grosser@google.com> Add the name of the forEach functions to the tracing output

Instead of showing up as 'runForEach', kernels are now e.g. printed as
'runForEach_createAntLookup'.

The String8 is carefully constructed here, such that we only pay
the string processing overhead in case tracing is actually enabled.

Change-Id: Id18319e271a02cbe888bcb9fe806794007d00fca
sCpuScript.cpp
2282e2816ac5f5de53f9bd4f3ecbdfd6d756d120 18-Jun-2013 Jason Sams <jsams@google.com> add histogram intrinsic

Change-Id: I42c297bfe116ea29cf015680fcc2143ff4cc95d2
ndroid.mk
sCpuCore.cpp
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuIntrinsicHistogram.cpp
d89c234c749386a4dc6e362e719cb230853f18e4 13-Jun-2013 Tim Murray <timmurray@google.com> am 4accc1fe: am 606e5004: Fix Vine crash.

* commit '4accc1fe021321ecfe504897ed45121f11e6bd4b':
Fix Vine crash.
606e50048307530335b0885364ba888da436229b 13-Jun-2013 Tim Murray <timmurray@google.com> Fix Vine crash.

Legacy YUV path was not computing the uv row coordinates correctly.

bug 9272491

Change-Id: I3af68fb8be191373205870573027ed38f059203e
sCpuIntrinsicYuvToRGB.cpp
8aff55716d056aaec7a896843abf80ba0f56e062 12-Jun-2013 Jason Sams <jsams@google.com> am 06bd91ec: Fix crash in Vine

* commit '06bd91ecb6ba59c5c19b2ad1325b30bd9344832d':
Fix crash in Vine
06bd91ecb6ba59c5c19b2ad1325b30bd9344832d 12-Jun-2013 Jason Sams <jsams@google.com> Fix crash in Vine

bug 9272491

Legacy YUV formats could trigger null pointer using YUV intrinsic.

Change-Id: I2eca7254a22c757c50e302a190e9aa5c05437534
sCpuIntrinsicYuvToRGB.cpp
ba17ae494add84056bbf3275b68e40e62a643db0 06-Jun-2013 Stephen Hines <srhines@google.com> Switch to separate build/load steps for Scripts.

Bug: 7342767
Change-Id: I94f81cb4dc917dd2cfc10c7718e9263454571db4
sCpuScript.cpp
b7d9c80c98fc96aa7c638e3124be24f13a6436b2 30-Apr-2013 Stephen Hines <srhines@google.com> Provide a mechanism for adjusting RSCompilerDriver after construction.

We add a simple callback to the reference implementation of libRSDriver.so,
such that additional BCC flags can be toggled/adjusted before doing any actual
CPU compilation.

Change-Id: Iaf253b7d967d0382937369b1c5dae2d23a99e8be
sCpuCore.cpp
sCpuCore.h
sCpuScript.cpp
sd_cpu.h
70cc3f31ebe6dd61e173d9e0a120a2e4932b14c5 22-Apr-2013 Jason Sams <jsams@google.com> Merge "Fix YUV intrinsic" into jb-mr2-dev
6b58909686d7e439dac6dbb48c7e2236cd33c68d 19-Apr-2013 Jason Sams <jsams@google.com> Fix YUV intrinsic

One format of YUV was not correctly handled by the built
in YUV intrinsic. This CL adds support. The scope is confined to
the YUV instrinsic and cannot impact other paths.

bug 8566866

Change-Id: I9a96b2117b0676213f4906b0ca12416693b9c0e4
sCpuIntrinsicYuvToRGB.cpp
sCpuIntrinsics_neon.S
f47e8b4b86bf194e65398032f3f5f47a6da89f3f 18-Apr-2013 Stephen Hines <srhines@google.com> Mark use of a debug context with the RSCompilerDriver.

Bug: 7343201
Change-Id: Idb003a3314247481c38aa70f9991f000135996b3
sCpuScript.cpp
cca3d6ca444bef3b6d75431ec19bd07bfe40a733 15-Apr-2013 Stephen Hines <srhines@google.com> Add support for DEBUG context type.

Bug: 7343201

This change adds switching for the debug runtime (libclcore_debug.bc) when
running under a DEBUG RS context. It also fixes a small naming issue for
rsSetElementAt_int().

Change-Id: I8b574c9ce915a440375530325ba7de2b46707cfd
sCpuScript.cpp
886e51b2ef45ce123379c8a11579851c5580d957 12-Apr-2013 Tim Murray <timmurray@google.com> Merge "Add support for synchronous get()." into jb-mr2-dev
9c64239ebbfa4170190ede812e69150035e008e0 11-Apr-2013 Tim Murray <timmurray@google.com> Add support for synchronous get().

Change-Id: Ic94f1e36f7cffaaeda11fa9f0bb70e441fe1e535
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
a66d000ed939eeb014f65f3ff6a7da06961aaeb6 11-Apr-2013 Stephen Hines <srhines@google.com> Merge "Remove invalid logging on missing root.expand() functions." into jb-mr2-dev
b2411816414d33e5c3dd1488be1702b3ef67b250 10-Apr-2013 Ying Wang <wangying@google.com> Add liblog

Bug: 8580410
Change-Id: Icc2c8db9304e1115b977b2cd1992803bf75618d7
ndroid.mk
ef7481e2f0a4ad7b32bb626245e4207cabe171dc 10-Apr-2013 Stephen Hines <srhines@google.com> Remove invalid logging on missing root.expand() functions.

Bug: 8566872

This log message is confusing and unncessary. Due to legacy compatibility,
slot 0 is always reserved for root.expand(). We know that root.expand() may
not exist for many user scripts, since we have supported proper names for
kernels for several releases now.

Change-Id: Id869496aa83f98ce64d6bd784314d788e25182e0
sCpuScript.cpp
941a61732cb044d0d9e4153dd3ef39d3055673e7 03-Apr-2013 Jason Sams <jsams@google.com> Cleanup debug and WAR vector type packing.

Change-Id: I4ff9619981dd1aa247b1bde511ec6a5bc1985954
sCpuRuntimeStubs.cpp
0782188b07ceeca03a45b26873bec0ccfd412373 02-Apr-2013 Jason Sams <jsams@google.com> Fix corruption when neon is disabled.

Change-Id: I5b7b143f78bb87c9f26265c45d727ed1b3063a73
sCpuIntrinsicBlur.cpp
3aeab4f0a628cad27c3f18ec1cff6f154ae01b62 02-Apr-2013 Jason Sams <jsams@google.com> Delete sampler optimization.

Calling overhead makes this mostly pointless.

Change-Id: I899778db3e6b06f46a5d5ca9af34fc17cf105b14
ndroid.mk
sCpuSample_neon.S
1d476620399d54774e4fd386c1d23cc583d49522 30-Mar-2013 Stephen Hines <srhines@google.com> Add callback to allow replacement of runtime support library.

Change-Id: I84ec56dfb29a0158015ebf31b3a73ac5bf34ef98
sCpuCore.cpp
sCpuCore.h
sCpuScript.cpp
sd_cpu.h
b93cb42b4b8511d244ec8df4559fdc5c0b2de1bf 28-Mar-2013 Stephen Hines <srhines@google.com> Add rsRand(float, float) support back to compat lib.

Change-Id: I0acaa409908f83c690c95b47979f820bc2dac9f5
sCpuRuntimeMath.cpp
sCpuRuntimeMathFuncs.cpp
d6f1f46b2929ed56c73ba32357cde31b82972fbe 26-Mar-2013 Tim Murray <timmurray@google.com> Add some missing compat lib functions and fix a bug.

Change-Id: I2950e1b4f785bcc1f0b6154ce822fe17832b3f4f
sCpuRuntimeMath.cpp
sCpuRuntimeMathFuncs.cpp
a8cd40f1c75d0af0e2276c9f169eb0a1ba034adf 26-Mar-2013 Tim Murray <timmurray@google.com> Merge "Start making RS 64-bit clean." into jb-mr2-dev
06b0f7d3b345ae1c36aed6686e79e403650f8baa 22-Mar-2013 Jason Sams <jsams@google.com> start refactoring rsSample

Change-Id: I3bc2209991dcb2a13a2629e8ecfe6955ae83a9a8
ndroid.mk
sCpuSample_neon.S
099bc262f862cdeb547cf8a78fe9e0e92560f437 21-Mar-2013 Tim Murray <timmurray@google.com> Start making RS 64-bit clean.

Change-Id: Ie40ad9a1d2b59094c86eb7e40b358e60120ce213
sCpuIntrinsicBlur.cpp
962e720b3d1c27bcfec90374ff393584b99577b3 19-Mar-2013 Tim Murray <timmurray@google.com> Merge "Add x86 server support." into jb-mr2-dev
0b575de8ed0b628d84d256f5846500b0385979bd 15-Mar-2013 Tim Murray <timmurray@google.com> Add x86 server support.

Change-Id: I674acaf15b67afa48bc736f72942a11e2e38e940
sCpuCore.cpp
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicBlend.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuRuntimeMath.cpp
sCpuRuntimeStubs.cpp
sCpuScript.cpp
sCpuScriptGroup.cpp
8ca358a2abe7e0dba23993e0fc8d64b8b55bd9ca 19-Mar-2013 Jason Sams <jsams@google.com> Fix bug reporting CPU count.

Change-Id: Ib76a17c3239dc5b52624a567b40cace16f412327
sCpuCore.cpp
110f181b7966212a36ef18016f9b81c7322d0a2f 15-Mar-2013 Jason Sams <jsams@google.com> Reduce diffs with compat lib.

Change-Id: Ibfa2c7c7da56d158f424ac343e364feacd0a21da
sCpuRuntimeMath.cpp
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
029e82e1f688dfd132c19b1b94d2cad60d3ceaac 12-Mar-2013 Jason Sams <jsams@google.com> Move simple functions to on device lib.

Change-Id: I690673f98244c490302cb25145cfcc8dd4125637
sCpuRuntimeMath.cpp
cadfac411e6690e39de36c4f9e94deb9b7d2d08e 07-Mar-2013 Jason Sams <jsams@google.com> Sync with compat lib.

Change-Id: Id8ace103814cf126f0d157100d1d4a12cc0b8664
sCpuCore.cpp
sCpuCore.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
d533c4c66510f2b83b9397607756479d79baae10 06-Mar-2013 Stephen Hines <srhines@google.com> This cl provides a proper WAR for thumb codegen.

Bug: 8326082
Change-Id: Ia471c2990461c1693e99e834624b856a5af4cac7
sCpuIntrinsic3DLUT.cpp
5edd18e4307e3c223b5db8a6cc5ca309a3a69c2a 06-Mar-2013 Stephen Hines <srhines@google.com> WAR for non-neon ARM crash.

Change-Id: I3eb059874a84581d9bfbb22f6731f524ea1715c6
sCpuIntrinsic3DLUT.cpp
3a25fdd3786c1a08b783d8a83ef94b756347ff5c 23-Feb-2013 Tim Murray <timmurray@google.com> Cleanup lots of things related to IO_OUTPUT and error checking.

Change-Id: Ic6802dd0ba9d3edc8c53f99002cdd905214a515c
sCpuScript.cpp
b6d2d2a6bc1cee3e04b7e632a96134bdb56f38ee 23-Feb-2013 Jason Sams <jsams@google.com> Fix corner cases with small blurs.

Change-Id: I7d1d42c3903ca3defd1737bd6e2557e2f5998fe5
sCpuIntrinsicBlur.cpp
a31850150be87c472c71857c17ea5bc6676c1d8f 19-Feb-2013 Stephen Hines <srhines@google.com> Merge "Support LinkRuntimeCallback() with RS compiler."
bc0ca6ba4e31239bf77060578d0bdf1a10e04168 16-Feb-2013 Jason Sams <jsams@google.com> Support typed YUV allocations

Change-Id: I844051ee1be1462e497d238f5460f301be1aaa1d
sCpuIntrinsicYuvToRGB.cpp
385e9d7a982341252a337ae94ef199933e7583ec 15-Feb-2013 Stephen Hines <srhines@google.com> Remove unused functions that insert __aeabi_idiv0() dependency.

We no longer use/call these functions, since we pick up modsi3() and the
variants directly from libcompiler_rt instead. By having them here, we are
accidentally pulling in additional dependencies on unnecessary functions.

Change-Id: Ia7aa29e443d77ec852987a13dc8fdbb4fa80af1d
sCpuRuntimeStubs.cpp
f218bf115af4ae4fd79adbb8842608b308a4cf07 13-Feb-2013 Stephen Hines <srhines@google.com> Support LinkRuntimeCallback() with RS compiler.

Change-Id: I28ada4e7c462cb9673de6886d934dce855fac339
sCpuCore.cpp
sCpuCore.h
sCpuScript.cpp
sCpuScript.h
sd_cpu.h
d4ecb17adc9b099351f2ca1779a74f5283f20a3d 07-Feb-2013 Tim Murray <timmurray@google.com> Add API entry points for clipped kernels and fix Z-dimension clipping.

Change-Id: I43074cb8556d9b28d3e549930f5ac68387f8d823
sCpuScript.cpp
887922659e80b83b925631a3a459362d67db666e 05-Feb-2013 Jason Sams <jsams@google.com> am 1f80b2c8: am 902868b7: Merge "YUV(NV21) to RGBA function NEON optimizations."

# By Vassilis Laganakos
# Via Android Git Automerger (1) and others
* commit '1f80b2c8b2b52c836c4039f716f702f96f213b0d':
YUV(NV21) to RGBA function NEON optimizations.
ce0351debba8dadd1a7af2b3e926de6d787b49af 26-Jan-2013 Jason Sams <jsams@google.com> Fix intrinsic bugs.

Change-Id: I027e5dcd8e538e52a21941facc5b93db2a6eac8c
sCpuIntrinsicBlur.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsics_neon.S
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
sCpuIntrinsicBlur.cpp
5e3fb0b3cfadcb44a74cf4b6ec9ec65c11ba811e 10-Jan-2013 Stephen Hines <srhines@google.com> Add parentheses for latest Clang warnings.

Change-Id: I425b7e13578d91a294397d37f4e66d9c1a6ff501
sCpuIntrinsic3DLUT.cpp
7c4b888f2147edf99690b6af75470774ff31c43b 04-Jan-2013 Jason Sams <jsams@google.com> Functional 3D LUT intrinsic.

1600x1000 takes ~23ms on manta.

Change-Id: I142d6dedded66df05aa5f49e3da409a34c6e1b6e
ndroid.mk
sCpuCore.cpp
sCpuIntrinsic3DLUT.cpp
sCpuIntrinsicInlines.h
sCpuIntrinsics_neon.S
93eacc7ce0aad4314b4cb41a281f59ce54bb3286 18-Dec-2012 Jason Sams <jsams@google.com> Cleanup diff with compat.

Change-Id: Ieedcdec03ccb05cac68cbebbd398e07cb885f4d3
sCpuScriptGroup.cpp
sCpuScriptGroup.h
74121b55311b1a31ce41e6e2814ef5ad4ded1864 13-Dec-2012 Jason Sams <jsams@google.com> Remove unused functions.

Change-Id: I962ea4327c11d10b35e93bb71a1367a7ee41464f
sCpuRuntimeMath.cpp
241b999530999c7613edb742778c81fb4bf0e91e 05-Dec-2012 Tim Murray <timmurray@google.com> Merge "enable synchronous mode (functional)"
4d252d6e807b89764dad123ac845df298c52ca97 29-Nov-2012 Tim Murray <timmurray@google.com> enable synchronous mode (functional)

Change-Id: I613610013e7e4d1623620ab94d2d25d8a1bd82b3
Bug: 5972398
sCpuCore.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
sCpuCore.h
sCpuIntrinsicBlur.cpp
sCpuIntrinsics_neon.S
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
sCpuIntrinsicBlur.cpp
sCpuIntrinsics_neon.S
c905efd76fdcc1b8846b229bf7d991d185a7b4b7 27-Nov-2012 Jason Sams <jsams@google.com> Cleanup pass + implement blur uchar

Change-Id: Ib7f1c5218663b468a3c11daa2c3373ae132145ac

Conflicts:

cpu_ref/rsCpuIntrinsicBlend.cpp
sCpuCore.cpp
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicLUT.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuIntrinsics_neon.S
4cca49b13db92b13ca07c1d330ad450d1b10f507 21-Nov-2012 Tim Murray <timmurray@google.com> Fix off-by-one error in convolve3x3.

Bug: 7599424
Change-Id: If668bd1ce2306b53efd20a09d16104cbf9fd4b77
sCpuIntrinsicConvolve3x3.cpp
709a0978ae141198018ca9769f8d96292a8928e6 16-Nov-2012 Jason Sams <jsams@google.com> Separate CPU driver impl from reference driver.

Change-Id: Ifb484edda665959b81d7b1f890d108bfa20a535d
ndroid.mk
sCpuCore.cpp
sCpuCore.h
sCpuIntrinsic.cpp
sCpuIntrinsic.h
sCpuIntrinsicBlend.cpp
sCpuIntrinsicBlur.cpp
sCpuIntrinsicColorMatrix.cpp
sCpuIntrinsicConvolve3x3.cpp
sCpuIntrinsicConvolve5x5.cpp
sCpuIntrinsicInlines.h
sCpuIntrinsicLUT.cpp
sCpuIntrinsicYuvToRGB.cpp
sCpuIntrinsics_neon.S
sCpuRuntimeMath.cpp
sCpuRuntimeStubs.cpp
sCpuScript.cpp
sCpuScript.h
sCpuScriptGroup.cpp
sCpuScriptGroup.h
sd_cpu.h