Age | Commit message (Collapse) | Author |
|
Standalone ART gtests used to be installed in the same directory on
device (`/data/local/tmp/nativetest`), which could be a race
condition. In particular, some ART gtests are run as root
(e.g. `art_standalone_dexoptanalyzer_tests`) and create the
`/data/local/tmp/nativetest` directory with `root`
ownership/permissions, preventing any subsequent ART gtest not run as
root (e.g. `art_standalone_cmdline_tests`) from installing its
artifacts in that directory.
To prevent these issues, use a different directory on device (under
`/data/local/tmp`) per standalone ART gtest.
(cherry picked from commit d8c0ac264f606bf0c69781388ca6048eb0a4b55f)
(cherry picked from commit 58a79873e94dbe4a168221fc95b641dbf8cd3e3e)
Test: atest art_standalone_dexoptanalyzer_tests \
&& atest art_standalone_cmdline_tests
Test: atest art_standalone_\*_tests
Bug: 194403904
Bug: 162834439
Change-Id: I141c1676382b078c1441e5782b3dc77affafa3fc
Merged-In: I141c1676382b078c1441e5782b3dc77affafa3fc
|
|
This means we need to stop the lookup, as an exception is pending.
(cherry picked from commit 36d182089a4ced3603c7cdcb61b2d92a5a76a471)
Test: 831-unverified-bcp
Bug: 195766785
Merged-In: I8aa65f6bbaae83eff0be7ca5d82e0c0a548b5b60
Change-Id: I3e414f75e7081eb93b8cb5af89859d25492edf10
|
|
Due to a bug in it. Add a regression test.
Bug: 197818595
Test: 828-partial-lse
(cherry picked from commit 18074d2b59ae56dcfccea770ceb515215c8eb53f)
(cherry picked from commit a38b7355a603772424a8212840849094ce0ddeb3)
Merged-In: I65da4f7ef09cd2a1f6c4b21799ecd7a42c1adac2
Change-Id: I3eb52dc091264e617bb711260fb4950d15c7f50b
|
|
A subgraph could also have an infinite loop.
Test: 826-inifinite-loop
Bug: 196246395
Merged-In: Ifd1e1ae0f42dfe2cc156386fc166101c20748fc9
(cherry picked from commit 96dadefd24331f6808cb287048269ba772423c33)
Change-Id: I410ec26aefbc42629ba7dbe5a19a87399cefe396
(cherry picked from commit 1c7eeae26429bf76c47a1eaf6eddf514c000ba71)
|
|
Fix a data race on state_and_flags. Since the access was volatile
and there are system calls in the loop, this is extremely unlikey
to have casused the bug here, but ...
So, assuming this is still broken, produce more informative
output once we time out.
Remove unused argument from SuspendThreadByPeer(). It made the
logic more complicated and made it harder to reason about
correctness.
Remove dead code after LOG(FATAL, ...)
Bug: 181778559
Test: TreeHugger, temporarily paste log message into hotter path.
Merged-In: I6f3455925b3a3f4726a870150aeb54ea60a38d67
(cherry picked from commit 9d27fbc8ced914f4726187920a7794b07eca3e71)
Change-Id: Ia3f04153fb0a4f1b899fb0f68a6121728f89cb91
(cherry picked from commit 116203735734738cbfdffc2163b08b1707089f9c)
|
|
This is in order to run these tests only if the device under test is
SDK version 31 (Android 12) or above.
Test: m mts && mts-tradefed run commandAndExit mts-art
Bug: 195178963
Bug: 184696655
Bug: 181724969
Ignore-AOSP-First: API level 31 not in AOSP yet
Change-Id: I5b53270ccccc48ae197510b2a546f4d384c30c0f
|
|
This in order to run these tests only if the device under test is
SDK version 31 (Android 12) or above.
Test: m mts && mts-tradefed run commandAndExit mts-art
Bug: 195178963
Bug: 184696655
Bug: 181724969
Ignore-AOSP-First: API level 31 not in AOSP yet
Change-Id: I4bb6405281809863562e5bbbfc1189f227f2508d
|
|
Add `MtsLibcoreOkHttpTestCases` to the generated ART MTS definition.
Add this test module to the existing ART MTS shard 02.
(cherry picked from commit 7d398b070dcbe3d79718b04882aa3989717f6dba)
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m mts && mts-tradefed run commandAndExit mts-art-shard-02
Bug: 193218514
Bug: 167385698
Change-Id: I7c0abf96a9e2a5b9bab0add638a3b51f51083dd4
Merged-In: I7c0abf96a9e2a5b9bab0add638a3b51f51083dd4
|
|
(cherry picked from commit a0dd228837fbbacb3d29445bdf027649567f94fb)
Fix: 194365586
Test: atest --iterations 10 com.android.tests.odsign.OnDeviceSigningHostTest
Merged-In: I824da7fb9bfc0c455c852f99d2564e89728170ea
Change-Id: I294f96474ac5c9265900f762020f6e65b934a046
|
|
Add `CtsLibcoreWycheproofBCTestCases` to the generated ART MTS
definition.
Add this test module to the existing ART MTS shard 02.
(cherry picked from commit 81c76d8dac3f4c4d50cad21a0b94a155908bc7d1)
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m mts && mts-tradefed run commandAndExit mts-art-shard-02
Bug: 167385698
Change-Id: Icf2a43b3bf1a765d420eeebf7433b90eb4424a55
Merged-In: Icf2a43b3bf1a765d420eeebf7433b90eb4424a55
|
|
Adds a test that a samegrade ART APEX installation triggers
recompilation of AOT artifacts.
(cherry picked from commit 20b3c57170206febd53a20287bf6b7d5e620b62d)
Bug: 192647837
Test: atest odsign_e2e_tests
Test: atest art_odrefresh_tests
Merged-In: Iefb0fbbca119ed3e47bc17caa2ef8467b241b26c
Change-Id: Iadbe30203df626708f2c7408c3eb1ec7cfa971d4
|
|
Output of `art/test/utils/regen-test-files`:
$ art/test/utils/regen-test-files
Generated Blueprint files for 625 ART run-tests out of 928 (67%).
Generated TEST_MAPPING entries for 376 ART run-tests out of 928 (40%):
376 ART run-tests (100%) in `mainline-presubmit` test group.
17 ART gtests (100%) in `mainline-presubmit` test group.
376 ART run-tests (100%) in `presubmit` test group.
17 ART gtests (100%) in `presubmit` test group.
0 ART run-tests (0%) in `postsubmit` test group.
(cherry picked from commit 1de4428db83a426fd7d0615dc9cdd204de41f6e3)
Test: Rely on TreeHugger presubmits
Bug: 193218514
Bug: 178703264
Bug: 152379281
Change-Id: I84da85e33c7ac1e44361bbb0b3bfa399ceab9b2f
Merged-In: I84da85e33c7ac1e44361bbb0b3bfa399ceab9b2f
|
|
Output of `art/test/utils/regen-test-files`:
$ art/test/utils/regen-test-files
Generated Blueprint files for 625 ART run-tests out of 928 (67%).
Generated TEST_MAPPING entries for 376 ART run-tests out of 928 (40%):
376 ART run-tests (100%) in `mainline-presubmit` test group.
376 ART run-tests (100%) in `presubmit` test group.
17 ART gtests (100%) in `presubmit` test group.
0 ART run-tests (0%) in `postsubmit` test group.
(cherry picked from commit e0386f10d4591afa9823658099e4f2ac7a693255)
Test: atest --test-mapping art:presubmit
Test: Rely on TreeHugger presubmits
Bug: 193218514
Bug: 152379281
Change-Id: Ibfcf212a4bc3094ca74f8f3c0f98469810c6ea19
Merged-In: Ibfcf212a4bc3094ca74f8f3c0f98469810c6ea19
|
|
Add these test modules to the existing ART MTS shard 00.
(cherry picked from commit 8782f17c8adcf729a535dc4f9c221b9602b71017)
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m mts && mts-tradefed run commandAndExit mts-art-shard-00
Bug: 193218514
Bug: 167385698
Change-Id: Ie7d291e1c68705a1693b15f019fadeeb502410a9
Merged-In: Ie7d291e1c68705a1693b15f019fadeeb502410a9
|
|
This change:
- adds standalone ART gtests to test suite `mts-art`;
- adds `MainlineTestModuleController` support to standalone ART
gtests. This in order to have these tests run in a Mainline context
only when the ART Module (either `com.google.android.art` or
`com.android.art`) is installed on the test device.
(cherry picked from commit 6a2e6893290eac83f59dac4ec5bc10abf985ae10)
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m mts && mts-tradefed run commandAndExit mts-art-shard-00
Bug: 193218514
Bug: 167385698
Change-Id: I97d9c00b7c10debff8c63e4ae75f90da02be271c
Merged-In: I97d9c00b7c10debff8c63e4ae75f90da02be271c
|
|
Add `CtsLibcoreApiEvolutionTestCases`, `CtsLibcoreFileIOTestCases`,
and `CtsLibcoreLegacy22TestCases` to the generated ART MTS definition.
Add these test modules to the existing ART MTS shard 02.
(cherry picked from commit 515b0cf805c4ef9168516de814dabe087a037a69)
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m mts && mts-tradefed run commandAndExit mts-art-shard-02
Bug: 193218514
Bug: 167385698
Change-Id: Icf0e1ff4dae52d95e9ba687010029ae40a6a43a4
Merged-In: Icf0e1ff4dae52d95e9ba687010029ae40a6a43a4
|
|
Introduce standalone versions of ART gtests on target, not bundled
with the ART APEX.
So far ART gtests have always been built as debug artifacts (and
linked against ART debug libraries). Make some adjustments in some of
these tests so that they can also work as non-debug artifacts and be
used with the Release ART APEX (which contains only non-debug
artifacts).
Newly added tests:
* `art_standalone_cmdline_tests`
* `art_standalone_compiler_tests`
* `art_standalone_dex2oat_tests`
* `art_standalone_dexdump_tests`
* `art_standalone_dexlist_tests`
* `art_standalone_dexoptanalyzer_tests`
* Note: Requires root access to the device.
* `art_standalone_libartbase_tests`
* `art_standalone_libartpalette_tests`
* `art_standalone_libdexfile_support_tests`
* `art_standalone_libdexfile_tests`
* `art_standalone_libprofile_tests`
* `art_standalone_oatdump_tests`
* `art_standalone_odrefresh_tests`
* `art_standalone_profman_tests`
* Note: Requires root access to the device.
* Note: Some tests (2 out of 37) are failing in multi-ABI
contexts and have been temporarily disabled.
* `art_standalone_runtime_compiler_tests`
* `art_standalone_runtime_tests`
* Note: Some tests (16 out of 686) are failing and have been
temporarily disabled.
* Note: Some tests (4 out of 686) are failing in multi-ABI
contexts and have been temporarily disabled.
* `art_standalone_sigchain_tests`
Tests not added:
* `art_standalone_dexanalyze_tests`
* Reason: ART binary `dexanalyze` is not part of the Release ART APEX.
* `art_standalone_dexdiag_tests`
* Reason: ART binary `dexdiag` is not part of the Release ART APEX.
* `art_standalone_dexlayout_tests`
* Reason: ART binary `dexlayout` is not part of the Release ART APEX.
* `art_standalone_imgdiag_tests`
* Reason: ART binary `imgdiag` is not part of the Release ART APEX.
Tests not added (but present in AOSP):
* `art_standalone_libartservice_tests`
* Reason: Test `art_libartservice_tests` does not exist in this
branch.
* `art_standalone_libarttools_tests`
* Reason: Test `art_libarttools_tests` does not exist in this
branch.
(cherry picked from commit f040914a122be86e280efe5e31af1168f2b7c72e)
Test: atest -a art_standalone_cmdline_tests
Test: atest -a art_standalone_compiler_tests
Test: atest -a art_standalone_dex2oat_tests
Test: atest -a art_standalone_dexdump_tests
Test: atest -a art_standalone_dexlist_tests
Test: atest -a art_standalone_dexoptanalyzer_tests
Test: atest -a art_standalone_libartbase_tests
Test: atest -a art_standalone_libartpalette_tests
Test: atest -a art_standalone_libdexfile_support_tests
Test: atest -a art_standalone_libdexfile_tests
Test: atest -a art_standalone_libprofile_tests
Test: atest -a art_standalone_oatdump_tests
Test: atest -a art_standalone_odrefresh_tests
Test: atest -a art_standalone_profman_tests
Test: atest -a art_standalone_runtime_compiler_tests
Test: atest -a art_standalone_runtime_tests
Test: atest -a art_standalone_sigchain_tests
Test: atest -a art_standalone_\*_tests
Test: m art_chroot && atest ArtGtestsTargetChroot
Bug: 193218514
Bug: 162834439
Bug: 162734417
Change-Id: I8beda9159d48c4ca495698357dc3bd95e3ff84d5
Merged-In: I8beda9159d48c4ca495698357dc3bd95e3ff84d5
|
|
ART gtests currently link with the debug ("d") versions of ART
libraries. The gtests themselves and their libraries are compiled as
debug artifacts. For the sake of consistency, perform the following
renaming of ART gtest related Soong modules:
* `libart-compiler-gtest` -> `libartd-compiler-gtest`
* `libart-dex2oat-gtest` -> `libartd-dex2oat-gtest`
* `libart-gtest-defaults` -> `libartd-gtest-defaults`
* `libart-gtest` -> `libartd-gtest`
* `libart-runtime-gtest` -> `libartd-runtime-gtest`
* `libartbase-art-gtest` -> `libartbased-art-gtest`
As we plan to introduce non-debug ("non-d"), standalone versions of
ART gtests in the context of uncoupling ART (target) gtests from the
ART APEX (b/162834439), this renaming will help us, as we'll be able
to use the old names of a "d" module for the corresponding "non-d"
version.
(cherry picked from commit 55ffe7fa9ead8b501a756bb53f2571e3e7602f5e)
Test: mmma art
Test: Run ART gtests on host and target
Test: env OVERRIDE_TARGET_FLATTEN_APEX=false art/build/apex/runtests.sh
Test: env OVERRIDE_TARGET_FLATTEN_APEX=true art/build/apex/runtests.sh
Bug: b/193218514
Bug: b/162834439
Change-Id: I4ca27a7f445a760398f41a9e60a7008d77294505
Merged-In: I4ca27a7f445a760398f41a9e60a7008d77294505
|
|
This reverts commit 6c30777a278d24e1a4c3226405416a85e6523d3f.
(cherry picked from commit 6b0fc9ec4b02543dd182b04bec479ff2679d57cd)
Bug: 180949581
Test: atest odsign_e2e_tests
Merged-In: Icce47524668dd2a92e7128af8242066741563e95
Change-Id: I37a08176ddd13544b153c13afd2d030efaede312
|
|
Needs an update to SELinux policy and zygote initialization.
(cherry picked from commit 260ac188e9eded300e5280f218ddc24ec63494ee)
Bug: 180949581
Fix: 191830020
Test: atest odsign_e2e_tests
Merged-In: Iaa1b017f21d0aa7288c18d3fb464b90d10c2a828
Change-Id: I8c855a7666fe4b0fcbc0f899153e0880496cfffb
|
|
The sample rate percentage can be configured via 2 runtime
flags (MetricsReportingMods and MetricsReportingNumMods).
A runtime session will report metrics if and only if its
session id % MetricsReportingNumMods < MetricsReportingMods.
A value of 0 on the mods will effectively disable reporting,
while configuring MetricsReportingMods to be equal to the
MetricsReportingNumMods will enable reporting in all cases.
Test: gtest
Bug: 170149255
Merged-In: Ie1353e4fc0ff695fc627696145d95e9ccd3c6a94
Change-Id: Ie1353e4fc0ff695fc627696145d95e9ccd3c6a94
(cherry picked from commit 17e0b652b59b0f7ebc821c3a86036e86079642bb)
|
|
This will enable us to enable periodic reporting according
to the properties set in the device config.
As part of this CL, enable cmdline only flags for thing that
do not make sense to read from system properties.
Test: gtest
Bug: 170149255
Merged-In: I99bae25d89cf3a17906b4d3c671e5c63e9a3c180
Change-Id: I99bae25d89cf3a17906b4d3c671e5c63e9a3c180
(cherry picked from commit b568b14fd22d4f65d5b43f146ddd50fb27ded4e9)
|
|
It conflicts with thread interpreter cache, where the interpreter
expects that once an entry is in the cache, it doesn't need to
perform access checks again.
Test: 536-checker-needs-access-check
Bug: 191252775
Change-Id: I65999abc8afe31e4f4bf2ca403432d6cd8be70ee
Merged-In: I65999abc8afe31e4f4bf2ca403432d6cd8be70ee
(cherry picked from commit 028cc7e1e87d2ea1cf3f56360343cff8c3334f36)
|
|
Refactoring led to the instruction-set argument being dropped in
odrefresh. This manifested itself as failures in the odsign_e2e_tests
as the secondary zygote was running in jit-zygote mode.
Re-enables the verifyGeneratedArtifactsLoaded test and enforces a
deterministic order for the odsign_e2e_tests.
(cherry picked from commit 71b2cb54099218952385c8c295dbff8be81263ce)
Fix: 191113888
Test: atest odsign_e2e_tests
Merged-In: I5308a6cf9ddf16e2991bfaf9c6f27bd7e8ff0aff
Change-Id: Ida2a1e2e11e039fc1324c054889b158664f67bbc
|
|
Test is failing on zygote64.
(cherry picked from commit 319333f6ea3408b8c99bd9c644f0f34b66fe31b8)
Bug: 191113888
Test: atest odsign_e2e_tests
Merged-In: Idf06d0a875d4d3daf3699015ceb92832647ad263
Change-Id: I29ab79e1e956003a3f8ffa8f4cbc23aee1092c2a
|
|
Adds backoff logic to limit attempts odrefresh tries to compile. It
will always recompile if the APEX is updated or the input JARs change,
but if compilation fails for any reason then odrefresh backs off
exponentially in days.
Relands commit 6859ffca5ffd15128459293046590488008221ff. The
odsign_e2e tests required updating to remove the compilation log whose
purpose is to backoff compilation attempts in the wild.
(cherry picked from commit f761f5887918375b842e4cc62ed9cbe7521c8444)
Bug: 160683548
Bug: 187494247
Test: atest art_odrefresh_tests
Test: atest odsign_e2e_tests
Merged-In: Id41ee875cf1ca376f8e2ae05a43d0f6f74a9995f
Change-Id: If01b4ebe1e7c7f72ac51730fed7279ed37a3bed8
|
|
Fix check in ValidateBootImageChecksum() to account for image files
with multiple components which exists for boot-framework when
compiling on device.
Update logic for only_load_system_executable to be
only_load_trusted_executable and treat /system and the ART APEX data
directory as trusted.
Add test to check .art,.odex,.vdex files derived from the
system_server classpath are mapped when the ART module updates.
Add test to check .art,.oat,.vdex files for the boot class path
extensions are present in the zygote processes.
(cherry picked from commit 094b1cfc9fa9e1c02238a2352c190be1746f5622)
Fix: 180949581
Test: atest com.android.tests.odsign.OnDeviceSigningHostTest#verifyGeneratedArtifactsLoaded
Merged-In: I3114fc6393402d8da2eb16ba756ab5fab713dc20
Change-Id: I493b2eaa99d27a865ced77745debdeaff16b7d6a
|
|
The new format contains one mandatory section and several
optional sections. This allows extending the profile with
new sections that shall be ignored by old versions of ART.
We add an "extra descriptors" section to support class
references without a `dex::TypeId` in the referencing dex
file. Type indexes between the dex file's `NumTypeIds()`
and `DexFile::kDexNoIndex16` are used to index these extra
descriptors. This prepares for collecting array classes
which shall be tied to the element type's dex file even
when the array type is not needed by that dex file and has
been used only from another dex file. It also allows inline
caches to be self-contained, so we can remove the profile
index from data structures and serialized data.
The creation of the the binary profile from text files is
updated to correctly allow array types to be stored as the
profiled classes using the "extra descriptors". However,
the interface for filling in inline caches remains unchanged
for now, so we require a `TypeId` in one of the processed
dex files. The data collection by JIT has not been updated.
(cherry picked from commit c63d9672264e894d8d409e8d582b4e086b26abca)
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing --speed-profile
Test: boots.
Test: atest BootImageProfileTest
Bug: 148067697
Merged-In: Idd5f709bdc0ab4a3c7480d69d1dfac72d6e818fc
Change-Id: I99b314c3de4e4bc0c515b86336ecbb283107ee38
|
|
The `GetGenericJniSynchronizationObject()` function was used
in the wrong context. As documented, it can be used only for
a method with a GenericJni frame and also on the top of the
stack. When visiting locks, we can have a non-GenericJni
method frame as well as a method deeper in the stack.
Replace the wrong use with specialized code.
(cherry picked from commit 654f01cd509ca11eae22177d4e764f1241fb3a53)
Test: Added regression test to 178-app-image-native-methods
Test: testrunner.py --host --debug --ndebug
Bug: 172332525
Bug: 189235039
Merged-In: Ia26f0b980c04a766e31b1588a1c011bcf46c90d8
Change-Id: I48af0e2838cda4774b8129927ea04cee9cf3a9f8
|
|
Add this test module to the existing ART MTS shard 02.
(cherry picked from commit 8f8935ce292bec925e8a18719227df9ad06a111d)
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m mts && mts-tradefed run commandAndExit mts-art-shard-02
Bug: 167385698
Change-Id: Ie80a43e745c8a04f1d43980e25cc7e18a67365f1
Merged-In: Ie80a43e745c8a04f1d43980e25cc7e18a67365f1
|
|
Bug: 184654804
Test: m droid
Merged-In: I6ae5dd363bdb32cea6acd9dab7afbd4579fb0c4c
Change-Id: I6ae5dd363bdb32cea6acd9dab7afbd4579fb0c4c
|
|
Include remaining ART run-tests into the `mainline-presubmit` test
group. This progressive rollout is to make sure introducing ART
run-tests to this test group won't disturb/break Android presubmits.
Output of `art/test/utils/regen-test-files`:
$ art/test/utils/regen-test-files
Generated Blueprint files for 625 ART run-tests out of 929 (67%).
Generated TEST_MAPPING entries for 376 ART run-tests out of 929 (40%):
376 tests (100%) in `mainline-presubmit` test group.
376 tests (100%) in `presubmit` test group.
0 tests (0%) in `postsubmit` test group.
(cherry picked from commit 3d05e61a420e499bfc9221445237c964e0a8aa63)
Test: Rely on TreeHugger presubmits
Bug: 178703264
Bug: 152374989
Change-Id: I58c2ad4669905d2fb22bb55d549f616de2266ba4
Merged-In: I58c2ad4669905d2fb22bb55d549f616de2266ba4
|
|
This reverts commit bfd622abc23c77ffc8799f376df7241f15d6550a.
Test: m
Bug: 184281926
Change-Id: I0e80a0f9286de982169761df8fd01f89cfcd678c
|
|
(cherry picked from commit c1ab56b613cdb99622100aa41c511e4e3c3e272e)
Test: m
Bug: 182793486
Bug: 185979271
Merged-In: Ib92327e39bad5914d48ae8a37dd4b5092c5e1407
Change-Id: Ib92327e39bad5914d48ae8a37dd4b5092c5e1407
|
|
Adds liblog shared library dependency for host builds in a few places.
Bug: 188879721
Bug: 188067586
Test: [master-art-internal] art/tools/buildbot-build.sh --host
Change-Id: I102a8c8b5fe134047ac71fb940d063e2b1100630
|
|
After libdexfile_external was merged into libdexfile, libdexfile is an
APEX stub when prebuilts are enabled, and that cannot be used to build
libart and all the other internal modules that depend on it.
This CL:
- Changes art_defaults to disable native modules when building from
prebuilts. Some other modules that depends on them, like the
art-script sh_binary, also get disabled.
- Consolidates the makefile sections that are disabled when building
from prebuilts so that only a small bit is still enabled then.
- Temporarily removes the prebuilt for libctstiagent and activates its
source even when prebuilts are used, to work around sdk_version
problem (b/187288515).
- Removes explicit "enabled: true" in a couple of places that would
override the inherited flag that lets us disable them in builds from
prebuilts.
- Makes some Soong defaults available to libcore.
Cherry-picked from https://r.android.com/1711019.
Test: m checkbuild
Test: art/build/build-art-module.sh --skip-apex
packages/modules/ArtPrebuilt/update-art-module-prebuilts.py \
--local-dist out/dist/ --skip-apex
m SOONG_CONFIG_art_module_source_build=false droid
m SOONG_CONFIG_art_module_source_build=false checkbuild
Bug: 172480615
Change-Id: Ief60b933cd6273fc8b85fe7637b99ba1b78505f6
Merged-In: Ief60b933cd6273fc8b85fe7637b99ba1b78505f6
|
|
Disable new run-test `730-cha-deopt` as it is currently failing when
run with the `ArtRunTest` TradeFed test runner.
Output of `art/test/utils/regen-test-files`:
$ art/test/utils/regen-test-files
Generated Blueprint files for 625 ART run-tests out of 929 (67%).
Generated TEST_MAPPING entries for 376 ART run-tests out of 929 (40%):
282 tests (75%) in `mainline-presubmit` test group.
376 tests (100%) in `presubmit` test group.
0 tests (0%) in `postsubmit` test group.
(cherry picked from commit 56f2444d2e58f453c90b7ba8477da3f6b2c107cf)
Test: atest art-run-test-576-polymorphic-inlining
Test: atest art-run-test-730-checker-inlining-super
Test: atest --test-mapping art:presubmit
Bug: 140373913
Change-Id: I587b4df7af3021d800c346cb909e759051027cf1
Merged-In: I587b4df7af3021d800c346cb909e759051027cf1
|
|
It simplifies the encoding / decoding logic.
Test: 663-odd-dex-size
Bug: 186405713
Change-Id: I26bcf2b6cfa16548a520a501e6e1b38c238eb1df
|
|
This reverts commit 39d4df62d4e2606073d05cc363370db825ad7b9f.
Reason for revert: fix JIT-zygote issue.
Test: JIT zygote boots.
Change-Id: I895ad8e59e472fb662ca9bc5394c2fd9c6babc74
|
|
Bug: 176786675
est: test.py
Change-Id: Ib3e1beedbd0c72f7db4daf5339a8b6c1bfd0202a
|
|
To allow running tests on user builds. The (non)existence of the
environment variable itself serves fine as a toggle, and it is hard to
inject into the zygote environment on a user build anyway.
Also a few other cleanups from comments on
https://r.android.com/1689792.
Test: art/test/testrunner/testrunner.py --target --64 --optimizing
Bug: 130340935
Change-Id: I1843a8bbfb5dadc560919022d1f2123eb652be5a
|
|
It's not needed any more since libarttest(d).so is loaded from the ART
linker namespace.
Test: art/test/testrunner/testrunner.py --target --64 --optimizing
Bug: 130340935
Bug: 167578583
Change-Id: I785133e921277cb25360856e9af20fa681b54a3b
|
|
Test: New tests in load_store_elimination_test.
Test: New test in 539-checker-lse.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Bug: 187487955
Change-Id: Iff66d5406cf1b36c3bebbce1d48117f83bb50553
|
|
Make sure we verify some critical parts of the boot class path actually
exist as part of the test.
Bug: 187494247
Test: atest od2sign_e2e_tests
Change-Id: Ic94bc6dc87d5d3dcd20caeca0f815e71bc629873
|
|
Make the current buildbot setting the default so
that we can remove the setting from the buildbot.
Test: "testrunner.py --host" and check the concurrency
Test: "testrunner.py --target" and check the concurrency
Change-Id: I0293d00e7ace1087341a387802a1b2bfeb1cb719
|
|
(reland).
dlopen() calls in ART will use its own linker namespace
(com_android_art). That's appropriate for internal libraries in the
APEX, but not when ART loads libraries on behalf of external requests.
In those cases we should instead use android_dlopen_ext to load them
from the system namespace, i.e. the one that searches /system/lib(64).
The linker config has been using allow_all_shared_libs, so any loads
from com_android_art fall back to the system namespace, and hence
dlopen() usually works regardless which namespace it ought to use.
However we want to drop allow_all_shared_libs, so we need to figure out
which dlopen's should use which namespace:
1. Several ART libraries are loaded on-demand, e.g. libart-compiler and
libart-disassembler. There are also those going through the runtime
plugin system, like libperfetto_hprofd and heapprofd_client_api. All
these are internal or at least statically known (so we can provide
links for them in the linker config), and should continue to use
dlopen from the ART namespace.
2. libnativeloader loads the preloadable public libraries from
system/etc/public.libraries.txt, and should use the system namespace
for that.
3. libnativebridge loads the native bridge implementation specified
through the command line (or ultimately the system property
ro.dalvik.vm.native.bridge). It's not part of the ART APEX and not
known statically, so the system namespace should be used.
4. libnativeloader also loads JNI libraries from classloader
namespaces, but has a fallback if no such namespace can be found
based on caller location. Fall back to the system namespace to
handle libraries loaded during the preload phase in the zygote.
5. JVMTI agents are loaded by dalvik.system.VMDebug.attachAgent().
Treat these too as external libraries - they are loaded in a way
similar to JNI libraries through OpenNativeLibrary in
libnativeloader, so are covered by #4.
They are normally loaded by apps with a classloader, but a special
case is adbconnection which loads libjdwp.so in the ART APEX without
one and hence falls back to the system namespace. We therefore need
to create a link for it (https://r.android.com/1690889,
https://r.android.com/1690795).
All cases #2-#5 are covered by libnativeloader and libnativebridge.
Introduce OpenSystemLibrary, and since libnativeloader depends on
libnativebridge, put it in the latter to be usable from both. It's only
an internal dependency not exposed in the APEX stubs.
(Another possibility could be to put it in the generic toolbox lib
libartbase, but it's split into -d and non-d variants, and we don't
want to split libnative{loader,bridge} that way.)
Since libnativeloader_test no longer needs to mock dlopen we can
simplify it to a more regular test that loads the tested libs
dynamically.
This relands https://r.android.com/1673312 without setting
ANDROID_ADDITIONAL_PUBLIC_LIBRARIES in run-test-jar, because that made
libnativeloader try to preload internal libraries from the system
namespace.
Test: mmm art
Test: atest art/libnativeloader
Test: atest CtsJniTestCases
Test: Cuttlefish app compat test that uses NDK translation
Test: Manual tests with Android Studio TI agents
(http://g/art-module-team/7Jy3Tg7LCh0)
Test: art/test/testrunner/testrunner.py --target --64 --optimizing
in chroot on cuttlefish
Bug: 130340935
Change-Id: I7fb32faacc1c214402b58125d8190e97bbbcfad2
|
|
Instead of including shared library libvixl.so in the ART
Module, link libvixl statically to all binaries that use it,
namely libart-compiler.so and libart-disassembler.so which
shall increase in size with the additional libvixl code.
The ART Module size with default libvixl symbol visibility:
- before: 88460730B
- after: 86973943B (-1.42MiB)
With hidden libvixl symbol visibility:
- before: 88337851B
- after: 84962808B (-3.22MiB)
(This is with master-art where we do not have a boot
profile and therefore compile more code in boot image.)
The change from default to hidden visibility is done in
https://android-review.googlesource.com/1697237 .
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Test: run-gtests.sh
Test: testrunner.py --target --optimizing
Bug: 186902856
Change-Id: I040b0115b94b8690ee7be53e3ded8610d9f13e99
|
|
This reverts commit be0d891ac881f0dc4a2650014433b0354f9d7593.
Reason for revert: b/187531176 . This is likely to start failing as a result of backing out a prior change.
Change-Id: I5195bbfb0e251e27a4be03cb2d0ebb185fccdc12
|
|
Check that if we allocate more than a gigabyte of native memory and then
repeatedly notify the collector of native allocation, we temporarily
block the allocation for a reasonable amount of time to allow the GC to
catch up.
We previously had some coverage of this, but lost it when BigInteger
moved away from using native allocation.
Test: Ran locally on host; TreeHugger.
Bug: 186592536
Change-Id: Id7d120e00630e26bcdf396a80069c9cca7c00804
|
|
This reverts commit 5024ddfd125b5c3b59d7f359ae33cf7f0255b048.
Bug: 187408838
Reason for revert: b/187408838
Change-Id: If74f5ddbacc73296f66c55762e2a8d1ec2cd1f19
|