62746d8d9c4400e4764f162b22bfb1a32be287a9 |
|
09-Dec-2014 |
Andreas Gampe <agampe@google.com> |
ART: Swap-space in the compiler Introduce a swap-space and corresponding allocator to transparently switch native allocations to memory backed by a file. Bug: 18596910 Change-Id: I131448f3907115054a592af73db86d2b9257ea33
|
e7bc70b7c5d704a9ecc5d3b6e0851921e59ba9af |
|
20-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Link libsigchain.a instead of sigchain.o Relative paths may sometimes lead to failed builds if sources are built in particular order. Also it is possible to export symbols from static lib with LOCAL_WHOLE_STATIC_LIBRARIES variable. (cherry picked from commit e49a4f6db74f4e66486a6aaf6564f997a94e230f) Bug: 18701723 Change-Id: I6d62594c2e84020d67254747c1fd465e1144920e
|
e05d1d5fd86867afc7513b1c546375dba11eee50 |
|
03-Nov-2014 |
Mathieu Chartier <mathieuc@google.com> |
Add hash set More memory efficient than libcxx since we do not box the values. Change intern table to use new hash set. Clean up intern table by removing const casts and deleting unnecessary code. Changed the class linker to use a hash set, also added a pre-zygote class table. 5 samples of: adb shell stop && adb shell start && sleep 60 && adb shell dumpsys meminfo Before: 165929 kB: Native 175859 kB: Native 168434 kB: Native 166559 kB: Native 169958 kB: Native After: 160972 kB: Native 159439 kB: Native 157204 kB: Native 165093 kB: Native 163039 kB: Native TODO: Add HashTable which is implemented by using a HashSet. TODO: Use for DexFile::find_class_def_misses_. TODO: Investigate using mem maps instead of native heap. Bug: 17808975 Change-Id: I93e376cf6eb9628cf52f4aefdadb6157acfb799a
|
f4450a359a08c09b88cb64c4a2ea25f983535dfb |
|
15-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix mac build (second attempt) It appears that the version of mac ld with -export_dynamic is pretty recent. Remove -export_dynamic to fix build for older mac versions (?) (cherry picked from commit 8b5b69813ef4d718db2e38e51867883511a3eeea) Change-Id: I272d4b2c95411cc8126f27468f5199ff932fc9ef
|
09eff05e08865660c049d1d38cdeb93662e95f0d |
|
14-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fixing mac build MacOS static linker does not understand --export-dynamic and --version-script. According to man ld there is -export_dynamic option which should do the same thing. (cherry picked from commit 1d74e57fa22fbcad1e14d776c771472b2d8438fb) Change-Id: If9c096e099c8c070b62dda87dd0ed3ce77addcd6
|
4b70d11dc00b163328c500b0061e9f956dd18903 |
|
14-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Untie gtest executables from LD_PRELOAD Bug: 15345057 Bug: 15426766 (cherry picked from commit 8508a436efa7979ad54f644e60dad483c8499be2) Change-Id: Id710c87c050f573fec1e4c36f06f88def5de5887
|
34fa79ece5b3a1940d412cd94dbdcc4225aae72f |
|
15-Sep-2014 |
Brian Carlstrom <bdc@google.com> |
Avoid printing absolute addresses in oatdump - Added printing of OatClass offsets. - Added printing of OatMethod offsets. - Added bounds checks for code size size, code size, mapping table, gc map, vmap table. - Added sanity check of 100k for code size. - Added partial disassembly of questionable code. - Added --no-disassemble to disable disassembly. - Added --no-dump:vmap to disable vmap dumping. - Reordered OatMethod info to be in file order. Bug: 15567083 Change-Id: Id86a21e06d4a28f29f16fd018cba7e55c57f849a
|
95b4c65da93500cdbdcaa3e01010771ef3f466f1 |
|
15-Aug-2014 |
Jeff Hao <jeffhao@google.com> |
Prevent stubs from being installed in java.lang.reflect.Proxy.<init>. This CL is a better fix for proxy tracing and undoes the changes in https://android-review.googlesource.com/#/c/103025/ Bug: 16386215 (cherry picked from commit db8a664e0b68c7c4d36270cd21dce8de1912d7f9) Change-Id: Ic9e0ea2af7cb2da5d90c56aa009de92dba14cc47
|
4bf8d11df5dccc1b276cd9c40a98e8a14d79a9c8 |
|
25-Jul-2014 |
Jeff Hao <jeffhao@google.com> |
Fix proxy tracing and enable tests that now work with tracing. Also updates proxy_test to generate an image for GetQuickOatCodeFor. Bug: 16386215 (cherry picked from commit f0a3f09c3d54646166a55c05a6b39c7dd504129c) Change-Id: I138edbad9e1646db8590f2b1b73f2788d9710e68
|
2c26501d24d929abe096ecce44f91410290b33c0 |
|
06-Aug-2014 |
Mathieu Chartier <mathieuc@google.com> |
Add card table test. Tests some of the functionality supported by the card table. Removed some logcat spam from monitor_pool. Change-Id: I1423816a72572f78aca44552effa2b4c6aac46c8
|
1fd4821f6b3ac57a44c2ce91025686da4641d197 |
|
10-Jul-2014 |
Vladimir Marko <vmarko@google.com> |
Rewrite topological sort order and improve GVN. Rewrite the topological sort order to include a full loop before the blocks that go after the loop. Add a new iterator class LoopRepeatingTopologicalSortIterator that differs from the RepeatingTopologicalSortIterator by repeating only loops and repeating them early. It returns to the loop head if the head needs recalculation when we reach the end of the loop. In GVN, use the new loop-repeating topological sort iterator and for a loop head merge only the preceding blocks' LVNs if we're not currently recalculating this loop. Also fix LocalValueNumbering::InPlaceIntersectMaps() which was keeping only the last element of the intersection, avoid some unnecessary processing during LVN merge and add some missing braces to MIRGraph::InferTypeAndSize(). Bug: 16398693 (cherry picked from 55fff044d3a4f7196098e25bab1dad106d9b54a2) Change-Id: Id7bcd99c8abed1b7500b9ef723313d4c5fc6f1e8
|
55fff044d3a4f7196098e25bab1dad106d9b54a2 |
|
10-Jul-2014 |
Vladimir Marko <vmarko@google.com> |
Rewrite topological sort order and improve GVN. Rewrite the topological sort order to include a full loop before the blocks that go after the loop. Add a new iterator class LoopRepeatingTopologicalSortIterator that differs from the RepeatingTopologicalSortIterator by repeating only loops and repeating them early. It returns to the loop head if the head needs recalculation when we reach the end of the loop. In GVN, use the new loop-repeating topological sort iterator and for a loop head merge only the preceding blocks' LVNs if we're not currently recalculating this loop. Also fix LocalValueNumbering::InPlaceIntersectMaps() which was keeping only the last element of the intersection, avoid some unnecessary processing during LVN merge and add some missing braces to MIRGraph::InferTypeAndSize(). Bug: 16398693 Change-Id: I4e10d4acb626a5b8a28ec0de106a7b37f9cbca32
|
99ea58cc68b51837c065f4a2a54efbf208dd76fa |
|
02-Jul-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add a new stack map scheme that encodes compilation info per pc. Encodes stack mask, register mask, dex register values, and inlining info. The encoding is currently very straightforward: there is no clever encoding, nor compression. Change-Id: I5fd9ae28189a5513cd9e3c8d52c648463207643d
|
147eb41b53729ec8d5c188d1cac90964a51afb8a |
|
11-Jul-2014 |
Dave Allison <dallison@google.com> |
Revert "Revert "Revert "Revert "Add implicit null and stack checks for x86"""" This reverts commit 0025a86411145eb7cd4971f9234fc21c7b4aced1. Bug: 16256184 Change-Id: Ie0760a0c293aa3b62e2885398a8c512b7a946a73 Conflicts: compiler/dex/quick/arm64/target_arm64.cc compiler/image_test.cc runtime/fault_handler.cc
|
1a43dd78d054dbad8d7af9ba4829ea2f1cb70b53 |
|
17-Jul-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add write barriers to optimizing compiler. Change-Id: I43a40954757f51d49782e70bc28f7c314d6dbe17
|
69dfe51b684dd9d510dbcb63295fe180f998efde |
|
11-Jul-2014 |
Dave Allison <dallison@google.com> |
Revert "Revert "Revert "Revert "Add implicit null and stack checks for x86"""" This reverts commit 0025a86411145eb7cd4971f9234fc21c7b4aced1. Bug: 16256184 Change-Id: Ie0760a0c293aa3b62e2885398a8c512b7a946a73
|
e63db27db913f1a88e2095a1ee8239b2bb9124e8 |
|
16-Jul-2014 |
Ian Rogers <irogers@google.com> |
Break apart header files. Create libart-gtest for common runtime and compiler gtest routines. Rename CompilerCallbacksImpl that is quick compiler specific. Rename trace clock source constants to not use the overloaded profiler term. Change-Id: I4aac4bdc7e7850c68335f81e59a390133b54e933
|
7fb36ded9cd5b1d254b63b3091f35c1e6471b90e |
|
10-Jul-2014 |
Dave Allison <dallison@google.com> |
Revert "Revert "Add implicit null and stack checks for x86"" Fixes x86_64 cross compile issue. Removes command line options and property to set implicit checks - this is hard coded now. This reverts commit 3d14eb620716e92c21c4d2c2d11a95be53319791. Change-Id: I5404473b5aaf1a9c68b7181f5952cb174d93a90d
|
0025a86411145eb7cd4971f9234fc21c7b4aced1 |
|
11-Jul-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Revert "Revert "Add implicit null and stack checks for x86""" Broke the build. This reverts commit 7fb36ded9cd5b1d254b63b3091f35c1e6471b90e. Change-Id: I9df0e7446ff0913a0e1276a558b2ccf6c8f4c949
|
34e826ccc80dc1cf7c4c045de6b7f8360d504ccf |
|
29-May-2014 |
Dave Allison <dallison@google.com> |
Add implicit null and stack checks for x86 This adds compiler and runtime changes for x86 implicit checks. 32 bit only. Both host and target are supported. By default, on the host, the implicit checks are null pointer and stack overflow. Suspend is implemented but not switched on. Change-Id: I88a609e98d6bf32f283eaa4e6ec8bbf8dc1df78a
|
95a059793c4c194f026afc74c713cc295d75d91a |
|
30-May-2014 |
Vladimir Marko <vmarko@google.com> |
Global Value Numbering. Implement the Global Value Numbering for optimization purposes. Use it for the null check and range check elimination as the LVN used to do. The order of evaluation of basic blocks needs improving as we currently fail to recognize some obviously identical values in methods with more than one loop. (There are three disabled tests that check this. This is just a missed optimization, not a correctness issue.) Change-Id: I0d0ce16b2495b5a3b17ad1b2b32931cd69f5a25a
|
74240819ae09e29b2753ef38f4eb4be1c2762e2e |
|
17-Apr-2014 |
Andreas Gampe <agampe@google.com> |
Use memory chunks for monitors on LP64 Monitor IDs in lock words are only 30b. On a 32b system that works fine, as memory is usually aligned enough that shifting works out. On 64b systems, the virtual memory space is too large for that. This adds memory chunks into which we allocate the monitors so that we have base_addr + offset and can use the offset as the monitor ID. To allow for relatively compact but growable storage, we use a list of chunks. Added a global lock for the monitor pool. Change-Id: I0e290c4914a2556e0b2eef9902422d7c4dcf536d
|
3d14eb620716e92c21c4d2c2d11a95be53319791 |
|
10-Jul-2014 |
Dave Allison <dallison@google.com> |
Revert "Add implicit null and stack checks for x86" It breaks cross compilation with x86_64. This reverts commit 34e826ccc80dc1cf7c4c045de6b7f8360d504ccf. Change-Id: I34ba07821fc0a022fda33a7ae21850957bbec5e7
|
1a2f84e80e852b1e210ed54fa995f3d781a23bd3 |
|
08-Jul-2014 |
Ian Rogers <irogers@google.com> |
Fix dex file dependencies for oat tests. The initial prerequisit used as an argument to "cp" wasn't set causing dex2oat to attempt to compile dex2oat. Make the setting of host and target dex dependencies more explicit in build-art-test-dex and update the test rules appropriately. Change-Id: I4f591f817537043bcb0328c7623fe7e2f0830b60
|
1af6a1fa35ff7dc0a5c653f19dbc8a91c914aa42 |
|
20-Jun-2014 |
Elena Sayapina <elena.v.sayapina@intel.com> |
ART: Update Monitor::Wait so it releases monitor_lock_ before throwing an exception Thread should release monitor_lock_ Mutex (which guards shared structures behind Java monitor) in Monitor::Wait before throwing any exception. Otherwise the thread may be suspended by GC during that time still holding the lock. This may cause deadlock during GC in case some other thread needs to acquire the monitor_lock_. The other thread can't be suspended by GC then waiting for exclusive lock and "thread suspend timeout" occurs. Change-Id: Id02f45052e1cfc01e676a43434125817564d7874 Signed-off-by: Elena Sayapina <elena.v.sayapina@intel.com>
|
86797a791d692f81def5c1b5f0918992c49ed122 |
|
19-Jun-2014 |
Serban Constantinescu <serban.constantinescu@arm.com> |
AArch64: Add memcmp16() for Arm64; ensure xSELF not clobbered This patch modifies memcmp() to memcmp16(). Please note that this implementation of memcmp16() is based on the bionic's memcmp(). However, to reflect a recent specification change, the file has been modified to respect the new String.compareTo() behavior. A test for memcmp16() has been added. The string_compareto test in stub_test has been changed to invoke __memcmp16 in assembly stubs. Add artIsAssignableFromCode to the list of native downcalls to store and reload x18. Remove CheckSuspendFromCode, as it is unused. Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com> Change-Id: Ie0b5425ecfb62906d29a5d02e84c7e07ffb34a11
|
327e6b49230c2adcb142fe59ea03a6a13cfe346c |
|
27-Jun-2014 |
Brian Carlstrom <bdc@google.com> |
We can no longer use "adb shell sh -c ..." internally Change-Id: I9357ca59f73b79fa56686d221c83e024137eee35
|
4d1231d61862b17bc9dce8ff65c5ada93bdcfb15 |
|
01-Jul-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
The host build has changed from lib32/lib to lib/lib64. Use the correct build variable for library dependency. Change-Id: I2f12d13b595d97b2806eb709613e2cc358f4cad4
|
eb85f2bab0b402094a56276558afbf0e137176eb |
|
25-Jun-2014 |
Brian Carlstrom <bdc@google.com> |
Further refine gtest dependencies. (cherry picked from commit 4ac5c69266a7deab188e65df0e528eadc66e1c06) Change-Id: I3603776efbc697bae21e79f6976afbd21baf150d
|
4ac5c69266a7deab188e65df0e528eadc66e1c06 |
|
25-Jun-2014 |
Brian Carlstrom <bdc@google.com> |
Further refine gtest dependencies. Change-Id: I9af90d2b7f5b499cfe6f8378cf5bac52ea1a7dad
|
d0996831baeeb1daeae1bb1cd77dd041238e46d0 |
|
25-Jun-2014 |
Ian Rogers <irogers@google.com> |
Fix various test dependencies. (cherry picked from commit 665de8a1710d2418f60d3bffdc99bdac32252530) Change-Id: I461b1a963262d48b5caa0e3492b7b923b29755c8
|
665de8a1710d2418f60d3bffdc99bdac32252530 |
|
25-Jun-2014 |
Ian Rogers <irogers@google.com> |
Fix various test dependencies. Change-Id: I2e4761f4cc061f74319a7b64ebe67c553d5297df
|
afd9acc30bdd11cdd12d8209eb994cb371c65e33 |
|
17-Jun-2014 |
Ian Rogers <irogers@google.com> |
Multilib ART host. Build ART for the host as a multilib project with dalvikvm32 and dalvikvm64 running as 32 or 64-bit repsectfully. Note, currently multilib host builds are not the default, you make the so by setting BUILD_HOST_64bit=1. Extend tests to execute in both 32 and 64-bit modes. By default both 32 and 64-bit tests are run, add 32 or 64 to the end of a test name to run it in purely that flavor. Given the extra spam, modify oat tests to only generate console output when the test fails. Change the test harness so that common commands are run when a test should be skipped, when it passes or when it fails. Use these commands to generate a summary of passing, skipped and failing tests. Tests will be skipped if they are known to be broken or if a test has already failed. Setting the variable TEST_ART_KEEP_GOING=true will force working tests not to be skipped. In this change all tests running on the optimizing compiler are marked broken due to breakages running them in a multilib environment. Break apart Android.common.mk into its constituent parts, along with other pieces of reorganization. Stylistic nit, we refer to make rule targets as targets thereby overloading the term target. While consistent with make's terminology, its confusing with the Android notion of target. I've switched to just calling targets rules to avoid confusion in host tests. Change-Id: I5190fc3de46800a949fbb06b3f4c258ca89ccde9
|
532714abd50c547f0fdbe830f811d99e621e2d34 |
|
25-Jun-2014 |
Brian Carlstrom <bdc@google.com> |
Fix test-art-target error Change-Id: If1f800a056b3f95252037163784ab3ae26d9fa6d
|
df10b32c4d0adfa86201169692eaa7ef038b642c |
|
12-Jun-2014 |
Andreas Gampe <agampe@google.com> |
ART: Dex file verifier needs to check proto idx of method id. Bug: 15570490 Change-Id: I4e90aea6e77711ee37d14d96a1fc9a2fbb980d94
|
c5f17732d8144491c642776b6b48c85dfadf4b52 |
|
06-Jun-2014 |
Ian Rogers <irogers@google.com> |
Remove deprecated WITH_HOST_DALVIK. Bug: 13751317 Fix the Mac build: - disable x86 selector removal that causes OS/X 10.9 kernel panics, - madvise don't need does zero memory on the Mac, factor into MemMap routine, - switch to the elf.h in elfutils to avoid Linux kernel dependencies, - we can't rely on exclusive_owner_ being available from other pthread libraries so maintain our own when futexes aren't available (we can't rely on the OS/X 10.8 hack any more), - fix symbol naming in assembly code, - work around C library differences, - disable backtrace in DumpNativeStack to avoid a broken libbacktrace dependency, - disable main thread signal handling logic, - align the stack in stub_test, - use $(HOST_SHLIB_SUFFIX) rather than .so in host make file variables. Not all host tests are passing on the Mac with this change. dex2oat works as does running HelloWorld. Change-Id: I5a232aedfb2028524d49daa6397a8e60f3ee40d3
|
41c507a9dae44b8329a857da3d9810fab2e9ddc6 |
|
15-May-2014 |
Alexei Zavjalov <alexei.zavjalov@intel.com> |
ART: Generalize code to find PC for artInvokeInterfaceTrampoline This allows to determine target method when the interface method has no dex index, now also for X86-64 and ARM64. Add constexpr functions to callee_save_frame.h to have compile-time sizes of callee-save frames. Add a test that ensures they agree with computations by the corresponding ArtMethod methods. Move some instruction-set functions into the header file to allow inlining them. Move arch-specific pointer sizes and alignment sizes out of globals.h to instruction_set.h to reduce dependencies. Change-Id: I2997592c7dd1f4dd2bd497522c64bd235ae615a6 Signed-off-by: Alexei Zavjalov <alexei.zavjalov@intel.com>
|
d1c606f280797be81e2592c483869a6ec836a9f3 |
|
09-Jun-2014 |
Narayan Kamath <narayan@google.com> |
Add locking around boot image generation. If zygote aborts due to an error, it will restart and spawn another dex2oat process while the old one is still running. If this happens fast enough, the system will eventually need a kernel reboot since neither the zygote nor dex2oat are killable. This brings boot image generation in line with dex2oat generation, which uses a similar pattern of advisory locking. bug: 15415316 Change-Id: Iaccd274d3d96ab002b04e246ec4b3ef9a422ff7c
|
ec7e4727e99aa1416398ac5a684f5024817a25c7 |
|
06-Jun-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Fix some bugs in graph construction/simplification methods. Also fix a brano during SSA construction. The code should not have been commented out. Added a test to cover what the code intends. Change-Id: Ia00ae79dcf75eb0d412f07649d73e7f94dbfb6f0
|
dadc7dcc06057bcebfb118e5fe352c3ff5a95dd9 |
|
05-Jun-2014 |
Dave Allison <dallison@google.com> |
Disable thumb assembler test to fix art build Having difficulty getting this to run on the build server. Disable until I can figure out how to do it. Change-Id: I4f356fd1168b213b770426adc34bf62b8fb56b8f
|
65fcc2cf3c5cd97b84330c094908f3a6a7a8d4e7 |
|
28-Apr-2014 |
Dave Allison <dallison@google.com> |
Thumb2 assembler for JNI compiler and optimizing compiler This provides a programmatic assembler for the thumb2 instruction set for ARM. The interface is the same as the ARM assembler and the ARM assembler has been moved into Arm32Assembler. The assembler handles most 16 and 32 bit instructions and also allows relocations due to branch expansion. It will also rewrite cbz/cbnz instructions if they go out of range. It also changes the JNI compiler to use the thumb2 assembler as opposed to forcing it to use ARM32. The trampoline compiler still uses ARM due to the way it returns the address of its generated code. A trampoline in thumb2 is the same size as that in ARM anyway (8 bytes). Provides gtest for testing the thumb2 instruction output. This gtest only runs on the host as it uses arm-eabi-objdump to disassemble the generated code. On the target the output is not checked but the assembler will still be run to perform all its checks. Change-Id: Icd9742b6f13541bec5b23097896727392e3a6fb6
|
4352b4556c138eb9f583367d678531930b5b8fb0 |
|
05-Jun-2014 |
Andreas Gampe <agampe@google.com> |
ART: Add a test checking TLS offsets and entrypoints Add a test (runtime for now, as compile-time checks seem not possible with current infrastructure) that checks the structure of the thread tls and entrypoint structs. A failure of the test indicates a structural change, which hints at a necessary oat version bump. Change-Id: I500b5cd940c916ebfc1580e9dd2c287c4d263956
|
5ca4eaace8ba513f97309bbdc2e156de4b1d648a |
|
29-May-2014 |
Andreas Gampe <agampe@google.com> |
ART: Make LOCAL_CLANG architecture dependent for the target Be selective for which target we compile with Clang. Currently we only want to compile with Clang for ARM64, which means we need to be careful about ARM, which is the second architecture for that. Bug: 15014252 (cherry picked from commit 9689e3768621130b2536564f4e00fcb6b3d25df4) Change-Id: I312e1caea08f2f3a20304b27f979d3c7b72b0a04
|
ffddfdf6fec0b9d98a692e27242eecb15af5ead2 |
|
03-Jun-2014 |
Tim Murray <timmurray@google.com> |
DO NOT MERGE Merge ART from AOSP to lmp-preview-dev. Change-Id: I0f578733a4b8756fd780d4a052ad69b746f687a9
|
9689e3768621130b2536564f4e00fcb6b3d25df4 |
|
29-May-2014 |
Andreas Gampe <agampe@google.com> |
ART: Make LOCAL_CLANG architecture dependent for the target Be selective for which target we compile with Clang. Currently we only want to compile with Clang for ARM64, which means we need to be careful about ARM, which is the second architecture for that. Bug: 15014252 Change-Id: I239591f65eab537deac39a25bd20530dce5c4786
|
a7062e05e6048c7f817d784a5b94e3122e25b1ec |
|
22-May-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add a linear scan register allocator to the optimizing compiler. This is a "by-the-book" implementation. It currently only deals with allocating registers, with no hint optimizations. The changes remaining to make it functional are: - Allocate spill slots. - Resolution and placements of Move instructions. - Connect it to the code generator. Change-Id: Ie0b2f6ba1b98da85425be721ce4afecd6b4012a4
|
4e3d23aa1523718ea1fdf3a32516d2f9d81e84fe |
|
22-May-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Import Dart's parallel move resolver. And write a few tests while at it. A parallel move resolver will be needed for performing multiple moves that are conceptually parallel, for example moves at a block exit that branches to a block with phi nodes. Change-Id: Ib95b247b4fc3f2c2fcab3b8c8d032abbd6104cd7
|
2a0e954ecf7c60e6ec62d64b9382cc4ee447e224 |
|
21-May-2014 |
Dan Albert <danalbert@google.com> |
Move art host to libc++ Change-Id: Ia51a4fdfdbae7377130a43c401c2d8d241671d1e
|
700a402244a1a423da4f3ba8032459f4b65fa18f |
|
20-May-2014 |
Ian Rogers <irogers@google.com> |
Now we have a proper C++ library, use std::unique_ptr. Also remove the Android.libcxx.mk and other bits of stlport compatibility mechanics. Change-Id: Icdf7188ba3c79cdf5617672c1cfd0a68ae596a61
|
ba0c51fd282c4f47b95230c5444e76f342900cfa |
|
16-May-2014 |
Ian Rogers <irogers@google.com> |
Switch ART to libc++. TODO: remove all vestiges of stlport. Change-Id: I95a3cb0b53d0898f0a5d388b606e79522f4d85e0
|
ddb311fdeca82ca628fed694c4702f463b5c4927 |
|
16-May-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Build live ranges in preparation for register allocation. Change-Id: I7ae24afaa4e49276136bf34f4ba7d62db7f28c01
|
0e12bdc49744eb6d5c29b9611a8dbe10bac4cd53 |
|
15-May-2014 |
Brian Carlstrom <bdc@google.com> |
Add ISA directory to image and odex pathnames. Bug: 14882223 Bug: 14694978 Change-Id: Ic1b5ae836b8e91ea461dcd4f3da8e38dc3bec00f
|
ec245a42e04adbde15b75d8123287c54fd9fa7b3 |
|
16-May-2014 |
Tsu Chiang Chuang <tsu@google.com> |
add make target variables for gtests Change-Id: I109dca4ffdb35484cdee49751cb5bb3be10dcb60
|
0d3f578909d0d1ea072ca68d78301b6fb7a44451 |
|
14-May-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Linearize the graph before creating live ranges. Change-Id: I02eb5671e3304ab062286131745c1366448aff58
|
eb8167a4f4d27fce0530f6724ab8032610cd146b |
|
08-May-2014 |
Mathieu Chartier <mathieuc@google.com> |
Add Handle/HandleScope and delete SirtRef. Delete SirtRef and replaced it with Handle. Handles are value types which wrap around StackReference*. Renamed StackIndirectReferenceTable to HandleScope. Added a scoped handle wrapper which wraps around an Object** and restores it in its destructor. Renamed Handle::get -> Get. Bug: 8473721 Change-Id: Idbfebd4f35af629f0f43931b7c5184b334822c7a
|
622d9c31febd950255b36a48b47e1f630197c5fe |
|
12-May-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add loop recognition and CFG simplifications in new compiler. We do three simplifications: - Split critical edges, for code generation from SSA (new). - Ensure one back edge per loop, to simplify loop recognition (new). - Ensure only one pre header for a loop, to simplify SSA creation (existing). Change-Id: I9bfccd4b236a00486a261078627b091c8a68be33
|
804d09372cc3d80d537da1489da4a45e0e19aa5d |
|
02-May-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Build live-in, live-out and kill sets for each block. This information will be used when computing live ranges of instructions. Change-Id: I345ee833c1ccb4a8e725c7976453f6d58d350d74
|
11d9f06a96a6909905c248ed684366190140095c |
|
23-Apr-2014 |
Narayan Kamath <narayan@google.com> |
Use instruction specific dalvik cache dirs. - All oat & art files are now placed under /data/dalvik-cache/<isa>/. - GetDalvikCacheOrDie now requires a mandatory subdirectory argument, and is implicitly rooted under /data/. - Added helper methods to convert InstructionSet enums into strings and vice versa. (cherry picked from commit 2974bc3d8a5d161d449dd66826d668d87bdc3cbe) Change-Id: Ic7986938e6a7091a2af675ebafec768f7b5fb8cd
|
5a4fa82ab42af6e728a60e3261963aa243c3e2cd |
|
01-Apr-2014 |
Andreas Gampe <agampe@google.com> |
x86_64 Assembler Test Infrastructure, fix x86_64 assembler Some infrastructure to do real assembler testing. Need to extend to other assemblers, and a lot more tests. Fix some of the cases of the x86_64 assembler. Change-Id: I15b5f3a094af469130db68a95a66602cf30d8fc4
|
2974bc3d8a5d161d449dd66826d668d87bdc3cbe |
|
23-Apr-2014 |
Narayan Kamath <narayan@google.com> |
Use instruction specific dalvik cache dirs. - All oat & art files are now placed under /data/dalvik-cache/<isa>/. - GetDalvikCacheOrDie now requires a mandatory subdirectory argument, and is implicitly rooted under /data/. - Added helper methods to convert InstructionSet enums into strings and vice versa. Change-Id: I9bff2e2ca534e0b93842a50d5b272ddf6d5745f3
|
c32e770f21540e4e9eda6dc7f770e745d33f1b9f |
|
24-Apr-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add a Transform to SSA phase to the optimizing compiler. Change-Id: Ia9700756a0396d797a00b529896487d52c989329
|
5c1e4352614d61fed6868567e58b96682828cb4d |
|
22-Apr-2014 |
Andreas Gampe <agampe@google.com> |
Add "arch_test" gtest for assembly stub constants, add some ARM64 assembly code Add a test that (1) checks all callee-save method frame sizes for all architectures, (2) checks thread offsets for the runtime architecture and (3) checks callee-save method offsets for the runtime architecture. The "asm_support_XXX.h" files now only contain definitions that are common between all architectures. Architecture-specific definitions (i.e., special registers names) have been pushed into the corresponding .S file. This change was required to be able to undefine definitions in the test, so that multiple tests can be written in one file. Test (1) above is in a sense two-stage. The arch_test gtest compares constants (if it finds them) against the frame size as reported by the ArtMethods created by the Runtime. This works for all architectures as we can provide the instruction-set to CreateCalleeSaveMethod. The second stage of the "test" are preprocessor tests with "#error" in the case that the constants are not the expected value. Optimally I'd like to change that to an actual runtime test exercising the assembly code, which would also allow to check whether the right registers are stored. Also added missing assembly code for ARM64 for the callee-save macros. Also fix X86_64 compilation for Clang 3.5. Change-Id: I018e6433dffd3d31ba3bfcd75661653f4c7b6552
|
525cde2dd7cc7ad4212765ad3975cf260a934d3e |
|
23-Apr-2014 |
Andreas Gampe <agampe@google.com> |
Add a GTest for Assembly Stubs, Add some ARM64 and X86-64 Stubs This GTest adds some runtime testing for the stubs that does not rely on the compiler. This should allow to add or update the stubs and do testing, especially on architectures without working compiler. This test is a bit dangerous: if it doesn't know how to handle an architecture, it will only log a warning. This is so that testing does not break at the moment. The warning is forced to stdout, too, so that it is always visible. Add art_quick_check_cast to ARM64 and X86-64. Add art_quick_memcpy to X86-64. The latter should be removed in a good compiler, as it is practically only overhead. Add minor CFI information in ARM. Change-Id: Ia9c6d0f4035eb1527c12b5f6067dece59e25528d
|
2fe07927610177e9b83809e5bdb6d2b3d835a076 |
|
21-Apr-2014 |
Andreas Gampe <agampe@google.com> |
Fix dependencies in the test suite for multi-target tests Change-Id: I94dd767490a7cd8cceddc158d90f56f5bd3fef26
|
bd5ea6a2f7c61c4cd7b66fead1bedd96e938369d |
|
17-Apr-2014 |
Ian Rogers <irogers@google.com> |
Preparation for transition to libc++. Move the dependency on libc++ to its own makefile so that we can switch in a single place between libc++ and stlport. Change-Id: Ie61e7d054dcd049e36d5e7298c27d8a4abe6edf7
|
01bc96d007b67fdb7fe349232a83e4b354ce3d08 |
|
11-Apr-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Long support in optimizing compiler. - Add stack locations to the Location class. - Change logic of parameter passing/setup by setting the location of such instructions the ones for the calling convention. Change-Id: I4730ad58732813dcb9c238f44f55dfc0baa18799
|
135016a1feee5576014f377e8006057837ee73a2 |
|
03-Apr-2014 |
Dmitry Petrochenko <dmitry.petrochenko@intel.com> |
art: Use SIRT::GetAlignedSirtSizeTarget in calling convention Calculate frame size based on SIRT::GetAlignedSirtSizeTarget existing method. Make offset functions pointer-size-dependent for cross-compiling. Add a test to check whether our computations are correct. Change-Id: Ic66daf6f9908890eda906bdcbbc4444c4fef614f Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
|
15523731549152276f23dcf94d81b1a9ce9c5038 |
|
02-Apr-2014 |
Serban Constantinescu <serban.constantinescu@arm.com> |
AArch64: Fix Managed Register unit tests Fixes the XZR change introduced by one of the previous patches. It also adds extra testing for VIXL register integration. Change-Id: I4935f06726e25829613ef7bb6ac052d82056812c Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
|
afbaa1aab02cfe519d00336870b1bcd24b61378d |
|
26-Mar-2014 |
Andreas Gampe <agampe@google.com> |
Build changes to build multilib tests Test files will be emitted into directories for both first and second target architectures. Going with the naming scheme for binaries, single-architecture and 32b cases have the standard name, and 64b goes into a directory with "64" suffix. In multi-architecture setups, the default concrete test targets are extended with a "32" and "64" suffix, e.g., test-art-target-oat-JniTest64. The suffix-less form is linked to the primary architecture target (usually 64). That means running combined targets, e.g., test-art-target-oat, will only test the primary architecture right now. Fixed target run tests calling the right dalvikvm. Fixed library search path for tests derived from CommonRuntimeTest. Missing in this work-in-progress is correct handling of dex2oat for the secondary architecture. To make it work on 64b, comment out line 101 in build/Android.executable.mk Change-Id: I3d260994e6efe8b73b56c71994053cc9392943a9
|
cae10f73bdad63774a3a8bc67d568b131f9bd591 |
|
01-Apr-2014 |
Andrew Hsieh <andrewhsieh@google.com> |
Add -lpthread -ldl to link executable/tests The new binutils-2.23 based linker in prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6 no longer implicity adds dependencies on *so an executable needs. eg. ld -o barrier_test barrier_test.o common_runtime_test.o ... -lartd produces error messages read art/runtime/thread-inl.h:43: error: undefined reference to 'pthread_getspecific' art/runtime/common_runtime_test.h:219: error: undefined reference to 'dlsym' external/gtest/src/../include/gtest/internal/gtest-port.h:1482: error: undefined reference to 'pthread_getspecific' because libartd.so DT_NEEDED libdl.so and libpthread.so, and new linker no longer implicitly add both to dependencies. Explicitly add -lpthread -ldl to fix the issue Change-Id: Ic29c68480b2ed55d282be949640b9158411f213d
|
7f2e3da1052132854dcace88af75e2f5c067295d |
|
26-Mar-2014 |
Brian Carlstrom <bdc@google.com> |
Fix host gtests compiled with gcc (cherry picked from commit d016e1fab648093706f85cc78b63da0f3f487733) Change-Id: I5d2b8061278fd5a477ec87395fca435a3da801a3
|
d016e1fab648093706f85cc78b63da0f3f487733 |
|
26-Mar-2014 |
Brian Carlstrom <bdc@google.com> |
Fix host gtests compiled with gcc Change-Id: I39bd2a47d15227c82598811d288bf548ea10b194
|
0ab4461e0cfa4ccb0acd8db25b764ba8fd78289b |
|
20-Mar-2014 |
Tim Murray <timmurray@google.com> |
Fix missing link line for libgtest_host. bug 13435344 Change-Id: If4197ddb97b235c731e4c771968eae46483d55b3
|
bfea9c29e809e04bde4a46591fea64c5a7b922fb |
|
17-Jan-2014 |
Vladimir Marko <vmarko@google.com> |
Class initialization check elimination. Also, move null check elimination temporaries to the ScopedArenaAllocator and reuse the same variables in the class initialization check elimination. Change-Id: Ic746f95427065506fa6016d4931e4cb8b34937af
|
53b8b09fc80329539585dcf43657bc5f4ecefdff |
|
14-Mar-2014 |
Ian Rogers <irogers@google.com> |
Refactor reflective method invocation. Move invocation code out of JNI internal into reflection, including ArgArray code. Make reflective invocation use the ArgArray to build arguments rather than allocating a jvalue[] and unboxing arguments into that. Move reflection part of jni_internal_test into reflection_test. Make greater use of fast JNI. Change-Id: Ib381372df5f9a83679e30e7275de24fa0e6b1057
|
b7054baf28d4d652fbd98a94b089344a31898d53 |
|
13-Mar-2014 |
Sebastien Hertz <shertz@google.com> |
Fix debugger crashes in presence of proxy objects. Fix ClassHelper::NumDirectInterfaces to use IfTable::Count instead of the iftable array's length (which is twice the interface count). This happens when processing ReferenceType::Interfaces command and was causing a crash. Return ABSENT_INFORMATION error code when we're asked for the source file of a proxy class. Otherwise we call ClassHelper::GetSourceFile which expect the class has a corresponding ClassDef item in the DEX file which is not true for proxy classes. Add new proxy_test to check ClassHelper works correctly with proxy classes. Bug: 13426918 Change-Id: I5c1212b1a697dd7dc1ab18e99552ee113c533a5a
|
e0dcd46314d07eeb332edea292f5110178e4e3d2 |
|
09-Mar-2014 |
Ian Rogers <irogers@google.com> |
JNI down call fixes. Ensure SIRT isn't accessed via quick callee save frame. Some tidying of code. Change-Id: I8fec3e89aa6d2e86789c60a07550db2e92478ca7
|
ed8dd492e43cbaaa435c4892447072c84dbaf2dc |
|
11-Feb-2014 |
Serban Constantinescu <serban.constantinescu@arm.com> |
AArch64: Add ARM64 Assembler This patch adds the ARM64 Assembler and ManagedRegister backend. The implementation of the Arm64Assembler class is based on VIXL (a programmatic A64 Assembler - see external/vixl ). Change-Id: I842fd574637a953c19631eedf26f6c70d9ed7f9e Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
|
d4dd255db1d110ceb5551f6d95ff31fb57420994 |
|
28-Feb-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add codegen support to the optimizing compiler. Change-Id: I9aae76908ff1d6e64fb71a6718fc1426b67a5c28
|
491ca9e75fad381468dd7f5fdbff56d1a9738dd7 |
|
03-Mar-2014 |
Brian Carlstrom <bdc@google.com> |
Add ART -help and -showversion Bug: https://code.google.com/p/android/issues/detail?id=62149 Change-Id: I5c21c0433f5f341f94e7d977e8d2d69cc46d6fe3
|
24651ecef33eac8ea155ce36681ca7331340547a |
|
27-Feb-2014 |
Andreas Gampe <agampe@google.com> |
Further split of the space tests Split the random-size allocations from the static-size allocation tests Have all tests have distinguished names Bug: 13117676 Change-Id: I40130b04d11715b9bd1d1ea8d76720f83af6ba82
|
b48b9eb6d181a1f52e2e605cf26a21505f1d46ed |
|
01-Mar-2014 |
Ian Rogers <irogers@google.com> |
Fix clang to compile and run host tests. Don't use the computed goto interpreter with clang 3.4 as it causes compilation to hang. Avoid inclusion of LLVM_(HOST|DEVICE)_BUILD_MK except for with portable as it sets clang incompatible cflags. Most fixes are self-evident, for the quick dex file method inliner the enums were being used with ostreams, so fix the enums and operator out python script to allow this. Note this change effects portable but this is untestable as portable was broken by ELF file and mc linker changes. Change-Id: Ia54348f6b1bd3f76d3b71c6e8c5f97626386b903
|
a1ce1fef2d49d1d537776a5308ace7102a815fe5 |
|
25-Feb-2014 |
Brian Carlstrom <bdc@google.com> |
Split up CommonTest into CommonRuntimeTest and CommonCompilerTest Change-Id: I8dcf6b29a5aecd445f1a3ddb06386cf81dbc9c70
|
be9a92aa804c0d210f80966b74ef8ed3987f335a |
|
25-Feb-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add conditional branches, and build dominator tree. Change-Id: I4b151a07b72692961235a1419b54b6b45cf54e63
|
a7433515114ae725c3427cd510f76b84107170a1 |
|
21-Feb-2014 |
Andreas Gampe <agampe@google.com> |
Split space_test into separate checks Split space_test by space type: dlmalloc, rosalloc and large object space to facilitate parallelized testing. Bug: 13117676 Change-Id: I152dc03717c26dfcf14e93ba2b39f83612a5f560
|
f59f18b2bd5432bb083205680c69fe64aaf60f39 |
|
17-Feb-2014 |
Vladimir Marko <vmarko@google.com> |
Fix and rewrite local value numbering. Fix memory versioning to take aliasing and method calls into account. Use more instructions for the null check elimination. Return the local value name of the register defined by the instruction if applicable. Change-Id: I4560bc680ae1ad553a7a00fa092c937e3da9fbbe
|
818f2107e6d2d9e80faac8ae8c92faffa83cbd11 |
|
18-Feb-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Re-apply: Initial check-in of an optimizing compiler. The classes and the names are very much inspired by V8/Dart. It currently only supports the RETURN_VOID dex instruction, and there is a pretty printer to check if the building of the graph is correct. Change-Id: I28e125dfee86ae6ec9b3fec6aa1859523b92a893
|
1af0c0b88a956813eb0ad282664cedc391e2938f |
|
19-Feb-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Initial check-in of an optimizing compiler." g++ warnings turned into errors. This reverts commit 68a5fefa90f03fdf5a238ac85c9439c6b03eae96. Change-Id: I09bb95d9cc13764ca8a266c41af04801a34b9fd0
|
68a5fefa90f03fdf5a238ac85c9439c6b03eae96 |
|
18-Feb-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Initial check-in of an optimizing compiler. The classes and the names are very much inspired by V8/Dart. It currently only supports the RETURN_VOID dex instruction, and there is a pretty printer to check if the building of the graph is correct. Change-Id: Id5ef1b317ab997010d4e3888e456c26bef1ab9c0
|
dc781a13ddb4dabf646bb45d0c53b65cab948e5b |
|
05-Feb-2014 |
Colin Cross <ccross@android.com> |
art: convert makefiles to support multilib build Convert makefiles to allow for building two architectures at the same time. More changes may be necessary to get the tests to build. Change-Id: I02ba11706b7e5b5592d76e43c167bcbf0e665b93
|
d2fe10a3a34af171bf1631219cd2d6ff6b7778b5 |
|
15-Jan-2014 |
Sebastien Hertz <shertz@google.com> |
Remove blacklist Removes the class initialization blacklist and use transaction to detect and revert class initialization attempting to invoke native method. This only concerns class initialization happening at compilation time when generating an image (like boot.art for the system). In transactional mode, we log every object's field assignment and array update. Therefore we're able to abort a transaction to restore values of fields and array as they were before the transaction starts. We also log changes to the intern string table so we can restore its state prior to transaction start. Since transactional mode only happens at compilation time, we don't need to log all these changes at runtime. In order to reduce the overhead of testing if transactional mode is on/off, we templatize interfaces of mirror::Object and mirror::Array, respectively responsible for setting a field and setting an array element. For various reasons, we skip some specific fields from transaction: - Object's class and array's length must remain unchanged so garbage collector can compute object's size. - Immutable fields only set during class loading: list of fields, method, dex caches, vtables, ... as all classes have been loaded and verified before a transaction occurs. - Object's monitor for performance reason. Before generating the image, we browse the heap to collect objects that need to be written into it. Since the heap may still holds references to unreachable objects due to aborted transactions, we trigger one collection at the end of the class preinitialization phase. Since the transaction is held by the runtime and all compilation threads share the same runtime, we need to ensure only one compilation thread has exclusive access to the runtime. To workaround this issue, we force class initialization phase to run with only one thread. Note this is only done when generating image so application compilation is not impacted. This issue will be addressed in a separate CL. Bug: 9676614 Change-Id: I221910a9183a5ba6c2b99a277f5a5a68bc69b5f9
|
43b2e0f9105848da6470458e7c04bf1fd7fcb25c |
|
31-Jan-2014 |
Ian Rogers <irogers@google.com> |
Fix multi-line hex dumping and add unit test. Change-Id: I7657018fef5d9c17410a9a634db275555f180014
|
500793f33b8af8bc7ccf5595a66b4b13bce766bc |
|
15-Nov-2013 |
Ian Rogers <irogers@google.com> |
LEB128 tests and performance measurements. Change-Id: I1850a2ff9225cfab8f896619c212b1b55f03ae94
|
86aed2a0b7972bf5a5f564d710e7b270589bbddc |
|
14-Nov-2013 |
Ian Rogers <irogers@google.com> |
Fix testing all valgrind tests and make errors abort. Change-Id: I6185e26cf89fde6fc8642fd4f7c5285a6f33f835
|
d912e5c36f952db8ff027d67979724fe0e56b35a |
|
13-Nov-2013 |
Ian Rogers <irogers@google.com> |
Allow host valgrind gtests to be run individually. Change-Id: I80976600034046cb42e8565bfd38f75811d7a08e
|
1bd2ceb3a8c68ae6ea1f9627b588a7bc7a74487f |
|
06-Nov-2013 |
Brian Carlstrom <bdc@google.com> |
Make missing DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES an error Change-Id: I3ca23e4db80c8ab8a86da6408cf38daccd4cfaf1
|
7020278bce98a0735dc6abcbd33bdf1ed2634f1d |
|
23-Oct-2013 |
Dave Allison <dallison@google.com> |
Support hardware divide instruction Bug: 11299025 Uses sdiv for division and a combo of sdiv, mul and sub for modulus. Only does this on processors that are capable of the sdiv instruction, as determined by the build system. Also provides a command line arg --instruction-set-features= to allow cross compilation. Makefile adds the --instruction-set-features= arg to build-time dex2oat runs and defaults it to something obtained from the target architecture. Provides a GetInstructionSetFeatures() function on CompilerDriver that can be queried for various features. The only feature supported right now is hasDivideInstruction(). Also adds a few more instructions to the ARM disassembler b/11535253 is an addition to this CL to be done later. Change-Id: Ia8aaf801fd94bc71e476902749cf20f74eba9f68
|
ba150c37d582eeeb8c11ba5245edc281cf31793c |
|
28-Aug-2013 |
Brian Carlstrom <bdc@google.com> |
Omit OatMethodOffsets for classes without compiled code Change-Id: If0d290f4aebc778ff12d8fed017c270ad2ac3220
|
413e89f277ec6ba1bdf2040f5b5611f29a27a447 |
|
22-Oct-2013 |
Brian Carlstrom <bdc@google.com> |
Refactor ArenaBitVector to create more general BitVector Change-Id: Ib26f2884de9ce7d620048bdf5ed6dec639622e41
|
193bad9b9cfd10642043fa2ebbfc68bd5f9ede4b |
|
30-Aug-2013 |
Mathieu Chartier <mathieuc@google.com> |
Multi threaded hashed deduplication during compilation. Moved deduplication to be in the compiler driver instead of oat writer. This enables deduplication to be performed on multiple threads. Also added a hash function to avoid excessive comparison of byte arrays. Improvements: Before (alloats host): real 1m6.967s user 4m22.940s sys 1m22.610s Thinkfree.apk (target mako): 0m23.74s real 0m50.95s user 0m9.50s system 0m24.62s real 0m50.61s user 0m10.07s system 0m24.22s real 0m51.44s user 0m10.09s system 0m23.70s real 0m51.05s user 0m9.97s system 0m23.50s real 0m50.74s user 0m10.63s system After (alloats host): real 1m5.705s user 4m44.030s sys 1m29.990s Thinkfree.apk (target mako): 0m23.32s real 0m51.38s user 0m10.00s system 0m23.49s real 0m51.20s user 0m9.80s system 0m23.18s real 0m50.80s user 0m9.77s system 0m23.52s real 0m51.22s user 0m10.02s system 0m23.50s real 0m51.55s user 0m9.46s system Bug: 10552630 Change-Id: Ia6d06a747b86b0bfc4473b3cd68f8ce1a1c7eb22
|
0e480cad5d2cf0904b98b7b56e90280e9b97ba30 |
|
16-Aug-2013 |
Ian Rogers <irogers@google.com> |
Move output_stream files out of runtime. Also move image_test and oat_test that are more writing tests. Change-Id: I6af1400d8e745bbf87f626ca87dae3e2d85b40f1
|
4446ab9e70dde779d97f451c4904f6b8770232bd |
|
10-Aug-2013 |
Anwar Ghuloum <anwarg@google.com> |
Systrace fixups and refactoring for TimingLogger Fixed systrace bounds for timing logger in GC. Refactored CumulativeLogger a bit to allow for multiple identical entries. Added ScopedSplit, now composes with explicit start/end/new splits. Adds some unit tests. Bug: 10036801 Change-Id: If0afb88b48ec3a1e19462ed354babb274a9517a7
|
597e46bf300244a45d1e214c618e89250b39912b |
|
08-Aug-2013 |
Dragos Sbirlea <dragoss@google.com> |
Added tests for SEA IR intermediate representation. Change-Id: Ibc55fc3d1f6f753381a9d508d250944c2c45531d
|
423fb4d70f2ac36bf9f630146b4150771a8e7e76 |
|
06-Aug-2013 |
Dragos Sbirlea <dragoss@google.com> |
Add tests for SEA IR types infrastructure. type_data_test.cc: Tests the type store used to record info on the types of results from instructions. type_inferecen_visitor_test.cc: Tests type merging and related operations. Android.gtest.mk: Included new tests. type_inference_visitor.h/.cc: Marked function as const and made public. scoped_hashtable_test.cc: Included full header path in #include. Change-Id: I868461dcaed1e7f75db15958b83a3db7e17f6a64
|
834b394ee759ed31c5371d8093d7cd8cd90014a8 |
|
31-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Merge remote-tracking branch 'goog/dalvik-dev' into merge-art-to-dalvik-dev Change-Id: I323e9e8c29c3e39d50d9aba93121b26266c52a46
|
025218c7e4330a4942b14f9a8f1f68bd3390261c |
|
31-Jul-2013 |
Elliott Hughes <enh@google.com> |
Clean up stlport usage. Change-Id: I133cd88f1da37f6f801a9e07a78ae23b671cf4f1
|
7655f29fabc0a12765de828914a18314382e5a35 |
|
29-Jul-2013 |
Ian Rogers <irogers@google.com> |
Portable refactorings. Separate quick from portable entrypoints. Move architectural dependencies into arch. Change-Id: I9adbc0a9782e2959fdc3308215f01e3107632b7c
|
9004cb6591781d1e6c5ec6d7bc6dc99d9ecee124 |
|
27-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Allow MemMap to support empty map requests Discovered trying to use ZipEntry::ExtractToMemMap on an empty preloaded-classes. Bug: 8659045 Change-Id: Icfbbe6b313e2d1ee708b44a8d8d354d6203fd669
|
166db04e259ca51838c311891598664deeed85ad |
|
26-Jul-2013 |
Ian Rogers <irogers@google.com> |
Move assembler out of runtime into compiler/utils. Other directory layout bits of clean up. There is still work to separate quick and portable in some files (e.g. argument visitor, proxy..). Change-Id: If8fecffda8ba5c4c47a035f0c622c538c6b58351
|
19e776ceb178397661b0323a9a982f6db249a56d |
|
23-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Enable darwin target build for art. Change-Id: I8fc04258360d663d2fcd07c307fdfdd2981cdd19
|
17bfe263d8a37aa4da4c5088e4245dedaebc3ff8 |
|
17-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Use LOCAL_REQUIRED_MODULES instead of LOCAL_ADDITIONAL_DEPENDENCIES so we only relink the tests on libart changes but do not recompile them. Change-Id: I47d7cdaa51749970eccac8528b032448a26b6e91
|
0cb7853dec0ccc99c5d21f6b591b315710a15922 |
|
17-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Fix typo in makefile Change-Id: I462df0f268472460171c355d322eafc58a46a522
|
3795f2517f47702764f372086367c47d4cd776d9 |
|
15-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Use non-PHONY dependency to avoid rebuilding art gtests repeatedly. Change-Id: I675552b68c3375204eb9ef356ce80aa9615f4ccf
|
4478eb0a14a154fbdbaeef075dce8a5f8a33b25c |
|
15-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Include dex2oatd along with libart and libartd-compiler Change-Id: I154fccef2667d640141f9fc484697d5cf6531608
|
58cc497e7382d4eeb6d39bcc98d222689909ba39 |
|
13-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Move ScopedHashtable files out of art/src Change-Id: If854ee34dc81abb81bc7e021bc59c7b151cd6ab5
|
7940e44f4517de5e2634a7e07d58d0fb26160513 |
|
12-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Create separate Android.mk for main build targets The runtime, compiler, dex2oat, and oatdump now are in seperate trees to prevent dependency creep. They can now be individually built without rebuilding the rest of the art projects. dalvikvm and jdwpspy were already this way. Builds in the art directory should behave as before, building everything including tests. Change-Id: Ic6b1151e5ed0f823c3dd301afd2b13eb2d8feb81
|
8cc5162f19d64eb6414e7e421cea4413debe671e |
|
21-Jun-2013 |
Dragos Sbirlea <dragoss@google.com> |
Semi-pruned SSA support for sea-ir. Added the following: Per file: sea_ir/sea.*: IDominator pass, dominance frontiers, global variables for ssa transformation, phi-function insertion pass, SSA renaming pass. sea_ir/instruction_tools.*: These tools provide info needed by dataflow analysis that is dependent on dex format. compiler/utils/scoped_hashtable.h: Scoped hashtable implementation that allows fast SSA renaming. src/compiler/utils/scoped_hashtable_test.cc: Test for scoped_hashtable.h. dex_instruction.cc: Changed semantics of the VRegA,B,C function to return NO_REGISTER instead of aborting if the instruction does not have register operands. Android.common.mk: Added support for scoped_hashtable test. Change-Id: I990fe4c213d241a033e43a04a67c6083fca4b347
|
51c2467e8771b56e25ae4f17f66522f979f57a7e |
|
12-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
libart-compiler cleanup - Move compile-time code to src/compiler and libart-compiler OatWriter, ImageWriter, ElfWriter, ElfFixup, ElfStripper, stub generation - Move ClassReference and MethodReference to remove MethodVerifier dependency on CompilerDriver - Move runtime_support_llvm.cc out of src/compiler and next to runtime_support.cc - Change dex2oat and gtests to directly depend on libart-compiler - Move non-common definitions from Android.common.mk to more specific makefiles - Add LOCAL_ADDITIONAL_DEPENDENCIES on appropriate makefiles Change-Id: I897027e69945914128f21f317a92caf9255bc600
|
cd5d0422ac07b03220970a3606f8b402a3636528 |
|
18-May-2013 |
Ian Rogers <irogers@google.com> |
Clang build support, -Wthread-safety with GCC 4.6. Change-Id: Idccb4daa012c66a6ece3f7a037c9c2c029beba64
|
52e55cbc6d18694556176b58ef79b5ae52c8039c |
|
22-Mar-2013 |
Brian Carlstrom <bdc@google.com> |
Remove gcc-based tsan support Change-Id: I145331e295f69e99408e03cb59df26fb337510f5
|
c928de90ad22ecdf83c18a07008409595f13d3b1 |
|
27-Feb-2013 |
Ian Rogers <irogers@google.com> |
Remove Iceland. ART_USE_LLVM_COMPILER is removed and when necessary ART_USE_PORTABLE_COMPILER is used in #ifdefs. Change-Id: Iffa9ce5b0246c7c427ccc4e67ecc134624632e55
|
700c8d31733534a3d978b75a03f6f7e177dc7e81 |
|
05-Nov-2012 |
Brian Carlstrom <bdc@google.com> |
Move .oat files to ELF format Generates .oat in ELF file format using MCLinker - Uses MCLinker IRBuilder to create a synthetic .o from OatWriter output. - Uses new ElfFile for prelinking to support art image optimizations. Adapted OatFile to load using dlopen, ElfFile, or memory, removing raw MemMap mechanism. Changed image code to not assume oat data will be immediately after image to allow space for ELF headers. Passes test-art and works with installd. Change-Id: Idc026eddb5de93f4b97490c405f3ed7b39589749
|
0e4627e593bc39f8e3d89c31f8977d55054c07cc |
|
24-Oct-2012 |
Mathieu Chartier <mathieuc@google.com> |
Add thread pool class Added a thread pool class loosely based on google3 code. Modified the compiler to have a single thread pool instead of creating new threads in ForAll. Moved barrier to be in top level directory as it is not GC specific code. Performance Timings: Reference: boot.oat: 14.306596s time mm oat-target: real 2m33.748s user 10m23.190s sys 5m54.140s Thread pool: boot.oat: 13.111049s time mm oat-target: real 2m29.372s user 10m3.130s sys 5m46.290s The speed increase is probably just noise. Change-Id: If3c1280cbaa4c7e4361127d064ac744ea12cdf49
|
c531cefbfb5394413122e9f57d211ba436cff012 |
|
18-Oct-2012 |
buzbee <buzbee@google.com> |
Eliminate #ifdef ART_USE_QUICK_COMPILER One of several steps towards having a single compiler build. In this CL, we introduce a compiler_backend command-line option to select between Quick, Quick w/ GBC, Portable and Iceland back ends. The Iceland option is temporary, and will go away once we combine with Portable. The Quick variants are with and without GBC conversion. In time, those will converge to a single option. All uses of "#if defined(ART_USE_QUICK_COMPILER)" are eliminated. All previous uses in the Quick compiler have been converted to runtime tests. On the llvm side, ART_USE_QUICK_COMPILER was previously used to differentiate between Portable and Iceland builds. Those usages have been replaced with ART_USE_PORTABLE_COMPILER, and in a following CL will also be converted to run-time tests. As of this CL, we're still generating separate libraries for Quick and Portable/Iceland. Next up is elminating the target-specific libraries for Quick-arm, Quick-x86 and Quick-mips. Once that is complete, we will consoldate Quick and Portable into a single build. To build either Iceland or Portable, touch USE_PORTABLE_COMPILER or USE_LLVM_COMPILER as usual. Otherwise, the build will default to Quick (non-GBC). Change-Id: Ic86c56f51710c9b06d4430b71a429ae12903cc47
|
21d28f510eb590f52810c83f1f3f37fe5f4adf46 |
|
12-Jun-2012 |
Shih-wei Liao <sliao@google.com> |
GBC Expander. Removed lir. Change-Id: If8d13e36f1e6d82c2a7f7bfec62b8fb41fd8cdaa
|
871599a0289b6b81f83caafae7ba755718186205 |
|
06-Sep-2012 |
Brian Carlstrom <bdc@google.com> |
Restore tests tag for target Change-Id: Iee24512e5baac2bc0b068558e29e16000a7b2869
|
3bdcd3dc77b8564d443c0f9e2fbbfda0124b5508 |
|
24-Aug-2012 |
Brian Carlstrom <bdc@google.com> |
Remove build warnings due to now unnecessary LOCAL_MODULE_TAGS Change-Id: I90b413525b00de930ab9319546c32dece0ec1e77
|
971bf3f9184010d68b9a3ad30b396fa401af91a3 |
|
01-May-2012 |
Logan Chien <loganchien@google.com> |
Compile method one-by-one. Change-Id: Ic56fb397f3bd6dee32372eb875261a3383eaf30c
|
eaec3ae9ef61e461ac5d2a1453a6f20b70b5d806 |
|
18-Jun-2012 |
Brian Carlstrom <bdc@google.com> |
chmod +x before running a gtest on the target otherwise binaries written by flashing userdata.img cannot be run. Change-Id: I495ca3cde4e5d7cbdf6b535b5d38345da4846e90
|
eb02a124afcd6869ada475712bca8cbe0de20222 |
|
12-Jun-2012 |
Elliott Hughes <enh@google.com> |
Use our own 'main' for gtest tests. This lets us include the test name in crashes. Change-Id: Id8ed130589b5bc058bedc835a7fe06bbc6178be5
|
2cfc639fc803bf67e3d2a961f2b637220c86d5f7 |
|
07-May-2012 |
buzbee <buzbee@google.com> |
Foundation for Quick LLVM compiler Ready for review - probably better get this cleaned up and checked in even though much work remains. Basic conversion from MIR to GreenlandIR and from GreenlandIR back to LIR. Support sufficient to run Fibonacci test. Note some structural changes in MIR to support this work: o retaining incoming label for phi nodes o constant propagation o include object reference detection in type inference pass Change-Id: I8ba63c73e76d071aa40cae0f744e598b96f68699
|
e94d9b23c52ec0f36c8a132914eac33bc707faff |
|
22-May-2012 |
Shih-wei Liao <sliao@google.com> |
Add dex_lang as common frontend to lir and LLVM. dex_lang + bc2lir = Greenland First commit of Greenland compiler: It's working in the sense of oat tests. E.g., mm test-art-host-oat-Fibonacci. It shows the correct bitcode before lir. Change-Id: I91cbb02188325eb1fa605ed71ec7108fd2b0dbb9
|
b0aa9d313b2cc36a0b6420266131631bee2da807 |
|
08-Apr-2012 |
Brian Carlstrom <bdc@google.com> |
Fix target gtest depenencies The main ingredient was moving the include of Android.gest.mk earlier. But then to keep host gtests dependencies working, their dependencies were made to mirror how the target works, to hopefully avoid similar issues in the future. Change-Id: If7223b8a6f3a2fef449616494b14558e1752226d
|
b264f081424642b06b0bbe7102781895d41faa9d |
|
07-Apr-2012 |
Elliott Hughes <enh@google.com> |
Implement native method return value and upcall argument type checking. Also clean up the CheckJNI testing a bit. I still need to do some work so that JniAbort catches more of the detail, but this is a step forward. Change-Id: Ibf5e32867d56123cff902ebf602406b731f567d2
|
b4669208ee02f16c198eb21332701b6a0c5af278 |
|
25-Mar-2012 |
TDYa127 <tdy@google.com> |
Fix space_test for (USE_LLVM_COMPILER) build. If we use libcutils, it will link bionic's dlmalloc. And we will call bionic's init_mparams(). The init_mparams() initializes a "static" variable, mparams. So, if we don't call ART's copy of init_mparams(), our own mparams will not be initialized. Later, when we call mspace_set_footprint_limit(), which only exists in ART's copy of dlmalloc, it can not successfully set limit. The problematic code path is as follows: Most recent callee is: art::Runtime::VisitRoots at art/src/runtime.cc:839 art::MarkSweep::MarkRoots at art/src/mark_sweep.cc:91 art::Heap::CollectGarbageInternal at art/src/heap.cc:581 art::Heap::AllocateLocked at art/src/heap.cc:465 art::Heap::AllocateLocked at art/src/heap.cc:421 art::Heap::AllocObject at art/src/heap.cc:281 art::Array::Alloc at art/src/object.cc:1252 art::PrimitiveArray<unsigned short>::Alloc at art/src/object.cc:1280 art::String::Alloc at art/src/object.cc:1392 art::String::AllocFromModifiedUtf8 at art/src/object.cc:1380 art::String::AllocFromModifiedUtf8 at art/src/object.cc:1375 art::InternTable::InternStrong at art/src/intern_table.cc:136 art::ClassLinker::AllocDexCache at art/src/class_linker.cc:1042 art::ClassLinker::AppendToBootClassPath at art/src/class_linker.cc:1607 art::ClassLinker::InitFromCompiler at art/src/class_linker.cc:314 art::ClassLinker::CreateFromCompiler at art/src/class_linker.cc:213 art::Runtime::Init at art/src/runtime.cc:666 art::Runtime::Create at art/src/runtime.cc:495 which is the oldest callee. This will happen to (!USE_LLVM_COMPILER) build as well: When creating runtime.class_linker_, it should allocate DexCache. When initializing DexCache, it needs to allocate managed Object. Then, when running (USE_LLVM_COMPILER) build, allocate without growth failed. See space->AllocWithoutGrowth() at heap.cc:442. Then, (USE_LLVM_COMPILER) build will call CollectGarbageInternal, which will call through Runtime::VisitRoots(). VisitRoots needs class_linker. But at that time, we are still initializing runtime::class_linker_! In general, this could be a bug for (!USE_LLVM_COMPILER) build too, when we need to run GC before class_linker_ is initialized. (cherry picked from commit 8771a2fe9f5892fa4646cf50ae728f54b427356f) Change-Id: I02b313b4153bb7ff7554aaf3d0dc760c5bdb2087
|
8771a2fe9f5892fa4646cf50ae728f54b427356f |
|
25-Mar-2012 |
TDYa127 <tdy@google.com> |
Fix space_test for (USE_LLVM_COMPILER) build. If we use libcutils, it will link bionic's dlmalloc. And we will call bionic's init_mparams(). The init_mparams() initializes a "static" variable, mparams. So, if we don't call ART's copy of init_mparams(), our own mparams will not be initialized. Later, when we call mspace_set_footprint_limit(), which only exists in ART's copy of dlmalloc, it can not successfully set limit. The problematic code path is as follows: Most recent callee is: art::Runtime::VisitRoots at art/src/runtime.cc:839 art::MarkSweep::MarkRoots at art/src/mark_sweep.cc:91 art::Heap::CollectGarbageInternal at art/src/heap.cc:581 art::Heap::AllocateLocked at art/src/heap.cc:465 art::Heap::AllocateLocked at art/src/heap.cc:421 art::Heap::AllocObject at art/src/heap.cc:281 art::Array::Alloc at art/src/object.cc:1252 art::PrimitiveArray<unsigned short>::Alloc at art/src/object.cc:1280 art::String::Alloc at art/src/object.cc:1392 art::String::AllocFromModifiedUtf8 at art/src/object.cc:1380 art::String::AllocFromModifiedUtf8 at art/src/object.cc:1375 art::InternTable::InternStrong at art/src/intern_table.cc:136 art::ClassLinker::AllocDexCache at art/src/class_linker.cc:1042 art::ClassLinker::AppendToBootClassPath at art/src/class_linker.cc:1607 art::ClassLinker::InitFromCompiler at art/src/class_linker.cc:314 art::ClassLinker::CreateFromCompiler at art/src/class_linker.cc:213 art::Runtime::Init at art/src/runtime.cc:666 art::Runtime::Create at art/src/runtime.cc:495 which is the oldest callee. This will happen to (!USE_LLVM_COMPILER) build as well: When creating runtime.class_linker_, it should allocate DexCache. When initializing DexCache, it needs to allocate managed Object. Then, when running (USE_LLVM_COMPILER) build, allocate without growth failed. See space->AllocWithoutGrowth() at heap.cc:442. Then, (USE_LLVM_COMPILER) build will call CollectGarbageInternal, which will call through Runtime::VisitRoots(). VisitRoots needs class_linker. But at that time, we are still initializing runtime::class_linker_! In general, this could be a bug for (!USE_LLVM_COMPILER) build too, when we need to run GC before class_linker_ is initialized. Change-Id: Ie1246adf77c7a656827ed3dcd3b9759c5a1ca262
|
c4c9881e5d22432f3f1a30eeec5aa109dfc08a7d |
|
11-Mar-2012 |
Shih-wei Liao <sliao@google.com> |
Fix the LLVM build. Separate out libart-compiler-llvm.so. After this refactoring: If (!USE_LLVM_COMPILER), I pass the test-art and boot the phone alright. The behavior is the same for non-LLVM builds as before. Multi-target art-compiler shared libraries are generated as before. If (USE_LLVM_COMPILER), I generate libart-compiler-llvm.so successfully. Note that the ideal refactoring for the next step will be to always build art-compiler and LLVM-[arm|mips|x86] shared libraries. Currently, we haven't removed all the ifdefs for libart.so yet, so this is not ideal yet. Reason for not-done-yet is that the next step requires discussions. I can remove all the ifdefs today, but then the (!USE_LLVM_COMPILER) build will incur extra fields and overhead. This refactoring allows us to restore the LLVM build situation to be before the breakage yesterday, so we can continue making forward progress again. One difficulty in the refactoring is that LLVM is not a method compiler in default, unlike (!USE_LLVM_COMPILER). LLVM actually compiles an LLVM module at a time normally. So we need to do more call backs and tell libart-compiler-llvm.so in each invocation where we are in terms of OatCompilationUnit. Another difficulty is that currently our LLVM compiler is not multithreaded and requires locking, unlike (!USE_LLVM_COMPILER). So more callbacks are needed. This will be fixed when we fix the multithreading issue. Change-Id: I93bce21b6d673254188f2a60b1a7f91b508e497f
|
5b8b1edc803a85bb3172560826d6a23fb23c3452 |
|
24-Feb-2012 |
Shih-wei Liao <sliao@google.com> |
Implement Link-loading and pass 62 tests in JniInternalTest. The passed tests include the 12 originally ARM-only tests. Now it works on x86 as well if defined(ART_USE_LLVM_COMPILER). Change-Id: I03092637fa4f0979ca77e0cac06e5d31a867e465
|
282dab03fd0c80819fa988ef2e81b2bae1c36287 |
|
29-Feb-2012 |
Brian Carlstrom <bdc@google.com> |
Add Java_MyClass_sbar to list of test symbols Change-Id: Ib34abfb5c1d2542ff3c3ae9417cd65d174bb6834
|
06e3ad4a651c2c58dba5e865cd06d2f98462bf1d |
|
07-Feb-2012 |
Elliott Hughes <enh@google.com> |
Turn on some basic tsan annotations. The most useful bit here is that tsan now knows the names of our threads. Change-Id: I8eef8f31e954ffc373555b392d6d9678d76ead34
|
32b4b2a30636360756058524f8491ee4cd81c423 |
|
01-Feb-2012 |
Brian Carlstrom <bdc@google.com> |
Test changes to support tradefed - move jar files for gtest support to /data/nativetest/art - tag jar files in /data/art-test as "tests" Change-Id: I43fe38bee4a47096754ee41c3207a93a3d3ad830
|
0f09676a8f61809c474e71b4a677093615bfba19 |
|
31-Jan-2012 |
Elliott Hughes <enh@google.com> |
Fix test-art-target on the Mac. We only want to avoid using GNU ld options when building host binaries for the Mac. Change-Id: I10da9dcbb74ebf68877d16384c962daf40c8d56c
|
cfede668645d1fd40ff500974188cab5fb49d11c |
|
30-Jan-2012 |
Brian Carlstrom <bdc@google.com> |
Fix Mac build Change-Id: I81ee45431604de5c788dd572faf2e582b477a498
|
b9cc1ca34adec5e9254f78e9ee40d57348aa2fd0 |
|
27-Jan-2012 |
Brian Carlstrom <bdc@google.com> |
Remove need for libarttest.so for gtests for tradefed Change-Id: I18b39b9fc6f0bfa163ef7e7063864696d6958ad0
|
6717d0d2dfd84e895794aea08ec45bfe60b0a856 |
|
25-Jan-2012 |
Brian Carlstrom <bdc@google.com> |
Move target gtests to /data/nativetest for tradefed Change-Id: I937061dc25139fefc2f26efdd908a4efc2a21cf1
|
659526d5899fbed659b08fedba31c36f7f31724a |
|
21-Jan-2012 |
Elliott Hughes <enh@google.com> |
Work around unexplained $(filter-out) trouble. ($filter-out) was leaving us with the empty list. Manually write out the two choices. Change-Id: Ib79677164f25b447418d75382b831659d0c7332d
|
34cf51471a40d55dd63897daf855fec8179b0f7f |
|
21-Jan-2012 |
Elliott Hughes <enh@google.com> |
Work around the fact that Linux and Mac OS have opposite requirements for libgtest. This should let us keep the working Mac build without breaking the Linux build! Change-Id: I2ec44b7043c8ac9be49f0068d9eb7e18e9c88c7d
|
e71719d5aae738e61024127f3f75c221c1ddc579 |
|
21-Jan-2012 |
Elliott Hughes <enh@google.com> |
Fix the Mac build. Really. I have binaries and everything. Change-Id: I7bb27f6ebbb09162c803764f23520e6f682555c7
|
29e7ac74a3f9aec192099fec381baadaa55730ad |
|
06-Dec-2011 |
Brian Carlstrom <bdc@google.com> |
Moving from libdvm to libart (1 of 5) Change-Id: I6541802c5f403a4ba4424818084b94bebe71dfca
|
47a0d5a6f221066c3daf7f67f2122ed9c9cd217c |
|
13-Oct-2011 |
Brian Carlstrom <bdc@google.com> |
Move art content to /data oat tests, gtests, and run-test content to /data/art-test boot.oat and boot.art to /data/art-cache Change-Id: I68f9f6798bc4ea0596642ff5624f3e77dec6ccbe
|
7178e733005d40cb50cbfea4a9355765ccf05ee7 |
|
13-Oct-2011 |
Brian Carlstrom <bdc@google.com> |
Fix gtest build and execution Change-Id: I495f6e32873e7ea5ffde25490678b571312e34cd
|
0796af03edc06d92bb8d631f1c0c23befdae2315 |
|
12-Oct-2011 |
Brian Carlstrom <bdc@google.com> |
Fix Object::IsSoftReference Also changed -Xzygote to default boot.art and log arguments Finally Makefile work: - separate out test dependencies - changed zygote with art to work by replacing libdvm with libart[d] - changed Makefile defines to name and error check their arguments This was to fix bug in generating ART_TARGET_EXECUTABLES where we used $(1) when we meant $(3) Change-Id: I7ef6008eff1fe99b59d151b6793e8fd8ea5304d4
|
bbf1e41e8d9b2446756e729f30c2501fb3e682c1 |
|
18-Sep-2011 |
Brian Carlstrom <bdc@google.com> |
Move main method tests from gtests to oat tests Change-Id: Ifffa4d083488114d6cc14d578ec2be7db8a7553f
|