48c3ce6733efbc545605b1bfe2ddbdf95a04edf3 |
|
03-Mar-2016 |
Stephen Hines <srhines@google.com> |
Enable clang for ARM builds. Bug: http://b/25130937 We disable the integrated assembler for the ARM interpreter because Clang can't handle the syntax present. (cherry picked from commit a388c5a6291dbfb9a8366181a752050f4898d4ff) Change-Id: Iefd5ba922eec54a2167e8a057c459b289aaf2ef3
|
07f6818ef68046d4749963b3bd59f7e93cf43fa9 |
|
10-Mar-2016 |
Vladimir Marko <vmarko@google.com> |
ART: Do not use vixld - workaround to fix dex2oatds. This is a quick workaround for ODR violations caused by linking libvixl.a compiled without VIXL_DEBUG with the libartd-compiler.a compiled with VIXL_DEBUG. Bug: 27588884 Change-Id: Ib1af165f177f125f03cdd99777dff4c2912f6405
|
a388c5a6291dbfb9a8366181a752050f4898d4ff |
|
03-Mar-2016 |
Stephen Hines <srhines@google.com> |
Enable clang for ARM builds. Bug: http://b/25130937 We disable the integrated assembler for the ARM interpreter because Clang can't handle the syntax present. Change-Id: I978d3f78e25819bb76ccb0f7f4b91a88e4b5a2de
|
1fdabe6dbe82eabc71d96b900d5a4ed4cb0a0a45 |
|
19-Feb-2016 |
Andreas Gampe <agampe@google.com> |
Revert "Do not build art with clang for mips64" This reverts commit 610a1420fe400d3f638fc0dadb1a012d2ac3ad19. Bug: 25928358 Change-Id: I3fe8777ead2bd067c071277a7c15b2442f15567f
|
37ba27acc3bb0937ee75f1215b86c3b5b872a356 |
|
26-Jan-2016 |
Hiroshi Yamauchi <yamauchi@google.com> |
Temporarily use -fstack-protector for the read barrier config. Instead of -fstack-protector-strong. To avoid a major performance regression. Bug: 26744236 Bug: 12687968 Change-Id: I299247589e2bb6939393d30bdc54c15ce0f04b2a
|
1cab143cd1cf4e4a889e8c9e4503ab0bbe31ab64 |
|
19-Dec-2015 |
Colin Cross <ccross@android.com> |
Re-enable optimization for clang arm64 art builds The clang bug is fixed, remove -O1 from clang arm64 art builds. Bug: 23256622 Change-Id: I3f2f6d1e84c5484fd499a94593f1dd53a4a66fbe
|
ceb07b3285eaab350a8cd12f7d74be3e40a255dd |
|
10-Dec-2015 |
Mathieu Chartier <mathieuc@google.com> |
Revert "Revert "Add support for LZ4 compressed image files"" Needed to call compiler_driver_->SetSupportBootImageFixup(false). Bug: 22858531 This reverts commit 83d4d72aa0e4170209ab50c67ba22e46b71352c1. Change-Id: Iaed6a810a0c088f1f2c57cf2f12087f3978a3de1
|
83d4d72aa0e4170209ab50c67ba22e46b71352c1 |
|
10-Dec-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Add support for LZ4 compressed image files" Tentative. Looks like it breaks image_test for hammerhead: art/compiler/linker/arm/relative_patcher_thumb2.cc:36] Check failed: target_offset & 1u == 1u (target_offset & 1u=0, 1u=1) Bug: 22858531 This reverts commit c6f41b5b3ca3d7ac3c12ad3995ffef4e831973a0. Change-Id: I9bc5738a8b5c8f8bc8b73309f9420fd691bc79a9
|
c6f41b5b3ca3d7ac3c12ad3995ffef4e831973a0 |
|
05-Dec-2015 |
Mathieu Chartier <mathieuc@google.com> |
Add support for LZ4 compressed image files Added dex2oat option --image-format=(store|lz4). Using lz4 means that the main image section (all data other than header and bitmap) are stored in a compressed state. N5 results: Boot image size: 8067128 -> 2827605 Decompression time 18.93ms Decompression rate: 426MB/s Patchoat is not currently supported since it maps the source image directly. In order to support compressed images we would need to recompress the output image and then write it back out to a file. Also there are not many cases where we would want to patch a compressed image since they are going to be dirty memory when uncompressed anyways. Might as well just patch as we are loading. Bug: 22858531 Change-Id: I8c54ccf73408273011161a61bb891736735074d9
|
610a1420fe400d3f638fc0dadb1a012d2ac3ad19 |
|
27-Nov-2015 |
Lazar Trsic <Lazar.Trsic@imgtec.com> |
Do not build art with clang for mips64 Clang generates illegal instruction on mips64r6 with -O0. https://dmz-portal.mips.com/bugz/show_bug.cgi?id=2218 BUG: 25928358 Change-Id: I8ccd644f1509b4b341384fa67facc07cb966dfa8
|
5295bc2c35cddf2b31396dddfddb1998f681b3a4 |
|
21-Oct-2015 |
Andreas Gampe <agampe@google.com> |
ART: Disable Clang for arm Disable Clang for arm32 until a fix for the issue is found. Bug: 25130937 Change-Id: Ia33f387b89ac8d1e8eac9a2782c45f038b9e8a1a
|
8069d9f1b587fef93252cd5135f59c038302f7fb |
|
15-Oct-2015 |
Alex Light <allight@google.com> |
Allow changing the optimization level of a build with env variable. This is useful for debugging. Change-Id: I60e61cdb53a00d74cf619d56991f9d11ab9ae0c4
|
2e287754fcc0f3ecd10fcc9623800d935618360a |
|
02-Oct-2015 |
Hiroshi Yamauchi <yamauchi@google.com> |
Make it possible to change the read barrier type as build config. Bug: 12687968 Change-Id: Ib43dab4d4e68a5a962347fcc2163c3100cb5b760
|
409e80901468f6c746eeae5c6e93ceedf1d8c711 |
|
01-Oct-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Don't force the boot image to using quick. Instead, put the debuggable flag. Also, remove obsolete ART_USE_OPTIMIZING_COMPILER environment variable. Change-Id: Idde00da0d063aa461faa0308134f3b420de9fe0a
|
d4720665b27f51ee231b0cfe97417ad00d841003 |
|
14-Sep-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Revert "Revert "Re-enable Clang's -Wpessimizing-move"" This reverts commit 4a37953377092ade93c15c72ad49cde4adaabd94. Change-Id: Iae3bab9b104c1391070b329ef6a6a73b836189c8
|
4a37953377092ade93c15c72ad49cde4adaabd94 |
|
14-Sep-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Revert "Re-enable Clang's -Wpessimizing-move" This reverts commit 8f5d2d84efb90e7220dd42c7aa104dbc19c52f4e. Change-Id: I24fa681c0639bc4bf7af1b821f620780cd7a474d
|
8f5d2d84efb90e7220dd42c7aa104dbc19c52f4e |
|
13-Sep-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Re-enable Clang's -Wpessimizing-move The warning on variant_map.h is fixed by https://android-review.googlesource.com/#/c/170745/. Change-Id: I802dd26538637ff276b7c24c1f5bca280b0bc428
|
f54cde646bbf5df7c506b42fce53a24ce7d8a2e9 |
|
02-Sep-2015 |
Ivan Krasin <krasin@google.com> |
Increase max stack frame for sanitizers to handle x86. Currently, when building asan-ified Android image for aosp_x86-eng, it surpasses the limit for the stack frame size and stops the compilation. The resulting image (after increasing the limit) was tested in the emulator. Change-Id: I99c4871f38abab526bdf28575f44400432ec61ba
|
50fa993d67f8a20322c27c1a77e7efcf826531fc |
|
11-Aug-2015 |
Alex Light <allight@google.com> |
Svelter libart-compiler Added new environment variable ART_{TARGET,HOST}_CODEGEN_ARCHS which may be set to 'all', 'svelte' or a space separated list of architectures. When compiled with ART_{TARGET,HOST}_CODEGEN_ARCHS='all' (the default value) dex2oat will be able to generate output for all supported architectures. When compiled with ART_TARGET_CODEGEN_ARCHS='svelte' only the architectures of the TARGET will be included. When ART_HOST_CODEGEN_ARCHS='svelte' all architectures the target includes and the host architectures will be included on the host dex2oat. If a list of architectures is given only those will be included. Change-Id: I87f4ad0131ab1b37544d8799e947ce4733b6daec
|
bc0d79be56b258b87064e94d3a34f45207ad8f32 |
|
17-Aug-2015 |
Dan Albert <danalbert@google.com> |
Only apply aarch64 clang WAR to the target. Note that the ART_TARGET_CLANG_CFLAGS_$(arch) was actually broken over a year ago. This patch fixes that and drops the no longer needed -DNVALGRIND for clang aarch64. Bug: http://b/23256622 Change-Id: I749db286c0fd533aeb50744b323c1faddf951d79
|
b47bad5e7f0a0a433f24d3742b22bea31d16e12b |
|
17-Aug-2015 |
Dan Albert <danalbert@google.com> |
Force Clang aarch64 builds to -O1. Bug: http://b/23256622 Change-Id: Icab87964576f12a671e255500dec901f3558e7ad
|
4382f1ef6ab2d6992d330cc8b43057d9139a1243 |
|
05-Aug-2015 |
Andreas Gampe <agampe@google.com> |
Revert "Revert "ART: Use bionic TLS slot for thread-self"" This reverts commit 50832b6804d15ea5ddfe99a2753a09111b5bfe37. Fix clearing the TLS on detach. Change-Id: I75ed5ccccb4f31800e5f893055e96067a9695258
|
50832b6804d15ea5ddfe99a2753a09111b5bfe37 |
|
05-Aug-2015 |
Andreas Gampe <agampe@google.com> |
Revert "ART: Use bionic TLS slot for thread-self" This reverts commit b81535875ff46d1630c76091fe969a9eb7fc4d16. Breaking tests, need to investigate. Change-Id: Iab8c4f6136e6cb9bd6cf3c3495aa33962ef890ee
|
b81535875ff46d1630c76091fe969a9eb7fc4d16 |
|
29-Jul-2015 |
Andreas Gampe <agampe@google.com> |
ART: Use bionic TLS slot for thread-self Use a private bionic TLS slot to store self instead of using pthreads. Change-Id: Icc86a2b7590734637366f9d5e41a5c6d18cc5772
|
676ff8e35bf15a7551d264598cfaf1e97bcfa9aa |
|
24-Jul-2015 |
Calin Juravle <calin@google.com> |
Enable art host static builds only for checkbuilds. Change-Id: I42cc850089a5ecbcc201699f0b996da4fd959bb3
|
90443477f9a0061581c420775ce3b7eeae7468bc |
|
17-Jul-2015 |
Mathieu Chartier <mathieuc@google.com> |
Move to newer clang annotations Also enable -Wthread-safety-negative. Changes: Switch to capabilities and negative capabilities. Future work: Use capabilities to implement uninterruptible annotations to work with AssertNoThreadSuspension. Bug: 20072211 Change-Id: I42fcbe0300d98a831c89d1eff3ecd5a7e99ebf33
|
093f1b4c3007d52a75186175d184ad7f58aaa0df |
|
14-Jul-2015 |
Hiroshi Yamauchi <yamauchi@google.com> |
Add ART_TEST_DEBUG_GC to help with debugging gc. ART_TEST_DEBUG_GC is meant to be used to easily set the GC configuration to the one that currently needs debugging in a continuous test. Bug: 19894268 Change-Id: I566e44360fc4cd47b3448e194cc8c16c9f498b7f
|
1e13374baf7dfaf442ffbf9809c37c131d681eaf |
|
20-May-2015 |
Evgenii Stepanov <eugenis@google.com> |
Generalize Valgrind annotations in ART to support ASan. Also add redzones around non-fixed mem_map(s). Also extend -Wframe-larger-than limit to enable arm64 ASan build. Change-Id: Ie572481a25fead59fc8978d2c317a33ac418516c
|
15144b806664ba32de6ec2229a825123462a2260 |
|
09-Jul-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Add -Wno-pessimizing-move to Clang flags Upstream clang has a new diagnostic '-Wpessimizing-move' that warns when a std::move call prevents copy elision. The warning (which turns into an error with -Werror) is triggered for art/runtime/base/variant_map.h:261 Add -Wno-pessimizing-move to ART build rules until this warning can be safely handled. Change-Id: I7aff68abb6c44a5d64170b0d959c9537b89b5e16
|
0e26f464d94eeb8cc09d881c46adfe35640c8d9a |
|
09-Jul-2015 |
Calin Juravle <calin@google.com> |
Fix makefile test against host os. Change-Id: I7637845277012a189bf5f3598f9f0b1f599fbf75
|
4895ea4eb55a06003cc08cda55a6dca1c42a1794 |
|
02-Jul-2015 |
Calin Juravle <calin@google.com> |
Disable static builds for mac and asan. - asan doesn't support static linkage - we don't need a static build of dex2oat for mac Change-Id: I7eddd19f1f47e8b2a67ecc0aaf40cb70941febdd
|
dc5616146966369550f66e2a8866e142763bbefe |
|
02-Jul-2015 |
Calin Juravle <calin@google.com> |
Enable ART_BUILD_HOST_STATIC for check builds. Change-Id: Id888c3b0c544ea6a85799f2264b13f1d035fc754
|
65e069df6f864102b062fc04de8877f8230034a8 |
|
08-Jun-2015 |
Calin Juravle <calin@google.com> |
Build statically linked version of dex2oat. Change-Id: Icde39b770781095af7bd87ae6b907ad97a8a05da
|
e1b6e974ad2e5695bc166cb363050208d77ded45 |
|
16-Jun-2015 |
Evgenii Stepanov <eugenis@google.com> |
Disable -Wframe-larger-than when building SANITIZE_TARGET. The same has been done for SANITIZE_HOST some time ago. AddressSanitizer adds redzones around local variables, increasing function frame size by 2x to 3x. Bug: 21785137 Change-Id: If53456894a2e6e38318b681dbc69547b05b6f33c
|
12bd7210bb2f5738e33dfa3f2f1cba2e0aab4955 |
|
04-Jun-2015 |
Roland Levillain <rpl@google.com> |
If heap poisoning is on, pass the relevant flag to LOCAL_ASFLAGS. This change ensures assembly files honoring heap poisoning (notably used by stub_test) are compiled with -DART_HEAP_POISONING=1 when this feature is turned on. Bug: 21621105 Change-Id: I13fe456cd2733a09bdfd3a9808cfd70513b14698
|
1a1e77f1a5864352b8187bc01d0a3e6851e03cf7 |
|
28-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Fix valgrind includes external/valgrind structure has been changed to reflect upstream projects struture. Making corresponding changes to art includes. Bug: http://b/21471495 Change-Id: I2434a270f88502528df82c4820afedb002b65b8d (cherry picked from commit 6130f739d8f35e01037ba5c3ec5e5a1057900479)
|
6130f739d8f35e01037ba5c3ec5e5a1057900479 |
|
28-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Fix valgrind includes external/valgrind structure has been changed to reflect upstream projects struture. Making corresponding changes to art includes. Change-Id: I2434a270f88502528df82c4820afedb002b65b8d
|
2501595993152b8200c0173f7e68f720c515e576 |
|
12-May-2015 |
Chih-Hung Hsieh <chh@google.com> |
Undo arm64 workaround. Now we have new llvm to compile art for arm64 without -fno-vectorize. BUG: 21080674 Change-Id: Id1b3a88ab9d4cf78b7f0dfd8cb435ed6e7ab7cb2 (cherry picked from commit b6cee946d44dc1e961c9656830b567e38104f896)
|
b6cee946d44dc1e961c9656830b567e38104f896 |
|
12-May-2015 |
Chih-Hung Hsieh <chh@google.com> |
Undo arm64 workaround. Now we have new llvm to compile art for arm64 without -fno-vectorize. BUG: 21080674 Change-Id: Id1b3a88ab9d4cf78b7f0dfd8cb435ed6e7ab7cb2
|
91ddd0d2db1f04368591d74505d8ea4c77c56030 |
|
01-May-2015 |
Duane Sand <duane.sand@imgtec.com> |
Re-enable clang for Mips/Mips64 targets. The build-time errors described in https://android-review.googlesource.com/#/c/120512 are no longer happening. BUG: 18807290 BUG: 18789639 Change-Id: I195bbb7d102fecd6a6e6a3357b0863dd6fddb01f
|
848f70a3d73833fc1bf3032a9ff6812e429661d9 |
|
15-Jan-2014 |
Jeff Hao <jeffhao@google.com> |
Replace String CharArray with internal uint16_t array. Summary of high level changes: - Adds compiler inliner support to identify string init methods - Adds compiler support (quick & optimizing) with new invoke code path that calls method off the thread pointer - Adds thread entrypoints for all string init methods - Adds map to verifier to log when receiver of string init has been copied to other registers. used by compiler and interpreter Change-Id: I797b992a8feb566f9ad73060011ab6f51eb7ce01
|
662226652394d0388b0f6a3c9f79a317de273c8f |
|
07-Apr-2015 |
Andreas Gampe <agampe@google.com> |
ART: Turn off missing-noreturn for Mac Too much stuff unimplemented and causing warnings. Change-Id: I43bae875f1eca3cc24e03b0e7d6fdfd2adae0cbd
|
65b798ea10dd716c1bb3dda029f9bf255435af72 |
|
06-Apr-2015 |
Andreas Gampe <agampe@google.com> |
ART: Enable more Clang warnings Change-Id: Ie6aba02f4223b1de02530e1515c63505f37e184c
|
758a801b66c134361a7b43f7e83f85d1fb800c4c |
|
04-Apr-2015 |
Andreas Gampe <agampe@google.com> |
ART: Enable Clang's -Wdeprecated Replace throw() with noexcept. Add default copy constructors and copy assignment constructors for cases with destructors, as the implicit definition is deprecated. Change-Id: Ice306a3f510b072b00bec4d4360f7c8055135c9d
|
ca71458862be8505330b7fd5649a062f31d143dc |
|
04-Apr-2015 |
Andreas Gampe <agampe@google.com> |
ART: Add Clang's -Wused-but-marked-unused Add detection of wrong unused annotations. Fix our codebase. Change-Id: I85cc20f2eac71c1ec6c5c7cd6efb08454a629634
|
79bd2bfa8f1602067fd381834206ed6b7e73a9be |
|
20-Mar-2015 |
Hiroshi Yamauchi <yamauchi@google.com> |
Make it possible to enable tlab with a build parameter. For testing. Change-Id: I4d06a4db733b7fa09105f068028483cf88db7925
|
f3c7ba6a5759873138fbf4ae24a216dc0d87a3fe |
|
24-Feb-2015 |
Jeff Hao <jeffhao@google.com> |
Remove ART_SMALL_MODE ifdefs. WITH_ART_SMART_MODE now sets --compiler-filter options instead. Has a corresponding change to /build Bug: 19460766 Change-Id: I295ebbd49caa5341834141f7c2bbf8df830131ed
|
3e781622a67e6d83e76e1bf765e9d84b3c718dc9 |
|
25-Feb-2015 |
Hiroshi Yamauchi <yamauchi@google.com> |
Fix method_verifier_test with the SS collector. Rename art_default_gc_type to ART_DEFAULT_GC_TYPE. Bug: 19514492 Change-Id: I3c7920e7a84327c5908462e51e21199b89fb187d
|
7c3952f423b8213083d60596a5f0bf4237ca3f7b |
|
20-Feb-2015 |
Andreas Gampe <agampe@google.com> |
ART: Add -Wunused Until the global CFLAGS are fixed, add Wunused. Fix declarations in the optimizing compiler. Change-Id: Ic4553f08e809dc54f3d82af57ac592622c98e000
|
e5f13e57ff8fa36342beb33830b3ec5942a61cca |
|
24-Feb-2015 |
Mathieu Chartier <mathieuc@google.com> |
Revert "Revert "Add JIT"" Added missing EntryPointToCodePointer. This reverts commit a5ca888d715cd0c6c421313211caa1928be3e399. Change-Id: Ia74df0ef3a7babbdcb0466fd24da28e304e3f5af
|
a5ca888d715cd0c6c421313211caa1928be3e399 |
|
24-Feb-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Add JIT" Sorry, run-test crashes on target: 0-05 12:15:51.633 I/DEBUG (27995): Abort message: 'art/runtime/mirror/art_method.cc:349] Check failed: PcIsWithinQuickCode(reinterpret_cast<uintptr_t>(code), pc) java.lang.Throwable java.lang.Throwable.fillInStackTrace() pc=71e3366b code=0x71e3362d size=ad000000' 10-05 12:15:51.633 I/DEBUG (27995): r0 00000000 r1 0000542b r2 00000006 r3 00000000 10-05 12:15:51.633 I/DEBUG (27995): r4 00000006 r5 b6f9addc r6 00000002 r7 0000010c 10-05 12:15:51.633 I/DEBUG (27995): r8 b63fe1e8 r9 be8e1418 sl b6427400 fp b63fcce0 10-05 12:15:51.633 I/DEBUG (27995): ip 0000542b sp be8e1358 lr b6e9a27b pc b6e9c280 cpsr 40070010 10-05 12:15:51.633 I/DEBUG (27995): Bug: 17950037 This reverts commit 2535abe7d1fcdd0e6aca782b1f1932a703ed50a4. Change-Id: I6f88849bc6f2befed0c0aaa0b7b2a08c967a83c3
|
2535abe7d1fcdd0e6aca782b1f1932a703ed50a4 |
|
17-Feb-2015 |
Mathieu Chartier <mathieuc@google.com> |
Add JIT Currently disabled by default unless -Xjit is passed in. The proposed JIT is a method JIT which works by utilizing interpreter instrumentation to request compilation of hot methods async during runtime. JIT options: -Xjit / -Xnojit -Xjitcodecachesize:N -Xjitthreshold:integervalue The JIT has a shared copy of a compiler driver which is accessed by worker threads to compile individual methods. Added JIT code cache and data cache, currently sized at 2 MB capacity by default. Most apps will only fill a small fraction of this cache however. Added support to the compiler for compiling interpreter quickened byte codes. Added test target ART_TEST_JIT=TRUE and --jit for run-test. TODO: Clean up code cache. Delete compiled methods after they are added to code cache. Add more optimizations related to runtime checks e.g. direct pointers for invokes. Add method recompilation. Move instrumentation to DexFile to improve performance and reduce memory usage. Bug: 17950037 Change-Id: Ifa5b2684a2d5059ec5a5210733900aafa3c51bca
|
40e7f0e25fe8c0d50e1ade5c28730bb07fe399ce |
|
03-Feb-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Go back to -O2. Stack space suffers otherwise. Change-Id: I890a9714acd8500981c3d41df0f5f7fd63d48f8f
|
7b7e524c86a67f7357bbcfd0e7bde07ded50cca2 |
|
03-Feb-2015 |
Andreas Gampe <agampe@google.com> |
ART: Fix assembler_thumb_test Fix the inconsistent calls. This was bad practice, requiring that shape meant arm32 and thumb were not interchangeable. Also fix an error in the assembler itself for tst and teq. Change-Id: I50242801002aa81cc17bfaa53eb8b7c1d9488fbc
|
31fb26054349db03b3f1627fe975ed099ade69dd |
|
01-Oct-2014 |
Dan Albert <danalbert@google.com> |
Add options for building/testing with coverage. acov --clean mm -B NATIVE_COVERAGE=true ART_COVERAGE=true test-art-host acov --host -B is needed because you need to be sure you rebuild *all* of ART with coverage. Change-Id: Ib94ef610bd1b44dc45624877710ed733051b7a50
|
685fbe422ce8103933f709b29c97bbe32647c75e |
|
27-Jan-2015 |
Andreas Gampe <agampe@google.com> |
ART: Clean up some build flags Remove some no-longer necessary build flags. Change-Id: Iea85a21689c20931b88d0e84b84410652b66b38d
|
c23f0d88bee65433a94f84c7cabe50be863905a5 |
|
24-Jan-2015 |
Hiroshi Yamauchi <yamauchi@google.com> |
Make it possible to enable read barriers at build time. Bug: 12687968 Change-Id: I26ec55063c2d5ff0181e628c1002bfa609815b29
|
1a5c40672783fac98aca5a04ac798a0a0014de65 |
|
15-Jan-2015 |
Andreas Gampe <agampe@google.com> |
ART: Mips64 runtime support Interpret-only Mips64 runtime support. Change-Id: Iee22d0c8c77105d9b2f03a67dc4e09957fe0ab0a
|
89866b76de53945228eee9c89ee63a784fe5aba7 |
|
14-Jan-2015 |
Andreas Gampe <agampe@google.com> |
ART: Only give Clang warning when Clang is active Do not pollute output with Clang warning if we were supposed to compile with Clang. Change-Id: I1ee764dcfe0581e09a350cb01fdf0ba06dd18b56
|
86bb22e188f587ba64a0e62ae5f44363d573345d |
|
19-Dec-2014 |
Chih-Hung Hsieh <chh@google.com> |
Do not use clang for mips target. Clang assembler cannot compile some inlined assembly code in valgrind_malloc_space-inl.h:192:5: error: used $at without ".set noat" However, clang generated assembly code for runtime/mirror/array.cc cannot be compiled by gas. BUG: 18789639 BUG: 18807290 Change-Id: Ifdeb3c50f11cefc7f0d62c1d36fdd1f8b9344fb4
|
bced67d061049b607ce02a9813ef9dd0c87f8081 |
|
07-Jan-2015 |
Andreas Gampe <agampe@google.com> |
ART: Fix Clang CFLAGS inclusion Only include the CFLAGS if Clang is not explicitly disabled for the architecture. Change-Id: Ic63d7c8018f633a9b20a4ff9285d6380426017a5
|
3774335b08076117d6950cd472cdd59a167470b5 |
|
13-Nov-2014 |
Igor Murashkin <iam@google.com> |
Add a new imgdiag tool to diff boot.art/core.art against a process Analyze the dirty memory pages of a running process per-object, this allows is to to fine-tune the dirty object binning algorithm in image writer. Also: * Factor out oatdump command line parsing code into cmdline.h * Factor out common build rules for building variations of binaries * Add a gtest for imgdiag Bug: 17611661 Change-Id: I3ac852a0d223af66f6d59ae5dbc3df101475e3d0
|
956af0f0cb05422e38c1d22cbef309d16b8a1a12 |
|
11-Dec-2014 |
Elliott Hughes <enh@google.com> |
Remove portable. Change-Id: I3bf3250fa866fd2265f1b115d52fa5dedc48a7fc
|
a28ff0f8a4df47a53041a69e611b841d8d38b3a1 |
|
08-Dec-2014 |
Ying Wang <wangying@google.com> |
Revert "Fix VM-less builds." This reverts commit 62753c474b83546f5f40ca114530a3f377a51bbc. Bug: 18465297 Change-Id: I800198949e3837f8dab3ad966aeb7dac5d7911c0
|
b0d22f178c0a8d1ee7d3692f282bb46c53cc2036 |
|
08-Dec-2014 |
Hiroshi Yamauchi <yamauchi@google.com> |
Make it possible to enable heap poisoning via make variable. If ART_HEAP_POISONING=true, build with heap poisoning enabled. Bug: 8367515 Change-Id: I818e86047e6dd99b5bc9920713ef943a65b677e6
|
62753c474b83546f5f40ca114530a3f377a51bbc |
|
02-Dec-2014 |
David 'Digit' Turner <digit@google.com> |
Fix VM-less builds. This patch modifies Android.common_build.mk to avoid breaking the build when trying to generate a system image that doesn't include a VM (which is useful for low-level emulator feature testing, not general Android development). BUG=18581643 Change-Id: Ib75ebf14d3e9c8fc2ac591c7edd2ab4d6ff2ca89
|
3029df6d212894647ba0e5c23443c40912c6ecc8 |
|
03-Dec-2014 |
Mathieu Chartier <mathieuc@google.com> |
Print memory usage in dex2oat shutdown Example on mako: I/dex2oat (31071): dex2oat took 31.195s (threads: 2) arena alloc=1013KB java alloc=13MB native alloc=32MB free=1490KB Bug: 18069309 Change-Id: I08eac00842be35d4e659bddc8513f2062be725c9
|
6c7cdc5eb809a72e5d0457d0220f9ad8458fe831 |
|
02-Dec-2014 |
Dan Albert <danalbert@google.com> |
Don't force color diagnostics. Clang does this automatically for you now, and forcing it causes ugly (and difficult to parse) error diagnostics for non-color terminals. Change-Id: I5ceb673ad50ad99cb78c733d18ac7dbfe8f978d3
|
32f5b4d2c8c9b52e9522941c159577b21752d0fa |
|
25-Nov-2014 |
Serban Constantinescu <serban.constantinescu@arm.com> |
Vixl: Update the VIXL interface to VIXL 1.7 and enable VIXL debug. This patch updates the interface to VIXL 1.7 and enables the debug version of VIXL when ART is built in debug mode. Change-Id: I443fb941bec3cffefba7038f93bb972e6b7d8db5 Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
|
cd195fe131842ad9ca7909203d479d325feaf9dd |
|
26-Nov-2014 |
Mathieu Chartier <mathieuc@google.com> |
Add a way to change the IMT size Useful for having smaller imts on memory constrainted devices. Setting ART_IMT_SIZE=x will change the size of the IMT. (cherry picked from commit 8ee96437f8cd24e1eb0b2adc6cef3346ed4b6a98) Change-Id: Ia74946ffc57ad32de5a8d60be3412462f19f8076
|
8ee96437f8cd24e1eb0b2adc6cef3346ed4b6a98 |
|
26-Nov-2014 |
Mathieu Chartier <mathieuc@google.com> |
Add a way to change the IMT size Useful for having smaller imts on memory constrainted devices. Setting ART_IMT_SIZE=x will change the size of the IMT. Bug: 17643507 Change-Id: Ia6bcfcb067c7e21c7f3003cf6254e4b2666ef169
|
9bb492a33c97e72d0c43a4ee968e34cc32534981 |
|
26-Nov-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Add ART_USE_OPTIMIZING_COMPILER flag. Change-Id: I86065aec5bfe59729c6a4064a3e54d5b523ca45c
|
88f21ca9e1c48d75346577b48dc143c02f57fa4a |
|
18-Nov-2014 |
Mathieu Chartier <mathieuc@google.com> |
Fix transitive equality error in set. SubstringComparator used to be broken since it didn't have transitive equality (ex. ab a ac). Now we use normal string comparison with set.lower_bound saves an additional 12 bytes. Also up frame size to 2700 to fix build. Change-Id: Ie8d41faef37591e7feed1f5d2ad6258430b8ffb6 (cherry picked from commit 4b8b4693ee19efbd2d8692ca0b47b71f3b7da663)
|
8366ca0d7ba3b80a2d5be65ba436446cc32440bd |
|
17-Nov-2014 |
Elliott Hughes <enh@google.com> |
Fix the last users of TARGET_CPU_SMP. Everyone else assumes SMP. Change-Id: I7ff7faef46fbec6c67d6e446812d599e473cba39
|
4b8b4693ee19efbd2d8692ca0b47b71f3b7da663 |
|
18-Nov-2014 |
Mathieu Chartier <mathieuc@google.com> |
Fix transitive equality error in set. SubstringComparator used to be broken since it didn't have transitive equality (ex. ab a ac). Now we use normal string comparison with set.lower_bound saves an additional 12 bytes. Also up frame size to 2700 to fix build. Change-Id: Ie8d41faef37591e7feed1f5d2ad6258430b8ffb6
|
98b8bcf433e7bd8f1a447f7bf8d6cf80ec505c5e |
|
15-Nov-2014 |
Dan Albert <danalbert@google.com> |
Up the stack size limit for SANITIZE_HOST. Change-Id: I7c507a6a2e8de534f0e09e961d13db0223eee891
|
4ad5cd3e7d519484559ef778d96fb3f0be8919fa |
|
12-Nov-2014 |
Ian Rogers <irogers@google.com> |
Modify the behavior of thread suspend shootouts. The thread doing the suspension doesn't attempt to suspend the other thread unless it knows another thread isn't trying to suspend it. Use the suspend count, and its lock, for this purpose. Re-enable ThreadStress test. Bug: 15446488 Change-Id: Idd34410c7b89d8abd6973e5699a15ca699472c78
|
277ccbd200ea43590dfc06a93ae184a765327ad0 |
|
04-Nov-2014 |
Andreas Gampe <agampe@google.com> |
ART: More warnings Enable -Wno-conversion-null, -Wredundant-decls and -Wshadow in general, and -Wunused-but-set-parameter for GCC builds. Change-Id: I81bbdd762213444673c65d85edae594a523836e5
|
6a3c1fcb4ba42ad4d5d142c17a3712a6ddd3866f |
|
31-Oct-2014 |
Ian Rogers <irogers@google.com> |
Remove -Wno-unused-parameter and -Wno-sign-promo from base cflags. Fix associated errors about unused paramenters and implict sign conversions. For sign conversion this was largely in the area of enums, so add ostream operators for the effected enums and fix tools/generate-operator-out.py. Tidy arena allocation code and arena allocated data types, rather than fixing new and delete operators. Remove dead code. Change-Id: I5b433e722d2f75baacfacae4d32aef4a828bfe1b
|
63fc30e201a74dbad9422a6dbd4c39e4b60ac4c5 |
|
25-Oct-2014 |
Andreas Gampe <agampe@google.com> |
ART: Create and use multiple core images Update test infrastructure to understand several core variants. Now compiles three core.art/oat variants: * core.art/oat, default-compiled * core-interpreter.art/oat, interpret-only * core-optimizing.art/oat, optimizing compiler The run-test variant implies which core variant is used. Change-Id: Ieeaf2df90faee2b04c209b950897e77806205fe4
|
ee0ebc81ba294710f90f0c8c934db1debae437aa |
|
22-Oct-2014 |
Andreas Gampe <agampe@google.com> |
ART: Fix common_build CFLAGS Actually use the additional art_clang_cflags. Change-Id: I2b5c5dacfdbffaa9b9c1e7a6fdb8ad79d8536fe8
|
677cd61ad05d993c4d3b22656675874f06d6aabc |
|
15-Oct-2014 |
Ian Rogers <irogers@google.com> |
Make ART compile with GCC -O0 again. Tidy up InstructionSetFeatures so that it has a type hierarchy dependent on architecture. Add to instruction_set_test to warn when InstructionSetFeatures don't agree with ones from system properties, AT_HWCAP and /proc/cpuinfo. Clean-up class linker entry point logic to not return entry points but to test whether the passed code is the particular entrypoint. This works around image trampolines that replicate entrypoints. Bug: 17993736 (cherry picked from commit 6f3dbbadf4ce66982eb3d400e0a74cb73eb034f3) Change-Id: I3e7595f437db4828072589d475a5453b7f31003e
|
50fe6daa14e4f1f43ccacce9f03003570ea8c09f |
|
17-Oct-2014 |
Ian Rogers <irogers@google.com> |
x86 build fix. Remove -fkeep-inline-functions from debug builds, having it there causes missing dependencies when we include system/core headers for the target on x86. Change-Id: Ice5c6f0469f604efb58dfacf2ab6bb3183429850
|
6f3dbbadf4ce66982eb3d400e0a74cb73eb034f3 |
|
15-Oct-2014 |
Ian Rogers <irogers@google.com> |
Make ART compile with GCC -O0 again. Tidy up InstructionSetFeatures so that it has a type hierarchy dependent on architecture. Add to instruction_set_test to warn when InstructionSetFeatures don't agree with ones from system properties, AT_HWCAP and /proc/cpuinfo. Clean-up class linker entry point logic to not return entry points but to test whether the passed code is the particular entrypoint. This works around image trampolines that replicate entrypoints. Bug: 17993736 Change-Id: I5f4b49e88c3b02a79f9bee04f83395146ed7be23
|
59c07060a6fbb93e455b44f00098cafb8e7e26cc |
|
10-Oct-2014 |
Ian Rogers <irogers@google.com> |
Work around ICE bugs with MIPS GCC and O1. Also, work around GCC warning bugs where array accesses with explicit bounds checks are flagged as being out-of-bounds. Significantly, clean-up the HandleScope so the array accesses don't appear out-of-bounds at compile time. Change-Id: I5d66567559cc1f97cd0aa02c0df8575ebadbfe3d
|
647b1a86f518d8db0331b3d52a96392b7a62504b |
|
10-Oct-2014 |
Ian Rogers <irogers@google.com> |
Fix 2 new sets of clang compiler warnings. Fix issues that are flagged by -Wfloat-equal and -Wmissing-noreturn. In the case of -Wfloat-equal the current cases in regular code are deliberate, so the change is to silence the warning. For gtest code the appropriate fix is to switch from EXPECT_EQ to EXPECT_(FLOAT|DOUBLE)_EQ. The -Wmissing-noreturn warning isn't enabled due to a missing noreturn in gtest. This issue has been reported to gtest. Change-Id: Id84c70c21c542716c9ee0c41492e8ff8788c4ef8
|
fc787ecd91127b2c8458afd94e5148e2ae51a1f5 |
|
10-Oct-2014 |
Ian Rogers <irogers@google.com> |
Enable -Wimplicit-fallthrough. Falling through switch cases on a clang build must now annotate the fallthrough with the FALLTHROUGH_INTENDED macro. Bug: 17731372 Change-Id: I836451cd5f96b01d1ababdbf9eef677fe8fa8324
|
611e1db69aff00f297d0d59c47af3c9ae563eb7b |
|
09-Oct-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Makefile cleanups. Also add the DEX2OAT_FLAGS to the generation of core.oat/core.art. Change-Id: I5d113fad460b2e14fc652816069adba29ca744b8
|
88c05693f090bc2562a530a4696082229de98840 |
|
04-Oct-2014 |
Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org> |
Respect USE_CLANG_PLATFORM_BUILD for art builds Without this patch, ART_TARGET_CLANG is set to false unconditionally. It should be set to whatever USE_CLANG_PLATFORM_BUILD requests, if the latter is set. Change-Id: I29c4397c308a1549c2097aad2c997fe732be27ac Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
|
d642a91052cd28735bf38cc4a79421ec24d1ee72 |
|
02-Oct-2014 |
Ian Rogers <irogers@google.com> |
Colorize warnings when building with clang. Change-Id: Icbb26779852d2fc2344bac597d43c4301646ac90
|
07140838a3ee44a6056cacdc78f2930e019107da |
|
01-Oct-2014 |
Ian Rogers <irogers@google.com> |
Enable -Wunreachable-code Caught bugs in DeoptimizeStackVisitor and assemble_x86 SIB encoding. Add UNREACHABLE macro to document code expected to be unreachable. Bug: 17731047 Change-Id: I2e363fe5b38a1246354d98be18c902a6031c0b9e
|
29b3841ad8c1c18ee7ddd2d8cab85806b3d62eaa |
|
13-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Set default visibility to protected Set default visibility of symbols to protected. This allows the linker to optimize internal calls and helps avoid plt calls. Make almost all assembly stubs hidden, as -fvisibility does not seem to apply to them. Change the assembly tests accordingly. Also allows to clean up previous hacks to avoid plt calls. Bug: 16974467 (cherry picked from commit 235e77bd9f19e4faefda109be40f8744f3a66f40) Change-Id: I9030dcf6116251f434f94a2b08e56e12085af652
|
235e77bd9f19e4faefda109be40f8744f3a66f40 |
|
13-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Set default visibility to protected Set default visibility of symbols to protected. This allows the linker to optimize internal calls and helps avoid plt calls. Make almost all assembly stubs hidden, as -fvisibility does not seem to apply to them. Change the assembly tests accordingly. Also allows to clean up previous hacks to avoid plt calls. Bug: 16974467 Change-Id: I9030dcf6116251f434f94a2b08e56e12085af652
|
1740eca19de8870a319033eacde16793ef391825 |
|
25-Jul-2014 |
Dehao Chen <dehao@google.com> |
Remove the per-project FDO support. Use the common FDO support from build/core. LOCAL_FDO_SUPPORT indicates if the module should enable FDO builds. Change-Id: I1eab8bf418b7ceb060eea18bdd304a06597af3d3
|
e1b3cc7059461027ec767c78ee21d1f0e17be69c |
|
24-Jul-2014 |
Stephen Hines <srhines@google.com> |
Increase limit to 2600 on host clang builds for frame size. Change-Id: I573e1bcdc7a935145e88077def9c90a5573d2e90
|
137e5b22fe6672134dd2c7bb11b2ab26aff4724a |
|
17-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update frame-larger-than limit to 2440 for new clang. Bug: 16362912 The latest version of clang is generating larger frames on elf_writer_quick.cc and dex2oat.cc than we had previously encountered. This change unblocks the LLVM rebase temporarily. Change-Id: I20d9f88959b91e0509e58f01c22532720225f44d
|
1159727e271ad3dbc5f84859e3f3c463842e821e |
|
24-Jul-2014 |
Stephen Hines <srhines@google.com> |
Increase limit to 2600 on host clang builds for frame size. Change-Id: I573e1bcdc7a935145e88077def9c90a5573d2e90
|
67a4338c5cc91ad3a8a3b99f06e1cf03b232d156 |
|
17-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update frame-larger-than limit to 2440 for new clang. Bug: 16362912 The latest version of clang is generating larger frames on elf_writer_quick.cc and dex2oat.cc than we had previously encountered. This change unblocks the LLVM rebase temporarily. Change-Id: I20d9f88959b91e0509e58f01c22532720225f44d
|
a59dd80f9f48cb750d329d4d4af2d99d72b484d1 |
|
03-Jul-2014 |
Alex Light <allight@google.com> |
Runtime can now be set to require relocation Add a pair of runtime flags -Xrelocate and -Xnorelocate that can force the runtime to require that all files that are run are relocated, to prevent attacks based on the known art base address. Add support for running patchoat on oat files compiled without an image. Change run-test to have new --prebuild and --relocate flags. Bug: 15358152 Change-Id: I91166c62dd1ab80e5cbcb7883a2cd0d56afca32d
|
997660dec8b10bba56276f35a9ee8d7ce9d62fc2 |
|
08-Jul-2014 |
Dehao Chen <dehao@google.com> |
Adds PGO_GEN and PGO_USE for libart and libart-compiler. PGO_GEN=device_path is used to build an instrumented binary. The profile will be stored in the specified path in device. PGO_USE=host_path is used to build an PGO-optimized binary. The profile should be pre-stored in the specified path in host. Bug: 16153819 Change-Id: Ib56f8707df009f290608ca66f669db06e65815c1
|
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
|
ea521dccd5dea59bcdfda7cc61cdd413152a8890 |
|
25-Jun-2014 |
Sebastien Hertz <shertz@google.com> |
Really use GCC for ARM64 Restores change https://android-review.googlesource.com/98911 lost in change https://android-review.googlesource.com/98456. Change-Id: Ie11f807c554dbfa812a70b8a183966f388018276
|