summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-05-08Avoid some read barriers in ClassTable. Vladimir Marko
And clean up ClassTable. Test: m test-art-host-gtest Test: testrunner.py --host --interpreter Bug: 119486698 Change-Id: Ie413bc5a56eb548352ae1fed0976b75c44e0c0d4
2019-05-07ART: Add LUCI notifier email template Andreas Gampe
Customize the email sent by LUCI to include the status in the title and a summary in the body. Test: manual Change-Id: I26deeb5a8a567369cdcbe159b636b2f328a7b61a
2019-05-07Actually put the 37h in seconds numbers. Nicolas Geoffray
Test: N/A Change-Id: I3f93b7b1072e6f0396f9e376882e76fc4fdec10c
2019-05-07Make the two timeouts at most 47. Nicolas Geoffray
Test: N/A Change-Id: Iea49baf8c6a6812ad76d1c848b8b0345e1948fcb
2019-05-07Increase expiration timeout for luci. Nicolas Geoffray
Test: N/A Change-Id: I8778a84c85be073249c996d58a4f0757228b23f9
2019-05-07ART: Disable check for Mac Andreas Gampe
Disable for investigation. Bug: 132163727 Test: m Change-Id: I7164747452598cfb333511651fb1058b48464f76
2019-05-07Create symlink as a side effect Jiyong Park
Symlinks aren't supported directly in the build graph and thus they must be side effects of some other action. The symlinks in the symbols directory is now created as a side effect of building out/target/product/<product>/obj/FAKE/com.android.runtime_intermediates/symlink.timestamp file. For more details, please refer to https://android-review.googlesource.com/c/platform/art/+/930848/5/Android.mk#392 Bug: 120846816 Test: m dist with marlin (flattened) and blueline (non-flattened) examine symbols.zip file and check that unstripped shared libraries are found under /apex/com.android.runtime directory Change-Id: I408eea6b91d4daf5e873c479fe5f0a2faf8a859e
2019-05-07Blacklist test while failing. Nicolas Geoffray
Bug: 132100102 Change-Id: I06440aa0e577176ac2280534ef446fc06d3f46a8
2019-05-06Track libziparchive API change. Elliott Hughes
Bug: http://b/129068177 Test: treehugger Change-Id: I6632e246bf76f535a14de5e521bcdf65481ef544
2019-05-06Revert "Correctly handle thread deopt with thread-specific JVMTI events" Alex Light
This reverts commit c8c7e0659a76a951f3ab110ed9b7f37777448d36. Test: none. Reason for revert: Causes art-tracing to flake/fail pop-frame tests. Bug: 131865028 Change-Id: I16bda461da94405f372b6b0be54ac4b4efb08fda
2019-05-03Correctly handle thread deopt with thread-specific JVMTI events Alex Light
We were incorrectly treating some JVMTI events as still requiring global deopt even though that requirment had been lifted. This meant that if one sets thread-specific event notification requests on multiple threads only some of them will actually be deoptimized. This could cause events to be missed if the relevant methods/threads had been jitted. Test: ./test.py --host --jit-on-first-use Test: ./test.py Bug: 131865028 Change-Id: Ib196faa635e61262eea7ccc576dc0d700b3e7eff
2019-05-03Add -verbose:interpreter Mathieu Chartier
Adds a mode to track what methods are being interpreted. Good for debugging interpreter usage during app startup. Bug: 130185360 Test: test-art-host Change-Id: I8119f79e534cdad7d6a72d4f01115a288e9c8d9a
2019-05-03Check for null before using AddLocalReference in ti_method Alex Light
We could incorrectly calling AddLocalReference with a null pointer during the JVMTI GetLocalObject call. This would cause a check failure because nulls are not allowed in the table. Test: ./test.py --host Test: Manual Bug: 131856650 Change-Id: Iabc283061c8f3ca8b3f7421ef9de83bb67605402
2019-05-03Free classes after objects for memory tool Mathieu Chartier
Since the memory tool space calls Object::SizeOf, we need to free classes after instances to prevent reading stale data. Bug: 131542326 Test: art/test/testrunner/run_build_test_target.py -j50 art-gtest-heap-poisoning Change-Id: I4b0583b2456e8db23ae3cd19ef6495bff955e7dc
2019-05-03Fix mac build: Enable libdexfile_external (attempt 2) David Srbecky
Bug: 131709594 Change-Id: Id9110adfcb42a94701eccc421ca7d9cceacd4cd2
2019-05-03Fix build rules. Nicolas Geoffray
The (dir $@) is a shared directory that could collide with another rule. So instead prefix temporary files with $@_. Also remove verbose flag to the zipalign command. Test: m Change-Id: Ie93e2b486095ee7d8a007dc15dd393f26bab03e8
2019-05-03jitzygote: Special case system server to keep the JIT queue at fork. Nicolas Geoffray
Temporary measure until we have a system server specific profile. Test: m Bug: 119800099 Change-Id: I58da2d96ec355e26f872b67b021c3b3dba26e2b4
2019-05-02ART: Small iwyu Andreas Gampe
Forward-declare code item accessors in ArtMethod. Test: mmma art Change-Id: Ib4b2f274130416ee07e873ec32cef98d10c95838
2019-05-02ART: Address b/120022597 Andreas Gampe
Follow-up to commit 4835d21a33b783869820c928bfc0a16f249d65f2. Clarify template parameter. Bug: 120022597 Test: m test-art-host Change-Id: I0d7c5503bb0bb0bf87baf3d05ae284e85899fe1f
2019-05-02ART: IWYU for HiddenApi domain Andreas Gampe
Make the domain a known char storage and forward-declare in DexFile to significantly reduce the list of transitive includes. Fix up missing includes. Test: mmma art Change-Id: I9d43113e982fc0b509fd9a8168c6788e9431500a
2019-05-02ART: Small iwyu Andreas Gampe
ArtField doesn't need dex_file_types. This in turn exposes a missing include in modifiers. Test: mmma art Change-Id: I318e2919121f350a0447f6fc0814d81779fd9cc5
2019-05-02Only write stacks traces to tombstoned Joe Onorato
When writing to tombstoned fails, do not write stack traces to the log. The failure is a likely symptom of a more fundamental issue. (cherry picked from commit 6cca24104ae06c7cd948e466af127bf1bc620f81) Test: make Bug: 130025619 Change-Id: I3c7e895dff7d9df5f8d14c1b1235c1c943d32295 Merged-In: I3c7e895dff7d9df5f8d14c1b1235c1c943d32295
2019-05-02Define SimplyNoted in smali to retain build annotations. Ian Zerny
Test: art/test/testrunner/testrunner.py -b --host -t 005-annotations Bug: 130028992 Change-Id: I624f8afbfe4c4c1cd3f326f6e28d5967cf4ce2c1
2019-05-02Reland: Make default namespace an "alias" for runtime rather than the other Martin Stjernholm
way around. This relands http://r.android.com/952236: There isn't a way to make a namespace properly an alias for another - just adding a link with allow_all_shared_libs true doesn't quite do it since links aren't transitive. That meant that "runtime" in the previous setup did not pass on links to "default" when "classloader-namespace" in libnativeloader added links to "runtime". With this we link from "default" to "runtime" instead, and only APEX binaries will start in "default" - nothing else should create links to that namespace when this config is in use. This also ensures no libraries are actually loaded in "default", which could otherwise create duplicate instances with libraries loaded in "runtime". Also make the "platform" namespace visible, to work with android_link_namespace() in the classloader-namespace setup, and update the reason why those namespaces need visibility. Test: Flash and boot Test: Run a target run test similar to art/test/run-test: Push libarttest.so to the test directory, then ANDROID_ADDITIONAL_PUBLIC_LIBRARIES=libc++.so:libbacktrace.so:libbase.so:libnativehelper.so:libart.so:libdexfile.so:libprofile.so:libartbase.so \ dalvikvm -Djava.library.path=. -cp 203-multi-checkpoint.jar Main arttest Test: lunch aosp_cf_x86_phone-eng; atest android.compilation.cts.AdbRootDependentCompilationTest#testCompile_curProfile \ com.android.cts.dexmetadata.InstallDexMetadataHostTest#testProfileSnapshotAfterInstall \ installd_dexopt_test Bug: 130293232 Bug: 121117762 Change-Id: Ica4cea3103c061e01bdcbecce4dc1cb9690ee186
2019-05-02Explicitly compile debug versions of libdexfile_external. Nicolas Geoffray
Workaround until we properly support an apex in go/art-buildbot and go/lem. Test: m Change-Id: Id9900e847223c0e900a211b7a4e551e93f82c81f
2019-05-02Go to native for image decompression thread pool wait Mathieu Chartier
We should not be holding the mutator lock since that will maybe cause DCHECK failures. Bug: 131318971 Test: test-art-host Change-Id: I14064b06adb9ec0e83af6afb70320f184fd2aed0
2019-05-01Have the ART Buildbot and Golem generate timezones files in /system/etc/tz. Roland Levillain
Have `tools/buildbot-build.sh --target` and Golem's target build rule (`build-art-target-golem`) build targets `tzdata-art-test`, `tzlookup.xml-art-test`, and `tz_version-art-test`, copying timezones prebuilt files into /system/etc/tz, so that they can be found even if the Runtime APEX is not available, by setting the environment variable `ART_TEST_ANDROID_RUNTIME_ROOT` to "/system" on device. This is a temporary change needed until the ART Buildbot fully supports the Runtime APEX. Test: Rely on the ART Buildbot and Golem. Bug: 131667225 Bug: 121117762 Bug: 129332183 Bug: 119293618 Bug: 131239046 Change-Id: Ib9f748dea155b54eec0d000dd9e0f0dfb29ca626
2019-05-01Add libdexfiled_external to the debug Runtime APEX. Martin Stjernholm
Follow up to http://r.android.com/943476. This library is only available in debug builds of the Runtime APEX. Test: Flash and boot with eng build Test: adb shell ls apex/com.android.runtime/lib\*/libdexfiled_external.so Change-Id: Ib6bbfacc19416ac1221a962f111b3937e61193e7
2019-05-01Remove the dual debug/ndebug run on 018-stack-overflow. Nicolas Geoffray
Testrunner should drive this. Having individual tests do this puts them in the situation of double loading debug and ndebug libraries. Test: 018-stack-overflow Change-Id: I4091f67080c08167dbe7a44605540e729cae040a
2019-05-01hiddenapi, class2greylist: Add support for greylist-max-q David Brazdil
Test: set maxTargetSdk=Q on an API, compile, check hiddenapi-flags.csv Change-Id: I05b3418d76bdb2ef34a717e199abdda73f73ffd7
2019-05-01Fix mac build: Enable libdexfile_external David Srbecky
Change-Id: I8d905bc1e2aeec7a5610fac8b60bbcd5c9b1e8aa
2019-04-30Add debug version of libnativebridgetest.so David Srbecky
We need both versions and load the correct one. Test: test.py -r --ndebug -t 115 Test: test.py -r --debug -t 115 Change-Id: I189d4d92a7eea63d6ebd4040d12926bc0c3f1154
2019-04-30Make compiling an apex image explicit. Nicolas Geoffray
And when compiling an apex image, discard dex files not present in an apex. Test: m Bug: 119800099 Change-Id: Ie91c5b8d271783f04e4c1501f315a3ec59137475
2019-04-30Update ahat_api.txt Tobias Thierer
http://r.android.com/939394 changed the API but forgot to update this file. Test: make update-api Change-Id: I774ca4bc94ef578b626a97bf9a79b96295ff0b5c
2019-04-30Update induction ranges in superblock cloner. Nicolas Geoffray
Because loop unrolling is part of a general loop optimization pass, it needs to update induction ranges as it will invalidate its instruction cache with new instructions. Bug: 131174583 Test: 696-loop Change-Id: Id3628efe316b58f69abbd9ebd43e891a8e42529f
2019-04-30Fix debug/release dependencies on libartbase David Srbecky
We load both the debug and release build when running tests. The different builds have different layout of some classes, which can currently result in random native heap corruptions. Fix the build dependencies to avoid the double loading, and add runtime check to avoid it in the future again. Test: test.py -b --host --64 Test: test.py -r --target -t 001-HelloWorld Change-Id: Ie62f91dc06209c91e25ba5f11c9d61243ac7579d
2019-04-30Add more logging to 137-cfi David Srbecky
Trying to diagnose a rare flake. Bug: 111411286 Test: test.py --host -b -r -t 137-cfi Change-Id: Icfd106f0d1fc03b22f3f4e85c6f2d2ee152e1be6
2019-04-30Revert "Make default namespace an "alias" for runtime rather than the other way" Martin Stjernholm
This reverts commit 5fe1b23d54303a1adf91b644f26f6df066e175ed. Reason for revert: Breaks android.compilation.cts.AdbRootDependentCompilationTest#testCompile_curProfile and others: http://g/art-team/R2nEDA1Ka_s Change-Id: I6bddceda13239fc6e27748128352c6954eaab660
2019-04-29Disable 570-checker-osr-locals for trace tests. David Srbecky
Same as 570-checker-osr Bug: 130313339 Test: test.py -r --host --trace -t 570 Change-Id: I1be08d72b569710c387e623d3b0df9a6a3a08465
2019-04-29Fix DWARF line-number generation for JITed methods. David Srbecky
Don't strip, repack or compress debug-info if explicitly requested by the developer (using the -g compiler flag). If enabled, the DWARF debug info has about 1:1 size overhead relative to JIT code + data. Bug: 131422204 Test: Check that gdb shows line numbers for JITed method. Test: Hard-code always-enable generation and run maps. Change-Id: If06de8ae2317af4d57d84e8a8bfae86a597dd4e4
2019-04-29Handle empty uncompressed and aligned dex file in an archive. Nicolas Geoffray
Return an error message for it. Callers expect it. Test: dex2oat_test Bug: 131175467 Change-Id: I55c05f0a9c48cea252869f88740c6338b5b28b1f
2019-04-29Make default namespace an "alias" for runtime rather than the other way Martin Stjernholm
around. There isn't a way to make a namespace properly an alias for another - just adding a link with allow_all_shared_libs true doesn't quite do it since links aren't transitive. That meant that "runtime" in the previous setup did not pass on links to "default" when "classloader-namespace" in libnativeloader added links to "runtime". With this we link from "default" to "runtime" instead, and only APEX binaries will start in "default" - nothing else should create links to that namespace when this config is in use. This also ensures no libraries are actually loaded in "default", which could otherwise create duplicate instances with libraries loaded in "runtime". Also make the "platform" namespace visible, to work with android_link_namespace() in the classloader-namespace setup, and update the reason why those namespaces need visibility. Test: Flash and boot Test: Run a target run test similar to art/test/run-test: Push libarttest.so to the test directory, then ANDROID_ADDITIONAL_PUBLIC_LIBRARIES=libc++.so:libbacktrace.so:libbase.so:libnativehelper.so:libart.so:libdexfile.so:libprofile.so:libartbase.so \ dalvikvm -Djava.library.path=. -cp 203-multi-checkpoint.jar Main arttest Bug: 130293232 Bug: 121117762 Change-Id: I0f0b58aac3ec869b42510f9ef6af7cb26667de96
2019-04-29Enable notifications for android builders. Nicolas Geoffray
Infra issues have been resolved. Change-Id: Ia5f0a9dd138f1b42f6ef0c3a895d638697439ffe
2019-04-29Save floating point registers in art_quick_osr_stub David Srbecky
We need to save callee save floating-point registers on ARM/ARM64. No x86/x86-64 floating point registers are callee save. Bug: 130313339 Test: test.py -r --target -t 570-checker-osr Change-Id: I53dfd60edb136bd305389e3b4bd51b636875d429
2019-04-26Refactor test 1953, 1954, 1955, & 1956 somewhat Alex Light
These tests all use a common set of suspension triggering event code. This will be useful in other tests later. To make it easier to use in the future this code is separated into common ti-agent files. Test: ./test.py --host -j80 Change-Id: I75f3fe8862c99bd32c5eabe0992fef911d7d9c56
2019-04-26FileUtils: Do not expect Android root without an ending slash David Brazdil
Logic for constructing paths in IsLocationOnModule assumes that Android root is provided with a starting slash and without one at the end. Even though our default settings match that, some users have reported crashes with a custom ANDROID_ROOT env variable. Change logic to support both. Bug: 130817106 Test: set ANDROID_ROOT and compile Change-Id: Id83ca985b05bd4e8f85d7ca0b4c8aeea98aa21ee
2019-04-26Fix wrong assumption in RemoveInstructionsAsUsersFromDeadBlocks. Nicolas Geoffray
It can be called in a situation where dead blocks can have phis: the DCE pass would re-build the dominator tree and RemoveInstructionsAsUsersFromDeadBlocks used to assume there cannot be phis. Test: 695-simplify-throws Bug: 131174581 Change-Id: I853956482487a8c7c8fb99499aef318d099754e4
2019-04-26jitzygote: JIT native methods on first use. David Srbecky
Compile JNI stub on first use to avoid the expensive generic stub. Test: profile calendar Bug: 119800099 Change-Id: Iaef9d0d528ff34c1636237cdcce6e8639c47c8ed
2019-04-26ART: Make bad_mutexes abort message legible Andreas Gampe
Remember the actual violation and use it as the abort message. Bug: 131324618 Test: m test-art-host Change-Id: I4c3edb328501917b838ec1b3443e454c6ac1a13f
2019-04-25ART: Fix some types Andreas Gampe
Use better types and fix some typing issues exposed by clang-tidy's readability-implicit-bool-conversion. Bug: 32619234 Test: WITH_TIDY=1 mmma art Change-Id: I787d291a4843a3192a84853d105d57377b774b23