History log of /frameworks/compile/libbcc/include/bcc/Renderscript/RSUtils.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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