758d00c68b5bb43ed8062563bdd55285b883e8ca |
|
03-May-2012 |
Stephen Hines <srhines@google.com> |
Revert "Introduce InputFile/OutputFile and FileMutex." This reverts commit d670be7a08cb85329ff3b5e9039cda9ffa4a35a1. Conflicts: lib/ExecutionEngine/InputFile.cpp lib/ExecutionEngine/OutputFile.cpp Change-Id: I99d5ed4cbda7296a399d683dfa264ce68bc4ddf3
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
5fb1474ac61aa87a2622661e1708672ef96ec8c0 |
|
03-May-2012 |
Stephen Hines <srhines@google.com> |
Revert "Introduce SymbolResolver and its subclasses." This reverts commit ee69009f3590748aac4db17c0f9774252326d6cb.
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
0f6b1d319d0d3605042345c4a6973e9c4e9161d7 |
|
03-May-2012 |
Stephen Hines <srhines@google.com> |
Revert "Introduce RSInfo and its reader/extractor/writer." This reverts commit 255cbc8a78131fd828de0fac3ff70baeaa2f032f. Conflicts: lib/ExecutionEngine/RSInfoExtractor.cpp Change-Id: I533398c25cd7fde2a76418101d29374b6e1d2b27
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
4a68b1cb89df9507584a51c3444aff99347afb74 |
|
03-May-2012 |
Stephen Hines <srhines@google.com> |
Revert "Switch to use RSCompilerDriver." This reverts commit fef9a1b0b772034b4f0894d1e2b29d1115617be0. Conflicts: lib/ExecutionEngine/RSCompiler.cpp Change-Id: Ic6f3a3643e286a20799e1c7f03dee5d6c3683fef
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
fef9a1b0b772034b4f0894d1e2b29d1115617be0 |
|
13-Apr-2012 |
Zonr Chang <zonr.net@gmail.com> |
Switch to use RSCompilerDriver. This commit is large. It does: 1. Clean-up RSScript. ScriptCached and ScriptCompiled are removed. 2. Switch to use CompilerConfig. 3. Switch to use RSInfo. MCCacheReader and MCCacheWriter are removed. 4. Update C API implementation of libbcc (i.e., bcc.cpp). Note that it'll be completely removed once there's no clients relying on it.
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
255cbc8a78131fd828de0fac3ff70baeaa2f032f |
|
12-Apr-2012 |
Zonr Chang <zonr.net@gmail.com> |
Introduce RSInfo and its reader/extractor/writer. This commit only adds files that implements RSInfo class and DOES NOT switch to use it. RSInfo defines the new file format to cache the metadata and RS-specific information from the source bitcode. It's the replacement of the old "MC cache" whose name is ambiguous and some fields within that are deprecated after legacy JIT was removed. Reader of RSInfo reads information from the file we called "RS info file." It will replace MCCacheReader. Extractor of RSInfo extracts information from the metadata section of the source bitcode. It will replace MetadataExtractor. Writer of RSInfo serializes a RSInfo object to a file such that we can load it quickly using RSInfo reader later. It will replace MCCacheWriter. RSInfo unifies the interfaces to get the RS-specific information such as #rs_export_var supplied by the developers either from file (RS info file) or from the source bitcode. Later commit will prove that. RSInfo uses signature ("\0rsinfo\n") which is different from the old MC cache ("\0bcc"). The version (MCO_VERSION in bcc_mccache.h) is increased by 1 in this commit since we remove res_type in MCO_Dependency. RSInfo inherits the version number comes from old MC cache therefore its version number starts with 3.
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
ee69009f3590748aac4db17c0f9774252326d6cb |
|
11-Apr-2012 |
Zonr Chang <zonr.net@gmail.com> |
Introduce SymbolResolver and its subclasses. SymbolResolver provides a clean way to do the symbol lookup at runtime. LookupFunctionSymbolResolver searches a symbol through a given function with context supplied. BCCRuntimeSymbolResolver searches symbol from a predefined symbol-to- address array which replaces the FindRuntime() function defined in Runtime.c previously. SymbolResolverProxy chains the SymbolResolvers and searches the symbol one by one following the chain until it founds the definition of the symbol.
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
d670be7a08cb85329ff3b5e9039cda9ffa4a35a1 |
|
05-Apr-2012 |
Zonr Chang <zonr.net@gmail.com> |
Introduce InputFile/OutputFile and FileMutex. FileHandle is replaced with InputFile/OutputFile and FileMutex. Use InputFile when you want to open a file in read-only. USe OutputFile when you open a file for writing. Both of them provide a reliable way to access the files and perform the I/O operations. Given a name "foo", FileMutex creates a file named "foo.lock" and tries to acquire an advisory lock (flock) on this file. FileHandle, which uses the file it's openning for locking, may corrupt the file contents when two or more processes are trying to gain the lock for reading/writing. For example: Process #2 creates foo Process #1 opens foo Process #2 opens foo Process #2 locks foo (exclusively) (success) Process #1 locks foo (failed, retry #1) Process #2 starts writing foo Process #1 opens and truncates foo (note there’s O_TRUNC in the flag) Process #2 writes foo continually (foo is corrupted from now on ...) Process #1 locks foo (failed, retry #2) ... Process #1 locks foo (reach the max retries and return) Process #2 gets done on writing foo (foo is corrupted ...) Process #2 unlocks and closes foo (foo is corrupted)
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
f2f743bfa22759b7374b0a50b7304637092ea9ac |
|
22-Mar-2012 |
Stephen Hines <srhines@google.com> |
am e7483737: am 98265568: Merge "Fix (GDB) debugging of code loaded from cache" * commit 'e748373746b0a9224f1a1367321d53cdca8220c4': Fix (GDB) debugging of code loaded from cache
|
76a57eaef13489b981364a2891c894b6e9610ecd |
|
21-Mar-2012 |
Daniel Malea <daniel.malea@intel.com> |
Fix (GDB) debugging of code loaded from cache When loading code from cache, set ELF section headers to point to real location of executable code. This fixes GDB errors about being unable to insert breakpoints at an invalid address. Change-Id: I81f56a50b29ba34085fcac8630a188224313b3d1
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
0e56786df8c1d4828798f91fe2bf850d414ee04f |
|
12-Mar-2012 |
Stephen Hines <srhines@google.com> |
Remove USE_CACHE support, since we only need MC support. BUG=6051742 This change also removes the legacy bcc_cache.h header by moving any relevant defines still there to bcc_mccache.h. These types/values are now renamed to generally use "MCO" instead of "OBCC". Change-Id: I6c611bd296c0335cacd82025933f36eb55bff72f
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
369996246f0e2a33bb1a0aae2a8d9f91a8ffa671 |
|
12-Mar-2012 |
Stephen Hines <srhines@google.com> |
Remove USE_MCJIT configuration flags, since MC is the only path. BUG=6051742 This also removes references to MCJIT, since we use MC CodeGen, and not the actual LLVM MCJIT path. Change-Id: I3518ae7c91952251a3bd2fc4c3b2a418572a4998
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
e0918ac3cd6070c084b76d737af055e88a7679db |
|
02-Mar-2012 |
Stephen Hines <srhines@google.com> |
resolved conflicts for merge of 7c75d915 to master Change-Id: I25c1dc90af679e2463abffd33ee8838b4727396f
|
094881f513ab366f7ffd0b2c7778ab50281ca59e |
|
14-Dec-2011 |
Daniel Malea <daniel.malea@intel.com> |
Enable debugging of RS code under GDB - Add/integrate GDBJITRegistrar support class for interfacing with GDB -- Once the GDBJITRegistrar is merged into LLVM trunk (and AOSP upgrades LLVM) all files GDB* should be removed, and replaced with appropriate includes - Basic [host|target]-side integration tests -- host-tests: use bcc driver and clang to verify gdb output -- target-tests: run skeleton apk on target and verify gdb output - Add support for optimization_level metadata in bcinfo, libbcc -- Disabled some LTO passes when optimization_level = 0 -- move register allocator registration after metadata inspection - Initial version of android-commands.py GDB plugin (for test infrastructure) -- relevant commands: load-android-app, run-android-app, start-android-app -- tested versions: gdb (7.2, 7.3), python (2.6, 2.7) - build 'bcc' driver tool by default in eng builds Change-Id: I99e0c11c8591c6d911632c1dcc82dd8fbe1244a8
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
cc366e573e31f43a6101fd6e04b90c6afdc3b7a7 |
|
22-Feb-2012 |
Stephen Hines <srhines@google.com> |
Support ForEachExpand on non-root functions. BUG=6000538 Change-Id: I36e78ced0715b060af0938f1480df240cf6ba707
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
10c1412e6cb35cfc90abb5e36ba1340a8c55f44e |
|
08-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic34de235eb1cd094af555d7299da643a626ca092
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
440e031e407dc3db983784cf0b23322a33ebfdca |
|
04-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156801 Bug: 5449033 Change-Id: I53a03ecbc37acbc7f175faef64f74423f491827a
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
b20498ea84029ae2d793bd2ca488883a804b061b |
|
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: Icceeacebb848533d7e9200e1c643b096d75b6e4a
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
34c600a77b0dd2f27fabbc4b6b3b94ed12af2a57 |
|
26-Jul-2011 |
Joseph Wen <josephwen@google.com> |
Add bccPrepareSharedObject Unlike bccPrepareExecuteable, bccPrepareSharedObject does not resolve external symbols; therefore it only generate cache file not execuable. Change-Id: I3ef093015a4f54011fbf298123cac2464230b408
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
d2a5f305f48c47b9e98a0d7ccdd0cf027bdcfe18 |
|
19-Jul-2011 |
Logan Chien <loganchien@google.com> |
Separate OLD_JIT code. Either move Old JIT code into OldJIT directory or wrap them with #if USE_OLD_JIT, so that we can remove Old JIT easily in the future. Change-Id: Id820cc2143ac4b7685460ba38258c664f4da495e
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
deff73980feb4eb760e98e24611375d967bf6107 |
|
11-Jul-2011 |
Doug Kwan <dougkwan@google.com> |
Fix conversion from a bool value to a pointer. Change-Id: I7e634ac08b6a54586ed2a335095515619ef1614d
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
8eabcbf188f6e58217ad316271ea5e984d6eacce |
|
07-Jul-2011 |
Joseph Wen <josephwen@google.com> |
Remove unused code in MCCacheReader/Writer Change-Id: I31dd0c401bbd4f979849387c1b34e60c7d33770d
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
f36637f60d8fd35c43ad52bd06d3372c9bc8fb19 |
|
07-Jul-2011 |
Joseph Wen <josephwen@google.com> |
Fixbug 4995931 Do symbol look up every time the object file is loaded from cache. Change-Id: I63184d3fc519270dfe4fc86e90efbf8552e0f584
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
a61d501206d5bee1ff331caa29bd556dd20551ac |
|
02-Jul-2011 |
Ying Wang <wangying@google.com> |
Fix build. Change-Id: I48b2fdedc86100d3896d2145cf7d0046abdfc767
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
2ca6e576421e86e0128991b825c238f1d4221910 |
|
24-Jun-2011 |
Joseph Wen <josephwen@google.com> |
Fix the libbcc SHA1 checksum dependency Calculate SHA1 checksum of libbcc.so and libRS.so at compile time. Change-Id: Ief1c20e20d62f5d5bf0a62592e081d4a6d77dcd4
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
d18a3df2628d26f65a1172ec2e3e0816731499f9 |
|
25-Jun-2011 |
Stephen Hines <srhines@google.com> |
Revert "Fix the libbcc SHA1 checksum dependency" This reverts commit 89175b9e4c07df1302374421096d6e1355954ace.
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
89175b9e4c07df1302374421096d6e1355954ace |
|
24-Jun-2011 |
Joseph Wen <josephwen@google.com> |
Fix the libbcc SHA1 checksum dependency Calculate SHA1 checksum of libbcc.so and libRS.so at compile time. Change-Id: Ifc6cf6e309155229fe1ab1228c0eb77175fbd8f0
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
4e199def03f60a4b5ba03f741603eeb25316527b |
|
24-Jun-2011 |
Joseph Wen <josephwen@google.com> |
Fixbug libbcc cache variable relocation. Change-Id: I18f98e366dfc57b5e81dfdcfadcf5d99fbf9ffd2
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
5de1adfe315bbb088f7614936b1023c6d6d3fc35 |
|
22-Jun-2011 |
Joseph Wen <josephwen@google.com> |
Use SHA1 to verify libbcc is consistent with cache Modify Android.mk to build a host version of sha1sum. Modify bcc and MCCacheReader/Writer to check for sha1 on runtime. Change-Id: I0aa32e2efd85e21f67cd46a20a9e55a430c41f30
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
6d0804b59a47c62b287f1935fc955b2a4da91ad5 |
|
19-Jun-2011 |
Shih-wei Liao <sliao@google.com> |
Fix coding style Change-Id: I1e9f9fb3dde91aee5da4fe89a94171a952d43781
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|
5e3e0ce19d80c9a42b89ca95f22d98fbbe6ffb14 |
|
17-Jun-2011 |
Shih-wei Liao <sliao@google.com> |
josephwen Adds caching for MC JIT. New MCCacheReader in addition to the classic JIT's CacheReader.[cpp|h]. New MCCacheWriter in addition to the classic JIT's CacheReader.[cpp|h]. Change-Id: Iffd490caf25136d52cefc1c6bc2a78fa991236cd
/frameworks/compile/libbcc/lib/ExecutionEngine/MCCacheReader.cpp
|