a48ea364652efcf947dd33c8a6ba893e9c00dd6a |
|
02-Jun-2016 |
David Gross <dgross@google.com> |
Delete simple reduction implementation. Bug: 27298560 Change-Id: Id826426fc81458ad66118bf7b2059a7a6f02a047
/frameworks/compile/libbcc/include/bcc/Renderscript/RSUtils.h
|
57fd9f882f3359be4201c42b02aebf785d311df2 |
|
08-Apr-2016 |
David Gross <dgross@google.com> |
If a general reduction kernel lacks a combiner function, synthesize one. The CPU reference driver can only go multithreaded for a reduction kernel if that kernel has a combiner function. Bug: 27299475 Change-Id: If7f3a9ba8ec5e15ed5f3ef96968d28d650b01c20
/frameworks/compile/libbcc/include/bcc/Renderscript/RSUtils.h
|
c31e101bed9d58be0388fead9c7344624978f580 |
|
26-Aug-2015 |
Stephen Hines <srhines@google.com> |
Fix invalid read of literal (anonymous) structure names on assertion builds. Bug: 22926131 This change adds support for using libbcc with an assertion-enabled build of LLVM via the FORCE_BUILD_LLVM_DISABLE_NDEBUG define. It also restricts the use of getName() on literal structures. Although a separate patch to frameworks/rs that makes our RS object types not just typedefs of anonymous structs can fix this safely going forward, our release builds will need to be able to read legacy bitcode that uses anonymous literal structure types. Thus, we need the ability to call getName() on all structures for release builds. In the case of assertion builds, we will enforce that we are using the updated compiler + headers so that the structures are not anonymous. If an older compiler + headers are used in the host compile, the bcc compilation will fail with an appropriate error message. Change-Id: Ic2910aed069235b40a31c22b006a4db5c1b9e06c
/frameworks/compile/libbcc/include/bcc/Renderscript/RSUtils.h
|
23c2bfe96698091f2886d1959435d8949f76c46b |
|
22-Jun-2015 |
David Gross <dgross@google.com> |
Fix cases where RSInvariant pass might miss marking some loads as invariant. llvm-rs-cc and bcc can add numeric suffixes to structure type names; we need to tolerate this when looking for the context structure by name. Bug: 21815112 Change-Id: If5ef169245f8d43affdc43abb2298c7015568dd0
/frameworks/compile/libbcc/include/bcc/Renderscript/RSUtils.h
|
abfa7852d33391671d972614bb21990c5f32ee2b |
|
23-May-2015 |
Stephen Hines <srhines@google.com> |
Fix x86_64 issue with a missing "." in structure names. Bug: 21375248 This patch refactors RSX86CallConvPass.cpp a little bit so that it uses our latest utility functions for determining the Type of a given Value. The prior implementation could miss structures that didn't have a suffixed dot + number appended to them (i.e. struct.rs_allocation.17 worked fine, but struct.rs_allocation would go undetected). This resulted in missing conversions for the parameter types on x86_64 compiles (and thus crashes in CTS for reference counting, etc.). Change-Id: Ic437754399514d201d2fb69f6efb03badc5f535d
/frameworks/compile/libbcc/include/bcc/Renderscript/RSUtils.h
|
fb81ec1a875d13d9750006313b9123903336101d |
|
19-May-2015 |
Stephen Hines <srhines@google.com> |
Provide additional information about global variables. Bug: 20306487 This patch extends our global information pass to include details about the type of a global variable, whether or not it is static, constant, or a pointer. It also refactors code that deals with conversion between RenderScript's internal data types and LLVM's type system. A subtle bug has also been fixed with respect to the RSInvokeHelperPass. The previous version could ignore an rs_* object that did not have a numeric suffix. The new helper function properly addresses cases like this. Change-Id: If9c933a885bf6a9063b7edec3f0873e1b144188d
/frameworks/compile/libbcc/include/bcc/Renderscript/RSUtils.h
|