Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I9a760c1238ff8b30e0a29a2cd11a030b17b283e2
|
|
If rs_fp_imprecise is specified, issue a warning and
use rs_fp_relaxed instead.
Change-Id: I054fa32128bda60a6d22a0a6a590cd9f3575a2ca
|
|
This patch modifies libbcc in the following ways:
* Adjusted the data-layout of the LLVM 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 allocations.
* Changed how some LLVM values are stored in ExpandKernel.
* Causes expanded multi-input kernels to extract input allocation base pointers
from a field in the param strcut and load values from these allocations
appropriately.
* Causes expanded multi-input kernels to use the provided dynamic input stride
sizes if no appropriate static type information is present.
* Modified bitinfo to support a new development API target which is used to
version gate support for multi-input kernels.
Change-Id: I46d2834c37075b2a2407fd8b010546818a4540d1
|
|
If either of those have changed, we need to invalidate the
compiled bit code.
Change-Id: I9b5cdc19e29237dc7fb2ec1627a167f3f8987702
|
|
Remove the fix dependencies and make it depend only on the source
hash. More changes coming soon to add dependencies on the Android
build fingerprint and the command line used to compile.
Change-Id: I8964044affccf52326ce286f879307eca79d0b24
|
|
|
|
Change-Id: I29e8e1c58b9702873a2a4b932794720ee279492e
|
|
|
|
Re-named single character variable names.
Re-named some variables for clarity.
Factored out type construction code to only occur once every time the pass is
run on a module.
Removed unnecessary temporary vectors.
Removed a check for an invariant guaranteed by another function.
Added some assertions.
Change-Id: I0debcc301ed28f4ecaf7dadcaada604e3eff9830
|
|
Change-Id: Ieb4eea41f74917c201a07aa8b246816430fcac5c
|
|
Properly sets NEON/VFP on ARM64. Begins to remove cache from libbcc.
Change-Id: I66f50fa20d606c38d5e7af0a6fa8c6e73b2aff32
|
|
Change-Id: Ie446319900558bbf5ecb30ee1b874c260197080b
|
|
This change makes compilation distinct from loading. The symbol resolvers
now need to be instantiated directly by the RS driver.
Change-Id: I37ce409f1b2e538d9091c025895e639a250d6466
|
|
Change-Id: Id4a5be7b2b4627bfa7ef6279eb3b5b8e75915a7d
|
|
Standalone bcc was leaking memory due to misuse of OwningPtr.
RSInfo was not clearing a buffer before using only part of it. The
whole buffer was being written out in the resulting file, however.
Change-Id: Icd455748f81a06d022f1e5ed83a2ab1cae3fef09
|
|
Change-Id: I442054e7aa2329b369f578052bd41c7a973cc822
|
|
Change-Id: Iabef9abb1c770ffe1e753cfd2fac808f60c19d8a
|
|
This change separates out the creation of the InfoString from the actual
embedding within the object file. This is important because we want to reuse
the InfoString for caching metadata.
Change-Id: I2524d39dc25c48fc968108e82c6aa01c1920ff1d
|
|
Change-Id: I54979e9215f2a2cbc98641a841a24e32beb417b4
|
|
These variables/defines are not often used and they complicate the use of
target information in other Android libraries.
Change-Id: I93dc71e17ae8ece1be46a3a609639ec8380cdaf9
|
|
Bug: 7342767
This adds functionality for driver-writers to dynamically load plugins.
If such a plugin is loaded, we then execute any function called
rsCompilerDriverInit() from it. This function can initialize any other
state the driver-writer wants.
Change-Id: I733a6a3fc59c429a542cfcaf59a57ad231a19d01
|
|
Change-Id: I369a82eb6730a33c46b6700408952fe34020ca51
|
|
|
|
Change-Id: Ie2ec537bb71ca6573588bcaf893d871ba9b5c051
|
|
Change-Id: Iaad7b2ea8eea6c89c1c1a3d0e145bbb7bf60c6b9
|
|
Disable building libbccSupport and libbccRenderscript for 64-bit
Change-Id: Ied29b4eb129f42b1d3ad0a6d71a683d28b3e14be
|
|
modified: RSInfoReader.cpp
Change-Id: I669cfaeb0eb5354402410b3742f590cfc593d0ba
|
|
This commit replace the old createTBAANode() with the
struct-path TBAA introduced after LLVM 3.3.
This should fix the possible regression after merging LLVM 3.4.
Change-Id: Ie21fe4616784bad467b0f20226fce48da3afb2bd
|
|
Bug: 12977065
This is currently blocking the LLVM 3.4 rebase, since our TBAA pass is causing
NULL pointers to be dereferenced.
Change-Id: I51cd9d0efc331150970c3054a9cd26f55aa2eb0d
|
|
mConfig will be set before entering setConfig so
EnableGlobalMerge needs to be refreshed every time.
Change-Id: Ia51e706e717636ea7a87f625256d21bb050da6db
|
|
Change-Id: I7d1f460a1b6de08b11b430f90c7bf2534e5cca31
|
|
|
|
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: Ieed97e90c7c7691185a88dc425a2dd8c68aeb806
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
|
|
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: Ibbead4aecba2c90bdbe6ff362960079cb7a9e4dc
|
|
Change-Id: I9f7924c489d36913e130fd5e7617e3a96e65f1a1
|
|
http://code.google.com/p/android/issues/detail?id=60327
Change-Id: I578bab2f41347ac2e43b7d4dc1f206c5f91aeae5
|
|
Change-Id: I5c4c236c306e120c5aa24fbc91815cc27d7aab0f
Conflicts:
include/bcc/Renderscript/RSCompilerDriver.h
|
|
Change-Id: I92dff2a208c821722f057dd8c26bd12a1cb5a794
Conflicts:
include/bcc/Renderscript/RSCompilerDriver.h
lib/Renderscript/RSCompilerDriver.cpp
|
|
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: Ieed97e90c7c7691185a88dc425a2dd8c68aeb806
Signed-off-by: Yong Chen <yong.a.chen@intel.com>
|
|
Change-Id: Ic9b996432bfcd228ae8a45f75bc9c564a3a66a31
|
|
Switch over to new llvm::sys::path implementation.
Remove unused Source::CreateFromFd().
F_Binary is now in llvm::sys::fs.
Change-Id: Ib0ebb8a1d8ea04e5cf36c8082cf31dab2e144554
|
|
Change-Id: Ia5656cf4feec3206e73ecc3e3b504146b0c66707
|
|
|
|
* commit 'a08768d46fa5e3087d0fbd288366c53495ee2773':
Fix Windows build issues for libbcc.
|
|
Change-Id: I9472d0c36e23a1e0d583fc823c986ee7a1bb05ed
|
|
We extend the RSForEachExpand pass to emit Renderscript TBAA metadata.
This allows us to prove the absence of aliasing between accesses to to
allocations and other data accesses. This is especially useful as it enables
the compiler often to hoist loop invariant globals out of the compute loop.
Change-Id: Ic993c85b56ecf79b9cd5241fe3d961ace2b23935
|
|
Change-Id: Ifeea47994e36d29f690bd77af812500f7e023db1
|
|
Add unimplemented versions of dlfcn.h functions.
Remove OutputFile::CreateTemporary(), since it is unused.
Remove unnecessary includes to prevent issues with missing libraries.
Change-Id: I74bea72c8f174843e61faa8cac8bd6ae429a1bc0
|
|
This callback had very unclear semantics and the current use was suprising.
Specifically, it took a PassManager parameter, but adding anything to this pass
manager would cause the passes to be executed after the other LTO passes The
only way to execute passes before the LTO passes, was to create a new pass
manager that executes a pass right before all LTO passes (that have already
being queued in the pass manager passed in as a parameter) will be executed.
The very same behavior can be achieved by just adding our passes to the
normal pass manager using the "BeforeAddLTOPasses" callback.
We used this callback to schedule the ForEachExpand pass. This pass is now
moved to the beforeAddLTOPasses callback.
Change-Id: I3916543a4ee282e403174b90dc7b7588baab9ea3
|
|
Change-Id: I5c4c236c306e120c5aa24fbc91815cc27d7aab0f
|