d3997bd98a808c6b166b9c53eef523fc805ea2c2 |
|
04-May-2016 |
Alex Light <allight@google.com> |
Make test for app-image loading. Bug: 26882072 (cherry picked from commit 2e960a075cd30a1fdfc31597c4a64f1fca026efd) Test: test/run-test --host --no-relocate 596-app-images Change-Id: I40a45e7944aec3a5ee28ef3d47e9881f61a7c9e6
|
e50a7b834b91564abc8dda32f2fbf8683e650df5 |
|
19-Jul-2016 |
Nicolas Geoffray <ngeoffray@google.com> |
JIT: Don't update the dex cache of another class loader. This only works for properly delegating class loaders. But Java allows non-delegating ones :( bug:29964720 test:612-jit-dex-cache (cherry picked from commit 491617a612c8a1c890e72d8ba780a151ddee8e11) (cherry picked from commit a2d7cbb44e570ec0a9064dc93f57441e6ab9e45a) (cherry picked from commit ae093d69f58c2b6257c3e5b82a32c135a1f33641) Change-Id: I73df55286a9bdb3f96963e0756e3a8b784aa9077
|
ae093d69f58c2b6257c3e5b82a32c135a1f33641 |
|
19-Jul-2016 |
Nicolas Geoffray <ngeoffray@google.com> |
JIT: Don't update the dex cache of another class loader. This only works for properly delegating class loaders. But Java allows non-delegating ones :( bug:29964720 test:612-jit-dex-cache (cherry picked from commit 491617a612c8a1c890e72d8ba780a151ddee8e11) (cherry picked from commit a2d7cbb44e570ec0a9064dc93f57441e6ab9e45a) Change-Id: I2523ce1fd4cd36dc83394d0f77ffc3f844e80c69
|
2dc77ecf375882f51ff7c09712c05b80e58abb6b |
|
02-Jun-2016 |
Nicolas Geoffray <ngeoffray@google.com> |
Fix ArtMethod::GetInvokeType for static methods on interfaces. And avoid calling ResolveMethod in the JIT, since it already knows that method. bug:29089267 bug:27521545 Change-Id: I5c5dae385804f1d2062defca459f69c26cdb4fef
|
12c08f03f65acc1c308491fc7ab6c57f682e2f24 |
|
13-May-2016 |
Jeff Hao <jeffhao@google.com> |
Make quick frames of proxy methods visited if they're constructors. Also adds a test case for getting annotations during moving GC. Bug: 28510922 Change-Id: Ic9b849cd16321da3a3a609182dcdea08782496f9
|
0b80b746f295469f143b3088741642114c6e2a7d |
|
29-Apr-2016 |
Mingyao Yang <mingyao@google.com> |
Fix assert failure in interpreter after deoptimization. There is code that does new String(chararr, 0, chararr_count); which under debuggable turns into a call into pNewEmptyString() plus a call into pNewStringFromChars_CII(). Even though we currently don't patch return pc in a runtime method, calling into pNewEmptyString() is special since it's hacked such that it's acting as if the caller calls into the java method StringFactory.newEmptyString() directly. So deoptimization can now happen at the NewEmptyString site and the assert is triggered since it's a new instance instead of an invoke instruction. The fix relaxes the assert to allow the special case. Bug: 28555675 (cherry picked from commit 504a69081f63818ca332ddaf54e8198448554538) Change-Id: Idbb159b5aa450df2344cd93ae74fef5f55bdc534
|
ba17f458e20d82b197536d62e1d61c5300da4932 |
|
06-May-2016 |
Mathieu Chartier <mathieuc@google.com> |
Fix libarttest to be non debug Previously both libarttest and libarttestd had debug enabled. This made it hard to know which one was loaded (couldn't look at kIsDebugBuild). Fixes test 136 with ART_TEST_RUN_TEST_NDEBUG configuration. Bug: 28406866 (cherry picked from commit 48b2b3e57e0510f549e9dc5c5a61f50eec697cf5) Change-Id: I92983f71374b211f96f5b346fec326ea8543f876
|
e5de54cfab5f14ba0b8ff25d8d60901c7021943f |
|
20-Apr-2016 |
Calin Juravle <calin@google.com> |
Split profile recording from jit compilation We still use ProfileInfo objects to record profile information. That gives us the flexibility to add the inline caches in the future and the convenience of the already implemented GC. If UseJIT is false and SaveProfilingInfo true, we will only record the ProfileInfo and never launch compilation tasks. Bug: 27916886 Change-Id: I6e4768dc5d58f2f85f947b276b4244aa11ce3fca
|
b331febbab8e916680faba722cc84b66b84218a3 |
|
05-Feb-2016 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Revert "Implement on-stack replacement for arm/arm64/x86/x86_64."" This reverts commit bd89a5c556324062b7d841843b039392e84cfaf4. Change-Id: I08d190431520baa7fcec8fbdb444519f25ac8d44
|
bd89a5c556324062b7d841843b039392e84cfaf4 |
|
05-Feb-2016 |
David Brazdil <dbrazdil@google.com> |
Revert "Implement on-stack replacement for arm/arm64/x86/x86_64." DCHECK whether loop headers are covered fails. This reverts commit 891bc286963892ed96134ca1adb7822737af9710. Change-Id: I0f9a90630b014b16d20ba1dfba31ce63e6648021
|
891bc286963892ed96134ca1adb7822737af9710 |
|
29-Jan-2016 |
Nicolas Geoffray <ngeoffray@google.com> |
Implement on-stack replacement for arm/arm64/x86/x86_64. High-level overview: - osr_method_threshold is used to know when to compile a method in osr mode (-> treat all loops as irreducible). - branch instructions in the compiler query whether they can jump to an osr method. - An osr entry point is found through the stack maps: if a stack map is duplicated in the CodeInfo, it is an osr entry point. Change-Id: Ifb39338cd281e2c7eccce67f4e18d46428be71e4
|
a42363f79832a6e14f348514664dc6dc3edf9da2 |
|
17-Dec-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Implement first kind of polymorphic inlining. Add HClassTableGet to fetch an ArtMethod from the vtable or imt, and compare it to the only method the profiling saw. Change-Id: I76afd3689178f10e3be048aa3ac9a97c6f63295d
|
fc7acf9f2eebac8e6d62b434b955b96409bf02f4 |
|
14-Jan-2016 |
Mathieu Chartier <mathieuc@google.com> |
Add test for calling into destroyed JNI env The test calls into ExceptionCheck with a destroyed JNI env and expects to never come back out. Bug: 18577101 Change-Id: I96832c78d20de4a7d8a9ddf2d0636f08fc4ed9f2
|
8f2795168327afd8653f6c97c387414e509f8754 |
|
15-Dec-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Remove reference of deleted file. Change-Id: Ib6d03a8c57a746e738fc849deee800d28da82485
|
226501b317e148aa8a8983355e85acb59c1eee83 |
|
11-Dec-2015 |
Calin Juravle <calin@google.com> |
Revert "Revert "Enable profiled guided compilation in dex2oat"" This reverts commit 2306ae0d412cc53cbf64877e4a8c37292dd907d8. Change-Id: I50640009c2fac88ea703812b76549a0e8a6d7584
|
2306ae0d412cc53cbf64877e4a8c37292dd907d8 |
|
11-Dec-2015 |
Calin Juravle <calin@google.com> |
Revert "Enable profiled guided compilation in dex2oat" The test still have some flakiness in it which didn't reproduce locally. This reverts commit 500c9be1f261a8a95ae7a25f4f8084f43207f313. Change-Id: I132aff62bf03c2f926aafde6869707573bae9b36
|
500c9be1f261a8a95ae7a25f4f8084f43207f313 |
|
25-Nov-2015 |
Calin Juravle <calin@google.com> |
Enable profiled guided compilation in dex2oat - add parsing of the profile info saved during JIT. - don't compile methods which are not part of the profile info. - delete old profile hooks. - add test for reading/writing profile. The test is disable in: * interpreter modes: the test needs JIT. * no-dex2oat/no-prebuild: we only save profiling info for the primary oat file. In these modes we don't create oat files and thus nothing is saved. Bug:26080105 Change-Id: Ifdc63dc9d4b537fc79e54c3edc3ae3a462bc30fb
|
9fdb129b90c9a985f606f9d95627b4852171dc11 |
|
02-Dec-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Enable profiled guided compilation in dex2oat" Test has flakes: +art F 30865 30865 art/runtime/java_vm_ext.cc:466] JNI DETECTED ERROR IN APPLICATION: input is not valid Modified UTF-8: illegal start byte 0x80 +art F 30865 30865 art/runtime/java_vm_ext.cc:466] string: '��gy�' +art F 30865 30865 art/runtime/java_vm_ext.cc:466] input: '<0x80> 0xd8 0x67 0x79 0x8e 0x7f' +art F 30865 30865 art/runtime/java_vm_ext.cc:466] in call to NewStringUTF +art F 30865 30865 art/runtime/java_vm_ext.cc:466] from java.lang.String Main.getProfileInfoDump(java.lang.String, java.lang.Class, java.lang.Class) This reverts commit 27e17fd81cc30e16e86c9c15498cae7f920c9dfe. Change-Id: Id224b5970c3620c4c71fc0d39ed4a2e4755e5f29
|
51f01a2e2829dc59da4d0869e35aac6ba63a2cea |
|
03-Dec-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Fix test path in libarttest.mk" Test has flakes: +art F 30865 30865 art/runtime/java_vm_ext.cc:466] JNI DETECTED ERROR IN APPLICATION: input is not valid Modified UTF-8: illegal start byte 0x80 +art F 30865 30865 art/runtime/java_vm_ext.cc:466] string: '��gy�' +art F 30865 30865 art/runtime/java_vm_ext.cc:466] input: '<0x80> 0xd8 0x67 0x79 0x8e 0x7f' +art F 30865 30865 art/runtime/java_vm_ext.cc:466] in call to NewStringUTF +art F 30865 30865 art/runtime/java_vm_ext.cc:466] from java.lang.String Main.getProfileInfoDump(java.lang.String, java.lang.Class, java.lang.Class) This reverts commit 95f51a71d28be844e68fe3dda3ed0bba6b99f8ad. Change-Id: I32ae3ad8e2e6c4eed1d3f79e5498709c43afadcb
|
95f51a71d28be844e68fe3dda3ed0bba6b99f8ad |
|
02-Dec-2015 |
Calin Juravle <calin@google.com> |
Fix test path in libarttest.mk Change-Id: Ied98b5a407048d173e66f593fe0685d02a54d0f8
|
27e17fd81cc30e16e86c9c15498cae7f920c9dfe |
|
25-Nov-2015 |
Calin Juravle <calin@google.com> |
Enable profiled guided compilation in dex2oat - add parsing of the profile info saved during JIT - don't compile methods which are not part of the profile info. - delete old profile hooks Change-Id: I45a13c3aeb36265d335e57cd160b9ea0fab3cbb5
|
eb0c7d853920e312cc6ac81bc4caba80804638c5 |
|
03-Nov-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Add another test for wide stores fix in optimizing. Change is https://android-review.googlesource.com/#/c/183273/ Change-Id: I8013795dfa67e8e03f51a13dfa3016b89d3b56b7
|
636b9252af8d8848dbf8f30b7e9638867b62c791 |
|
01-Aug-2015 |
Mingyao Yang <mingyao@google.com> |
Support deoptimization only to set vreg This CL removes the old API that was used to update vreg. We now rely exclusively on deoptimization to change the value of a vreg (mainly from the debugger). This allows to have only one mechanism working with both Quick and Optimizing compilers. It also remove run-test 455-set-vreg which was the only user of the old API. This CL also renames StackVisitor::SetVReg[Pair]FromDebugger to StackVisitor::SetVReg[Pair] to reflect that change. Bug: 25428216 Change-Id: Ib09510185280dbd0f6d02c52549ae9671c187e32
|
f015c2f4835a9985a8b31cfc810129b69865a6c4 |
|
09-Sep-2015 |
Andreas Gampe <agampe@google.com> |
ART: Add missing GetInterfaceMethodIfProxy Add missing uses of GetInterfaceMethodIfProxy in reflection code. Add a test case for a JNI call to a proxy method. Bug: https://code.google.com/p/android-developer-preview/issues/detail?id=2973 Bug: 23886441 (cherry picked from commit e80673245c0433a71a4930e460be5dc0920885b2) Change-Id: I5b66b64b5561fcee15d0314707d67e8abc02ce5b
|
89df7bfc41a4de9685f84e7db07f77db3fd485fc |
|
30-Sep-2015 |
Andreas Gampe <agampe@google.com> |
ART: Refactor libarttest C++ code Refactor some libarttest JNI functions into a common directory, so they can be easily used by multiple tests without code duplication. This is preparation for better deoptimization state testing. Change-Id: I43f7340b699b26930aabfd665c707e0485b17fc8
|
598302ac91fd3e990f50e1aa530c3ad61d6d946e |
|
23-Sep-2015 |
Mathieu Chartier <mathieuc@google.com> |
Call JNI_OnUnload when class loaders get collected Added test case to 141-class-unload. Bug: 22720414 Change-Id: I0575fae72521520a17587e8b0088bf8112705ad8
|
563e9846711aa1830bc7a34499204091032349fb |
|
13-Sep-2015 |
Mathieu Chartier <mathieuc@google.com> |
Convert ART benchmarks into caliper benchmarks Move the ART benchmarks into the benchmarks directory and make them caliper friendly. To run you need to build libartbenchmark.so and sync it then use vogar --benchmark. Bug: 24055147 Change-Id: Idc9caf8dc8022190d737840ba0eb9e356f9872cb
|
4b1e0f417572eab92f1b8e2f921d2aba8a9fbd8c |
|
05-Sep-2015 |
Mathieu Chartier <mathieuc@google.com> |
Add benchmark for ScopedPrimitiveArray TODO: Make this into a caliper benchmark. Bug: 19664826 Change-Id: If1484a68cc62603f1d216b1662ca55cceac1d619
|
e80673245c0433a71a4930e460be5dc0920885b2 |
|
09-Sep-2015 |
Andreas Gampe <agampe@google.com> |
ART: Add missing GetInterfaceMethodIfProxy Add missing uses of GetInterfaceMethodIfProxy in reflection code. Add a test case for a JNI call to a proxy method. Bug: https://code.google.com/p/android-developer-preview/issues/detail?id=2973 Bug: 23886441 Change-Id: I5b66b64b5561fcee15d0314707d67e8abc02ce5b
|
de286fdcb4d203438b4b49c22c8a4a24d08ad14d |
|
04-Sep-2015 |
Mathieu Chartier <mathieuc@google.com> |
Address some leftover comments Change-Id: Ia8d01c8b1c10d23efdd94aa76289a1ed3373957c
|
c3fdf90703e7d4d19242c6170c5bb2d681186564 |
|
01-Jul-2015 |
Man Cao <manc@google.com> |
Add JNI state change performance test This test is only for measuring the JNI performance. The test prints timing information on each run so we do not compare stdout with expected.txt. This test is mostly intended to be run manually with the run-test script using the -O flag. Change-Id: I68aa1473c425d9ef6f00796bdb47bea2a956d011
|
db00eaf64e94ab1b4289952699c3b81f73ca406a |
|
01-Sep-2015 |
Mathieu Chartier <mathieuc@google.com> |
Add GC coverage test for moving GC Adds testing coverage for collector transitions and homogeneous space compaction. Bug: 10808403 Change-Id: Ia79fecb47c33fc95d940243d6cb1068e9ee9dc9a
|
031768a340634e2dbdec1aebb2bb3fe509b2f1f6 |
|
27-Aug-2015 |
Mathieu Chartier <mathieuc@google.com> |
Add non debug version of libarttest We now pass the libarttest as an argument to the java program. This enables using libarttestd by default and libarttest when -O is specified. Change-Id: I0de1ae01e2bb5f7b9c7fd7487b6cb55051f60657
|
a727e372d8f6929cd30b983f6969c7a50fc83bb6 |
|
25-Aug-2015 |
Andreas Gampe <agampe@google.com> |
ART: Balanced locking Change the verifier to check for balanced locking. When balanced locking can't be guaranteed, use a new failure kind to punt to the interpreter. Add smali tests, with JNI code to check the balanced-locking result. Bug: 23502994 Change-Id: Icd7db0be20ef2f69f0ac784de43dcba990035cd8
|
a26cb57f46fd3f27a930d9d688fe8670c1f24754 |
|
23-Apr-2015 |
David Srbecky <dsrbecky@google.com> |
ART stack unwinding fixes for libunwind/gdb/lldb. dex2oat can already generate unwinding and symbol information which allows tools to create backtrace of mixed native and Java code. This is a cherry pick from aosp/master which fixes several issues. Most notably: * It enables generation of ELF-64 on 64-bit systems (in dex2oat, C compilers already produce ELF-64). Libunwind requires ELF-64 on 64-bit systems for backtraces to work. * It enables loading of ELF files with dlopen. This is required for libunwind to be able to generate backtrace of current process (i.e. the process requesting backtrace of itself). * It adds unit test to test the above (32 vs 64 bit, in-proces vs out-of-process, application code vs framework code). * Some other fixes or clean-ups which should not be of much significance but which are easier to include to make the important CLs cherry-pick cleanly. This is squash of the following commits from aosp/master: 7381010 ART: CFI Test e1bbed2 ART: Blacklist CFI test for non-compiled run-tests aab9f73 ART: Blacklist CFI test for JIT 4437219 ART: Blacklist CFI test for Heap Poisoning a3a49fe Switch to using ELF-64 for 64-bit architectures. 297ed22 Write 64-bit address in DWARF if we are on 64-bit architecture. 24981a1 Set correct size of PT_PHDR ELF segment. 1a146bf Link .dynamic to .dynstr 67a0653 Make some parts of ELF more (pointer) aligned. f50fa82 Enable 64-bit CFI tests. 49e1fab Use dlopen to load oat files. 5dedb80 Add more logging output for dlopen. aa03870 Find the dlopened file using address rather than file path. 82e73dc Release dummy MemMaps corresponding to dlopen. 5c40961 Test that we can unwind framework code. 020c543 Add more log output to the CFI test. 88da3b0 ART: Fix CFI test wrt/ PIC a70e5b9 CFI test: kill the other process in native code. ad5fa8c Support generation of CFI in .debug_frame format. 90688ae Fix build - large frame size of ElfWriterQuick<ElfTypes>::Write. 97dabb7 Fix build breakage in dwarf_test. 388d286 Generate just single ARM mapping symbol. f898087 Split .oat_patches to multiple sections. 491a7fe Fix build - large frame size of ElfWriterQuick<ElfTypes>::Write (again). 8363c77 Add --generate-debug-info flag and remove the other two flags. 461d72a Generate debug info for core.oat files. Bug: 21924613 Change-Id: I3f944a08dd2ed1df4d8a807da4fee423fdd35eb7
|
32c9ea5c03b1b22f36233ec6c24eca87c77f9157 |
|
12-Jun-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Use the caller's class loader when walking inlined frames. We should not use the outer most class loader. JLS specification is to use the caller's class loader. Change-Id: I736f36c9b6a44fab213ad0c01cf1efc975b9b3a6
|
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
|
82566091466b5b3f529168681ecfe3e739ef08b5 |
|
19-May-2015 |
Andreas Gampe <agampe@google.com> |
ART: Fix RegisterNative order First check for both direct and virtual methods in the current class, then move to the parent. Optimize registration by checking first whether the current method under test is native. This slows down registering implementations in parent classes. Add a CheckJNI warning for this. Add a run-test to check the behavior. Fix host comparison testing. Bug: 19569721 (cherry picked from commit 3f1dc56914177993b1b018bf21ce7d39d7feecda) Change-Id: I61e77117d96310632aad123d7f1279d0f834dc99
|
3f1dc56914177993b1b018bf21ce7d39d7feecda |
|
19-May-2015 |
Andreas Gampe <agampe@google.com> |
ART: Fix RegisterNative order First check for both direct and virtual methods in the current class, then move to the parent. Optimize registration by checking first whether the current method under test is native. This slows down registering implementations in parent classes. Add a CheckJNI warning for this. Add a run-test to check the behavior. Fix host comparison testing. Bug: 19569721 Change-Id: I61e77117d96310632aad123d7f1279d0f834dc99
|
7381010d4ea299f1aaf7c86e93341d12f5e9d2c4 |
|
23-Apr-2015 |
Andreas Gampe <agampe@google.com> |
ART: CFI Test Add a run-test that unwinds the process and a forked process to see whether CFI information is enough to see Java methods. In-process unwinding is turned off for now, as it requires dlopen for oat files. Black-listed for 64-bit, as libunwind expects 64-bit ELF files. Change-Id: I9fe53e448b6cb2ea3d516526c42596dcc2446d98
|
d8126bef62df7f40f2e6abc74004f52e664daf45 |
|
27-Mar-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Fix locations at environment uses. We were too agressive in not recording environment uses when the instruction was not of type object. We have to record the use to the use list of an interval, but it should not affect the live ranges of that interval. Change-Id: Id16fb7cc06f14083766d408a345837793583b6ea
|
915b9d0c13bb5091875d868fbfa551d7b65d7477 |
|
11-Mar-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Tweak liveness when instructions are used in environments. Instructions remain live when debuggable, but only instructions with object types remain live when non-debuggable. Enable StackVisitor::GetThisObject for optimizing. Change-Id: Id87b2cbf33a02450059acc9993995782e5f28987
|
e0fe7ae36180863e45cbb9d1e6e9c30b1b1a949c |
|
09-Mar-2015 |
Nicolas Geoffray <ngeoffray@google.com> |
Make the SSA builder honor the debuggable flag. This requires to properly type phis that are only used by environments, and discard phis with incomptable types. The code generators do not handle these conflicting types. In the process, ensure a phi has a type that does not depend on the order of the inputs (for example (char, short) -> short), and set int for int-like types. We can refine this later. Change-Id: I60ab601d6d00b1cbf18623ee4ff1795aa28f84a1
|
7cde48c56df5b57aed524cce44c902bc720f2d6c |
|
20-Jan-2015 |
Sebastien Hertz <shertz@google.com> |
Stack support for Optimizing compiler Allows to read/write DEX registers from physical register or stack location when the method is compiled with the Optimizing compiler. Required fixing arm and arm64 JNI compiler by saving floating point registers. Bug: 18547544 Change-Id: I401579f251d1c0a130f6cf4a93a960cdcd7518f5
|
f36df544d421aa60fc4cf8a5db6356b45f97953b |
|
29-Jan-2015 |
Dan Albert <danalbert@google.com> |
Remove libcxx.mk cruft. This is on by default now. No need to leave it in the makefiles. Change-Id: I20eab7426da4bbbf8b70ffc5b9af7b97487d885d
|
a0b34518cf3f3801407624d95846f8ff90c05d25 |
|
07-Oct-2014 |
Narayan Kamath <narayan@google.com> |
Fix thread priorities for unstarted threads. Calls to Thread.setPriority for unstarted threads now behave similar to dalvik. Note that there's still some inconsistent behaviour carried over from dalvik. - high priority threads from bg_non_interactive processes are not always moved to the SP_FOREGROUND cgroup. - we do not attempt to adjust the cgroup of a native thread that's attaching. Note that on android, the system_server will change the cgroups for all running threads in a process when it moves into the foreground and background. It's by design that threads in a background process can request to be moved to the foreground by setting a higher priority. bug: 17893086 (cherry picked from commit 1bd326a5e2aaff06a5bcae9cb2c42a4e8de31401) Change-Id: Iad362f7c5c8697c349f2b6d7fcba69a4e141883e
|
1bd326a5e2aaff06a5bcae9cb2c42a4e8de31401 |
|
07-Oct-2014 |
Narayan Kamath <narayan@google.com> |
Fix thread priorities for unstarted threads. Calls to Thread.setPriority for unstarted threads now behave similar to dalvik. Note that there's still some inconsistent behaviour carried over from dalvik. - high priority threads from bg_non_interactive processes are not always moved to the SP_FOREGROUND cgroup. - we do not attempt to adjust the cgroup of a native thread that's attaching. Note that on android, the system_server will change the cgroups for all running threads in a process when it moves into the foreground and background. It's by design that threads in a background process can request to be moved to the foreground by setting a higher priority. bug: 17893086 Change-Id: I1662982b1c7b3ac509698e2e12c9768d082c8053
|
cf7f19135f0e273f7b0136315633c2abfc715343 |
|
23-Oct-2014 |
Ian Rogers <irogers@google.com> |
C++11 related clean-up of DISALLOW_.. Move DISALLOW_COPY_AND_ASSIGN to delete functions. By no having declarations with no definitions this prompts better warning messages so deal with these by correcting the code. Add a DISALLOW_ALLOCATION and use for ValueObject and mirror::Object. Make X86 assembly operand types ValueObjects to fix compilation errors. Tidy the use of iostream and ostream. Avoid making cutils a dependency via mutex-inl.h for tests that link against libart. Push tracing dependencies into appropriate files and mutex.cc. x86 32-bit host symbols size is increased for libarttest, avoid copying this in run-test 115 by using symlinks and remove this test's higher than normal ulimit. Fix the RunningOnValgrind test in RosAllocSpace to not use GetHeap as it returns NULL when the heap is under construction by Runtime. Change-Id: Ia246f7ac0c11f73072b30d70566a196e9b78472b
|
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
|
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
|
cd4380cb1ef33866be418795493a5289f0b3bd3a |
|
29-Aug-2014 |
Dave Allison <dallison@google.com> |
Fix master-art-host build by removing flakey test (temporarily) Change-Id: I8c97e7a5339a6f7f5984a58ee1a7b41eab3cb2b1
|
91a8366fb161725d40c99ce6330ab5c2ca758b56 |
|
29-Aug-2014 |
Dave Allison <dallison@google.com> |
Fix signal chain to allow for signal() call to be used Bug: 17320614 Change-Id: Ia917307fb1b593644f524518e11e295b3c64be01
|
507e6180ad271eb719c67ce7394852c731d975a5 |
|
19-Aug-2014 |
Alex Light <allight@google.com> |
Support running without a boot image. Bug: 17000769 (cherry picked from commit 64ad14dbe2225441fb7734bf6d89358d96692eea) Change-Id: I6404d5050c8a2f4ee6e70d58532eb25ee9de248e
|
64ad14dbe2225441fb7734bf6d89358d96692eea |
|
19-Aug-2014 |
Alex Light <allight@google.com> |
Support running without a boot image. Bug: 17000769 Change-Id: I6404d5050c8a2f4ee6e70d58532eb25ee9de248e
|
0a112bbbcd761c749c346bfec0ec39c1ef37a590 |
|
14-Aug-2014 |
Alex Light <allight@google.com> |
Make apps able to run with a failing patchoat Bug: 17000769 (cherry picked from commit 9dcc4572949f6a8231a1b4ed859676ba6f411726) Change-Id: I0a1a4dc7f5d4bb268530840302ecfb1555231e05
|
9dcc4572949f6a8231a1b4ed859676ba6f411726 |
|
14-Aug-2014 |
Alex Light <allight@google.com> |
Make apps able to run with a failing patchoat Bug: 17000769 Change-Id: I0a1a4dc7f5d4bb268530840302ecfb1555231e05
|
9c290012b7f505ae1943ab87236f775b97a46e2d |
|
22-Jul-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Execute an application even when dex2oat crashes. Bug: 17000769 (cherry picked from commit 4fcdc94d22a4608e355aa8df36240181149d10e8) Change-Id: Iccb1fec94fe64ce4c3097510952f275482b86aa9
|
4fcdc94d22a4608e355aa8df36240181149d10e8 |
|
22-Jul-2014 |
Nicolas Geoffray <ngeoffray@google.com> |
Execute an application even when dex2oat crashes. Bug: 17000769 Change-Id: Iffeb582862a5e794b6c7364c7ec2368cfd0f2214
|
1c83cbc4a817acbd7f9abb5b29a2d418a958e6a1 |
|
23-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Make run tests out of oat tests Transforms all former oat tests into run tests. Change-Id: I190dd39456454c36e5538a2c044d993965a67533
|
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
|