• Home
  • History
  • Annotate
  • only in /frameworks/rs/driver/runtime/arch/
History log of /frameworks/rs/driver/runtime/arch/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2173a9968276b2b91b7ed3d0a76d9e642710843b 01-Apr-2016 Pirama Arumuga Nainar <pirama@google.com> Define Float16 clamp

Bug: http://b/27366867

clamp is defined in two files: driver/runtime/arch/generic.c (used to
build libclcore for most architectures) and driver/runtime/arch/clamp.c
(used to build libclcore for AArch64, ARM32 with Neon). I had added
Float16 clamp in clamp.c but not in generic.c. This CL adds the
functions to arch/generic.c.

Change-Id: I26df4f1efec6e909c786baf132d6c296b5a3468f
eneric.c
f515ce0b076986593622d81f4b6c1f3fac91a03f 24-Mar-2016 Pirama Arumuga Nainar <pirama@google.com> Revert WARS related to __truncxfhf2

Bug: http://b/26165616
Bug: http://b/23535482

Revert "Add __truncxfhf2() to libclcore_g.bc as well on x86 targets."

This reverts commit 53f2796ad6c7487c298b49b62a0ea36ac95c54e5.

Revert "Implement __truncxfhf2 in driver/runtime"

This reverts commit d68b3c3a1ffa365e6be78afe74b3bf02bae3834d.

(cherry picked from commit 3276e6d5fd86ef7b9a6e7b8c89922757da5d23ad)
86_trunc.ll
6ddb349243e03b30b9d11cc0405d048cd07b6378 18-Feb-2016 Stephen Hines <srhines@google.com> Add __truncxfhf2() to libclcore_g.bc as well on x86 targets.

Bug: http://b/23535482

In order to facilitate x86 debugging (and simplify our build a bit), I
moved this function to a separate file. Once we have updated LLVM, we
can remove this function (since it won't be used anymore).

Change-Id: I91106a177b987187e40d556a2a0ae96e24b09e65
(cherry picked from commit 53f2796ad6c7487c298b49b62a0ea36ac95c54e5)
86_sse2.ll
86_trunc.ll
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
eneric.c
d68b3c3a1ffa365e6be78afe74b3bf02bae3834d 04-Feb-2016 Pirama Arumuga Nainar <pirama@google.com> Implement __truncxfhf2 in driver/runtime

http://b/26165616

As a WAR for this bug, define __truncxfhf2 in driver/runtime. Note that
this implementation exhibits the double-rounding problem. This WAR will
be removed once a proper implementation is added to compiler-rt.

Change-Id: Ic8ec8f86feff6da81c1c8e7c0b1d37112a20c609
86_sse2.ll
54cd5d1771ea5c95e181befc66ef8e2a2c1b78cd 10-Dec-2015 Pirama Arumuga Nainar <pirama@google.com> Implement f16 math functions in the runtime

Bug: 23536224
Bug: 26099914

Change-Id: I67cd1d5c8e45822f4ce847d8cff402ba31b03660
lamp.c
dd635b0a5095b1b2dfae0458069d03c6a13c3473 29-Oct-2015 Yong Chen <yong.a.chen@intel.com> X86: Add missing functions for libclcore files

Change-Id: Ia9b70843dfa32acabf8d71ce77e253f8a376c16a
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
eneric.c
86_sse2.ll
a673fb0db28eac2300fcfa04549138c1c9202014 23-Jul-2015 Stephen Hines <srhines@google.com> Ensure that SSE-specific functions get built separately for debug runtime.

Bug: 22530323

The build rules for the debug context don't allow the SSE optimized
versions of some functions to be used. Since we bundle all of these
functions into a single file, this results in the debug runtime missing
some symbols (clamp, length, dot, sqrt). This change ensures that the
debug runtime for x86 gets the generic definitions of these functions
instead of dropping them completely.

Change-Id: Idedfbb5c1badf0b88530a7e926dda6141443ea1f
eneric.c
81847392705347faa61e94e5d10e996943b6dd7c 08-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> Update frameworks/rs for LLVM rebase to r233350

- Update 'load' to the new syntax in the textual IR. These files were
updated automatically using the script in
http://reviews.llvm.org/D7649
- Update 'getelementpointer' instructions to the new GEP. arch/*.ll
were updated automatically using the script in
http://reviews.llvm.org/D7636

Change-Id: Id198429579f22277108d5d55c34d4870359a6c18
simd.ll
eon.ll
be2163801c33d6849ae580d42b919b8803d55095 22-Mar-2015 Jean-Luc Brouillet <jeanluc@google.com> Reorganize the header files in a way that's easier to document.

This CL does not change any specification found in a .spec file,
it just reorganizes the distribution of the content.

It also changes a few files that included headers that no longer
exist.

Change-Id: I4a290a30ad3bdc31bac7a7be24e7a7dea2af2618
lamp.c
eneric.c
41371c7c23c4115cf0b3e7dc83240d5bcfb828b3 26-Mar-2015 Jason Sams <jsams@google.com> Revert "Reorganize the header files in a way that's easier to document."

This reverts commit 386e87ecf4114084c10dd385edc1c2baebe80a04.

Change-Id: Icaeedd9badfec2c51a8120c72eb6297736d68c2a
lamp.c
eneric.c
386e87ecf4114084c10dd385edc1c2baebe80a04 22-Mar-2015 Jean-Luc Brouillet <jeanluc@google.com> Reorganize the header files in a way that's easier to document.

This CL does not change any specification found in a .spec file,
it just reorganizes the distribution of the content.

It also changes a few files that included headers that no longer
exist.

Change-Id: I9474ea6706449312fc7a5715d5bef3eabb288bb9
lamp.c
eneric.c
c5ce430172dd0a1d3d78c79c95bbdf3f1b8c0c3e 13-Jan-2015 Miao Wang <miaowang@google.com> Fix the bug that rsYuvToRGBA_float4 bug for libclcore.bc on arm64

bug: 18987953
Change-Id: I16d83e627b4c75cc8ed54bad66a6a6b749095c91
eneric.c
3ef8201219144d7c914335de842e4a995534e2e8 21-Oct-2014 Tim Murray <timmurray@google.com> Fix AArch64 calling convention bug that prevents inlining.

bug 18071147

Change-Id: I062c919ba75c5aeb28e0358a671b81aa64a284c2
simd.ll
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>
86_sse3.ll
974467797f45a7e4ac191eb158edb78492a48e56 26-Aug-2014 Tim Murray <timmurray@google.com> Enable ASIMD math operations.

bug 16846318

Change-Id: Ia19cca77ef7ab6e14da9fefad522f79e25c810de
simd.ll
lamp.c
d8b8f8a16415496acc9844a89599ce7f377bd04d 20-Aug-2014 Jason Sams <jsams@google.com> Fix ulong

The new 64 bit functions were mismatches between long and ulong
Make all functions consistent.

bug 16846318

Change-Id: I806f392c12af881b54aa287153bd66ad7aa1b81e
lamp.c
53826db2ea7f26a241be881c2b454ab3e1e5dd50 08-May-2014 Jason Sams <jsams@google.com> Implement long/double min/max

Change-Id: I87a8fced5a9f33d40aa15f0c247c804fad09adb8
eneric.c
eon.ll
69cf14d340132b99784a0d1497a3e9cbb23ca54b 29-Apr-2014 Jason Sams <jsams@google.com> Merge "Fix precision issues with half_recip, half_sqrt, and half_rsqrt"
ba92a7085bbb8916334a6571ff33355873883173 29-Apr-2014 Jason Sams <jsams@google.com> Fix precision issues with half_recip,
half_sqrt, and half_rsqrt

Change-Id: I37affd7e817dd66784a541beec811bb1bca701c2
eneric.c
eon.ll
3a830c08a468ffba0caa22da00001230117d7a84 26-Apr-2014 Stephen Hines <srhines@google.com> Fix x86_64 multiply defined symbol errors.

Change-Id: Ib4c2ffc8b9f9dfd57ec4e0ca76d61459dfbbd775
eneric.c
5eaa97c8fb83fecd4ed8eaa22a736dcb7d720c62 08-Feb-2014 Jean-Luc Brouillet <jeanluc@google.com> Fix half* failing to load

Change-Id: I9800e0a3dffe2d0ded6047b5d35af91e8996c3e6
eon.ll
beac9ca07271706b8429a676d071539b7e841f10 07-Feb-2014 Jason Sams <jsams@google.com> Fix half_recip decls.

Change-Id: I19c049adaa18d052a65923ad0935382334561ece
eon.ll
e30a05aefa5ac6db3fac00cd67304126c7e0cd5e 04-Oct-2013 Stephen Hines <srhines@google.com> Fix target names for x86.

Change-Id: I8b890cc26c8cf7b5d8479f03395f082862378a5d
86_sse2.ll
86_sse3.ll
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
eneric.c
146e138f5c6eb4980ee6d85d33b951b87b6e8efe 20-Aug-2013 Stephen Hines <srhines@google.com> Refactor the libbcc runtime for x86 platform

This patch is merged/rebased from AOSP, where it was initially submitted to
frameworks/compile/libbcc by Jun Tian <jun.j.tian@intel.com>. All conflicts
have been resolved.

This patch refactors the libbcc runtime code to support x86 platform.
It removed the redundant x86 code and added the missing functions in
libclcore_x86.bc.
It resolved the RenderScript failures on the x86 platform.

Bug: 9961583
Change-Id: I2c8be0f710960ee5e0614721f5edfbaf028c67e1
ot_length.c
eneric.c
qrt.c
86_clamp.ll
86_dot_length.ll
86_generic.c
86_math.ll
86_sse2.ll
86_sse3.ll
5a47020542c52af3e879c1cd67674ca979ff0a18 30-May-2013 Stephen Hines <srhines@google.com> Move RS runtime to frameworks/rs.

Bug: 7342767
Change-Id: Ia45064a5257b8ce460918f327670e3be550d4b56
lamp.c
ot_length.c
eneric.c
eon.ll
qrt.c
86_clamp.ll
86_dot_length.ll
86_generic.c
86_math.ll