summaryrefslogtreecommitdiff
path: root/rsScriptC_Lib.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Added back old rsClearObject()Yang Ni2016-04-111-0/+5
| | | | | | | | | | | Bug: 28121289 To keep vendor drivers running without rebuild. This is simply a wrapper of the new rsClearObject() function without the first Context parameter. Change-Id: Ie84ca515274da609b7a0eb46fef9019dd691305c
* Avoid accessing TLS in rsClearObject()Yang Ni2016-04-061-1/+1
| | | | | | | | | | | | | | | | | | | 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)
* Revert "Added a flag to APIs for rsObj creation"Yang Ni2016-03-081-3/+3
| | | | | | This reverts commit 04dcca95461a2ffab4ce5209a453b752ab5c606b. Change-Id: I0016bbff79626b033201a88f466cbb2d60f86717
* Added a flag to APIs for rsObj creationYang Ni2016-03-031-3/+3
| | | | | | | | | | | Bug: 25570907 This flag will distinguish calls from Java/JNI vs. Single-Source RS. For the latter, the user ref count should remain zero to avoid memory leaks. Change-Id: Id3604f93b166089e3aca896d1c6c509b3ea19bcf (cherry picked from commit a7725cbfcdfe2eaf868571c77f004a4d7208e8ef)
* Driver support for creating allocations from a ScriptPirama Arumuga Nainar2015-11-101-0/+16
| | | | | | | | | | | | | Bug: 23535985 Implement functions rsCreateElement, rsCreateType and rsCreateAllocation in libRSDriver to allow creation of Allocations from a Script. In its current state, the RS objects returned from these functions are guaranteed to leak due to incorrect handling of their reference counts. They'll be fixed in a follow-up CL. Change-Id: I9bb7c72a8dd3cd1aac2de3bad92276c3af662484
* Launch options & multi inputs for single-source RSYang Ni2015-11-061-12/+3
| | | | | | | | | Bug: 23535985 Also renamed rsParallelFor to rsForEach, and deprecated previous rsForEach. Change-Id: Ibc22bd5e9585a4471b15920ef60fe1fe2312de49
* Add rsForEachInternalYang Ni2015-10-231-2/+3
| | | | | | | | | | | | | | | | Bug: 23535985 Added a compiler intrinsic rsParallelFor to the runtime API, which is translated into an internal API (rsForEachInternal) by slang. Added a test to RsTest (for native) and RSTest_CompatLib (for support). Enhanced the auto api generator to handle ellipsis argument, intrinsics, internal-only APIs, and special level for API under development. Change-Id: I6e2cf3db868f426aa8e0b9a77732b66c1e6b9f03
* Handle older structure sizes by zeroing new fieldsPirama Arumuga Nainar2015-04-281-16/+3
| | | | | | | | | | | | | | | Bug 19734267 Bug 19866850 Prior fix handled only rsForEach calls from a script. It is not sufficient, as launch options in support library also will also use old structures. Apps compiled for support library still run in native mode when available, thus necessitating this fix. This fix copies and extends the input in ScriptC::runForEach instead of rsrForEach. Change-Id: I3bb2527eadcbcdb85a76a1f5568269bbfdee972b
* Merge "Fix issue with older structure sizes"Stephen Hines2015-04-151-3/+16
|\
| * Fix issue with older structure sizesStephen Hines2015-04-141-3/+16
| | | | | | | | | | | | | | | | | | When structures are enlarged in RS we need to use the script API number to properly handle the older cases. Bug: 19734267 Change-Id: I0ffd3dc4cea1640f2b14c588df3a93eee749e74e
* | Fix refcounting bugJason Sams2015-04-141-21/+35
|/ | | | Change-Id: I0ea7f5077e1b7d15588ac023ae5ce19abe016c48
* Fix broken rsrLocalTime implementation.Tim Murray2014-12-081-5/+0
| | | | Change-Id: Ia81e0ee51ebcb248e413d99de37d4092ffa9bcfb
* Replace NULL macros with nullptr literals.Chris Wailes2014-08-201-9/+9
| | | | Change-Id: I918c40879aa547438f77e7d1a95fa2aa33bec398
* Collapse code paths for single- and multi-input kernels.Chris Wailes2014-08-151-1/+11
| | | | | | | | | | | 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
* Revert "Collapse code paths for single- and multi-input kernels."Stephen Hines2014-08-131-11/+1
| | | | | | This reverts commit 818cfa034e257c7bb48356257f5cb67334e19aa6. Change-Id: I59f39f52e6c8f60bb01cbcb8ccf2215eaf46a57f
* Collapse code paths for single- and multi-input kernels.Chris Wailes2014-08-121-1/+11
| | | | | | | | | | | 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
* Bugfixes for AArch64.Tim Murray2014-08-121-2/+2
| | | | | | | | | | | | - 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
* Fix isObject when in 64bit mode.Jason Sams2014-08-121-2/+27
| | | | | | | This also cleans up the passing of args to SetObject and ClearObject. Fix related issues in 64bit teardown. Change-Id: I90d1b93c45ff5bc84957d5441ab48a4e2f6feb20
* Add 64bit large object supportJason Sams2014-07-081-12/+22
| | | | | | | | | | | | Add HAL hooks for filling in LO fields. Change-Id: Ib9bdee714a062de519d2a9708c1016404a1b11a4 Conflicts: driver/rsdBcc.cpp driver/rsdCore.cpp rsAllocation.h rs_hal.h
* Retain older message APIs since existing GPU drivers depend on them.Stephen Hines2013-12-031-0/+10
| | | | Change-Id: Ic5425fafb7971b6094108d79346d067785b91735
* Add missing rsForEach()/rsSendToClient*() functions and API tests.Stephen Hines2013-12-031-2/+2
| | | | | | These were missing from the support library. Change-Id: I53dd062fc0f1d9a6f0ce06d148c4047ebb338b71
* Refactor hal to remove cpuConsumer from driversJason Sams2013-08-071-0/+7
| | | | | | | This CL should minimize build breaks due to BufferQueue changes in the future. Change-Id: I565a6eae5cc25603741fef32f2cfcb31a32eb757
* Remove libutils and fix rsDebug for RS support library.Stephen Hines2013-07-101-1/+1
| | | | | | | | | | | | | | | | 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
* Add x86 server support.Tim Murray2013-03-191-0/+14
| | | | Change-Id: I674acaf15b67afa48bc736f72942a11e2e38e940
* Reduce diffs with compat lib.Jason Sams2013-03-151-0/+5
| | | | Change-Id: Ibfa2c7c7da56d158f424ac343e364feacd0a21da
* Separate CPU driver impl from reference driver.Jason Sams2012-11-191-12/+12
| | | | Change-Id: Ifb484edda665959b81d7b1f890d108bfa20a535d
* Move memory layout to driver.Jason Sams2012-07-251-4/+0
| | | | | | | | This change moves all allocation data copies to the hal. Also removes stride from the runtime. Follow on changes will remove the malloc pointer from the runtime. Change-Id: I30967c739800cd4b97186e9fc8b69f26a3f2787d
* More header untangling.Alex Sakhartchouk2012-03-091-0/+1
| | | | Change-Id: I090943775cbda8d9515cdb484957f6b05d5b1799
* Support running ForEach on non-root functions.Stephen Hines2012-02-221-2/+2
| | | | | | BUG=6000538 Change-Id: Ie2b16893b150cc5955ee4b9d028c988f69a82744
* Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGESteve Block2012-01-081-4/+4
| | | | | | | See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
* Allocation copy functions.Alex Sakhartchouk2011-06-141-0/+23
| | | | Change-Id: Idce6d44a4f4bb2e399284a40c0f90dc1bff912fd
* Create runtime stubs for compute driver.Jason Sams2011-04-201-860/+26
| | | | Change-Id: I8e0250a642844a2ad3ff6efc38e385445b7da032
* Migrate thread launch to driver.Jason Sams2011-03-171-5/+2
| | | | Change-Id: If182c524cceb327547640f22f956856d291d1787
* Start seperating out RS compute implementation. Create halJason Sams2011-03-171-84/+72
| | | | | | layer to seperate from runtime. Change-Id: Idf5c1261be4131690d25c15948e98324e979b4f9
* Make RS Matrix functions threadable.Stephen Hines2011-03-141-37/+37
| | | | | | BUG=4100079 Change-Id: I6cefa0eab42481fa974077d6aed98007f9fd87f7
* DO NOT MERGE: Almost all warnings are now errors in RS build.Stephen Hines2011-03-031-0/+2
| | | | Change-Id: Ie4952cdf5c75bf1b7a7899a32b3b1f8747686356
* Add support for memcpy/memset to RS.Stephen Hines2011-02-041-0/+2
| | | | | Bug: 3426446 Change-Id: I78170a50bdd891d928b3db96685b4c3c801b6f00
* Migrating functions for on device linking.Jason Sams2011-01-251-0/+522
| | | | Change-Id: I41dc1551ada53370f2b06c49cc76089b1e72ac5b
* Add missing functions to math library.Stephen Hines2011-01-241-0/+10
| | | | | | | | | This also updates the math test suite to exercise all the basic operator functions (except __udivsi3 which may not be 100% necessary). There is also a small fix for rsQuaternionMultiply(). Change-Id: Id157e6d5ebe2e20c17e8ea7b13ffaa74c241838c b: 3203577
* Correctly log debugging info as debug.Jason Sams2011-01-181-19/+19
| | | | Change-Id: I1169e015288d7d91b7ecbdd991e815152740e68d
* Split time functions into rs_time.rsh header.Stephen Hines2011-01-091-65/+15
| | | | Change-Id: I598b0031d15749c91d11fbd37b075d0564a94dbf
* Allocation API update.Jason Sams2010-12-081-2/+4
| | | | Change-Id: I9b4a71f9e94c7d3978f06b7971051ab4f8472503
* Add support for integer mod.Bryan Mawhinney2010-11-151-1/+5
| | | | Change-Id: I681b8220c8b39d865ade036a93ba93a965e259c9
* Code cleanup to make formatting consistentAlex Sakhartchouk2010-11-101-72/+36
| | | | | | across all the renderscript files. Change-Id: Idf5fcc60877e44c8f074f7176e37f70b3b895a3c
* Handle user message ID 0Jason Sams2010-11-081-4/+4
| | | | | | | Pass RS runtime errors back to java. throw exceptions for runtime errors. Change-Id: Ifcf16cbbf9b98137971dced5076f8a5563eb016c
* Add code to mark functions rather than whole files as threadable.Jason Sams2010-11-011-84/+84
| | | | Change-Id: Ie635fbbb96b8ade48501ec564fe135edc256537d
* Add support for rsDebug with 64-bit types.Stephen Hines2010-10-151-1/+18
| | | | | Bug: 3099081 Change-Id: Ieb3af7757489876ef951be8527aa73f69e1481fd
* Add object validity checking.Jason Sams2010-09-301-7/+15
| | | | Change-Id: I2613e87b09a6e560f0381d4ed620d60a10bc30e4
* Fix function name match for refcounting funcs.Jason Sams2010-09-171-4/+55
| | | | Change-Id: I3fa8211200023e0df494cd9aab698e215b3c2164
* Adding ability to dirty the allocation and notify shaders using it.Alex Sakhartchouk2010-09-021-0/+7
| | | | Change-Id: Id5ac8dbba5185cb1f43bedcf4098fcef9f477c51