Age | Commit message (Collapse) | Author |
|
#codehealth
Test: art/build/apex/runtests.sh
Bug: 279835185
Change-Id: I512f162f0f5208774a48049489ce3f1f5dbc0e31
|
|
Test: install ART module and check that
/apex/com.android.art/etc/dirty-image-objects exists
Teset: m art-check-testing-apex-gen art-check-release-apex-gen
Change-Id: I7095b41b2c6ca6f08f01d651df9be7e39cfe47bc
|
|
Context:
Previously flag info file is created at run time rather than at build
time due to two reasons:
1, it saves some storage space on each container
2, initially the flag info file does not container any flag non run time
info, so creating this file at run time on device is more efficient.
However, flag info file is fairly compact, 1 byte per flag. So the
storage footprint increase is minimal. Also, now flag info file contains
flag information known at the build time such as if the flag is read
write. To help create flag info file at run time, we actually have to
keep additional information on flag map file. Then use this information
to create flag info file at run time. Now it is more efficient to just
create flag info file at build time.
In addition, to create flag info file at run time, we need to maintain
an additional write api create_flag_info_file. Each time flag file
version changes, we have to keep the old version of this API as well. If
we create flag info file at build time, then we don't have to maintain
this API.
Overall the benefits outweight the 1 byte per flag storage overhead.
Therefore making this change to create flag info file at build time.
Test: art/build/apex/art_apex_test.py
Change-Id: I591afd662a5b0de807d6111c44a8d076e38bd617
|
|
Bug: 357802879
Test: -
1. art/tools/buildbot-build.sh --host --installclean
2. m test-art-host-gtest
3. art/test/testrunner/testrunner.py --verbose --host --ndebug --optimizing
Test: -
1. art/tools/buildbot-build.sh --target --installclean
2. art/tools/run-gtests.sh -j4
Change-Id: If646b68130ba6c3e52e1388a0e465d6683e9de4b
|
|
This reverts commit 73a49cd990a10d7e21d41be001170e72e6ba3d49.
Reason for revert: Problem fixed
For target tests that are included in the ART testing apex, Soong
generates Make modules to build them for the apex. After removing target
tests from the ART testing apex, Soong starts to generate Make modules
to build them at $ANDROID_PRODUCT_OUT/testcases, and art-host-tests.mk
unexpectedly picks them up from there and packs them into
art-host-tests.zip.
Adding `device_supported: false` solves the problem.
A follow up change will be made to stop art-host-tests.mk from packing
target tests into art-host-tests.zip.
Bug: 357802879
Bug: 356793689
Bug: 360150490
Test: art/test/README.chroot.md
Change-Id: I05adfbc6ea633640a040cfdc0527effa6ef01cab
|
|
This reverts commit a18a521d868568b3b4436d1f26e52e2934434104.
Reason for revert: Droidmonitor created revert due to b/360150490. Will be verifying through ABTD before submission.
Change-Id: I76cb1f3a84acdb2ad0d595255c591f795a4651d6
|
|
Bug: 357802879
Bug: 356793689
Test: art/test/README.chroot.md
Change-Id: I18a73e616d5f1942a2fa9d0acf9dd7033c7e3e17
|
|
Rename the DEX verification fuzzer's corpus directory.
Add a separated corpus for class verification fuzzer that contains two DEX files:
* Main: Empty main (valid DEX)
* Hello-world: Main that prints "Hello, world!"
It tries to verify each dex file in the class verification fuzzer's corpus.
For now all dex files for class verification are expected to pass.
Bug: 352721437
Test: m test-art-host-gtest-art_runtime_tests64
Test: m test-art-host-gtest-art_libdexfile_tests64
Test: With chroot method run libdexfile and runtime tests on targe
Change-Id: I7dfbdecb28cd3adf36db83c4e158794774d3b907
|
|
Revert submission 3146736-split-dirty-image-objects
Reason for revert: Droidmonitor created revert due to b/358597715. Will be verifying through ABTD before submission.
Reverted changes: /q/submissionid:3146736-split-dirty-image-objects
Change-Id: I18b998a5479300e675cb2fd3ff8793a7c8c39977
|
|
Rename dirty-image-objects to dirty-image-objects.txt. Modify odrefresh
to use new dirty-image-objects file names.
Split dirty-image-objects file between ART and framework modules -
depending on where the classes are defined.
This will allow dirty-image-objects to stay relevant in case only one of
the modules is updated.
Bug: 346990440
Test: install ART module;
check /apex/com.android.art/etc/dirty-image-objects.txt exists
Test: m art-check-testing-apex-gen art-check-release-apex-gen
Change-Id: Id19480b409a582cfe0b398b078808b462636d0f8
|
|
This change saves 160KB.
Bug: 345462161
Test: m com.android.art
Test: m art-check-release-apex-gen
Test: m art-check-debug-apex-gen
Test: m art-check-testing-apex-gen
Change-Id: Ia2525e6a695632a3114d1e2afebad90c4a212040
|
|
In some checks it passed if there were no arch-specific directories at
all. Now at least one directory is required, or at least one 32-bit and
one 64-bit if multilib is enabled.
This also uncovered stale checks for dexpreopted boot classpath files,
so delete them.
Also clean up string quotes.
Test: art/build/apex/runtests.sh
with cf_x86_64 and aosp_arm products
Bug: 211973309
Change-Id: I9d037b287440c370c937a03029f59807408955bf
|
|
Add checks for etc files, to cover the gap that we didn't notice
etc/boot-image.prof disappearing.
Test: art/build/apex/runtests.sh
on AOSP main and master-art, with and without various combinations of
missing file checks
Bug: 345173231
Change-Id: I850e72132ad5ae0742632959ed7d83c1cca499bb
|
|
Also remove the dexlayout(d) and dexdiag binaries from the debug APEX
and the art-tools mk module.
Also remove references to the dexlayout-related gtests.
Test: art/tools/buildbot-build.sh
Test: art/build/apex/runtests.sh
Bug: 325430813
Change-Id: I6a6cbc0eecfedf3e020eb1c9e4d4f1479cf4a6dc
|
|
libcrypto_for_art.
This removes libcrypto.so from the APEX, which shaves off ~1.5 MiB per architecture.
Test: banchan com.android.art com.android.art.debug arm && m
Test: banchan com.android.art com.android.art.debug arm64 && m
Test: banchan com.android.art com.android.art.debug x86 && m
Test: banchan com.android.art com.android.art.debug x86_64 && m
Test: lunch aosp_cf_arm64_only_phone && m libjavacore
Bug: 340868296
Change-Id: I94d2debd2e444c3501cab7a27e921dde55a2505a
|
|
BYPASS_INCLUSIVE_LANGUAGE_REASON=preexisting terminology
Bug: 311377497
Test: atest art_standalone_dexopt_chroot_setup_tests
Change-Id: I2cbbd8c605d45b5451460306fc2291340668863b
|
|
Boilerplate changes.
Bug: 311377497
Test: manual - Call
getDexoptChrootSetupServiceRegisterer().waitForService()
Test: manual - Set up a chroot environment and call
getArtdPreRebootServiceRegisterer().waitForService()
Test: manual - Test the fuzzers on host and on device following the
instructions at
https://source.android.com/docs/security/test/libfuzzer.
Change-Id: Ic576d741ae0fe058833d3bbad6ebb5188ccf200a
|
|
It tries to verify each dex file in the fuzzer's
corpus. There are two expected dex files to pass
verification. The rest should fail verification
without crashes.
We use a .zip file to push the folder to the device.
Bug: 308096666
Test: m test-art-host-gtest-art_libdexfile_tests64
Test: With chroot method run libdexfile gtest on target
Change-Id: Ide498ec3d1f60ad9661a2ea7fde43002f27a8f86
|
|
This reverts commit 61b1c151163a09ad49c0b74c19ee84caeb4d0345.
Reason for revert: reland with dex2oat PGO removed.
Previous attempts at merging libart-compiler into libart showed some
performance regressions, which were caused by incompatibilities between
AFDO and PGO optimization pipelines when used within a single library.
This change removes dex2oat PGO and leaves only AFDO for libart.so.
Change-Id: I75a844f53663385ef98351f60d3adb900157f5e5
Bug: 303042202
Bug: 186902856
Test: art/test.py -b --host
Test: atest art_standalone_\*_tests
Test: art/build/apex/runtests.sh
Test: atest art-apex-update-rollback
Test: (chroot) art/tools/run-gtests.sh -j4
Test: (chroot) art/test/testrunner/testrunner.py --target
Test: (chroot) art/tools/run-libcore-tests.sh --mode=device
Test: (chroot) art/tools/run-libjdwp-tests.sh --mode=device
|
|
Bug: 291102124
Merged-In: Id2163eba86d9d9a57d7597d1f5b04d7e706ae667
Change-Id: I02f3965720916b52675d58f45dc428d6530d7b09
|
|
This reverts commit 4617cc65933921f40b8dd09ad630850a984486c7.
Reason for revert: app startup regressions b/296703167 b/295363008
Change-Id: Ib31df00f80c57b9c86d6d0254e795b9ad6e22e00
|
|
This reverts commit da43e436c6586253144febfb2700c67214c46a62.
Reason for revert: reland after investigating regressions
Change-Id: I1ff91c08808f81a5e027cc7110d130e8518ac704
|
|
This change will save us 890 kb of disk space, which doesn't have a noticeable
impact at the performance metrics according to the test
go/art-benchmark?p=BootImageProfileId:35971
Moving from Speed to Verify is done by adding an empty profile to the
service-art source.
Bug: 288410349
Test: Passed `art/build/apex/runtests.sh`
Test: Running go/art-benchmark?p=BootImageProfileId:35971
Change-Id: I728787aa7509d6ced5b8a85537300007534e1c84
|
|
This reverts commit 35cca3e296346277422aaee030edced697e09319.
Reason for revert: perf regression b/293406139
Change-Id: I34693a930a68c06300b51f75e60c8b724903f938
|
|
Rename old libart to libart-runtime.
Build libart-runtime and libart-compiler separately as static libraries.
This is required to support PGO (compiler) and AFDO (runtime) without
mixing them.
Combine libart-runtime and libart-compiler into libart with
whole-archive linking.
Remove JitLoadTest, since `jit_create` (previously `jit_load`) function
is guaranteed to exist in `libart`.
After this change libart-compiler will have access to all libart-runtime
symbols. This will allow to hide more symbols from libart-runtime.
ART APEX size before and after:
X86 : 29,748.00 KiB -> 29,648.00 KiB (-100.00 KiB, -0.34%)
X86_64: 49,148.00 KiB -> 48,928.00 KiB (-220.00 KiB, -0.45%)
Arm32 : 23,440.00 KiB -> 23,268.00 KiB (-172.00 KiB, -0.73%)
Arm64 : 44,472.00 KiB -> 43,884.00 KiB (-588.00 KiB, -1.32%)
Bug: 186902856
Test: art/test.py -b --host
Test: atest art_standalone_\*_tests
Test: art/tools/run-gtests.sh
Test: art/test/testrunner/testrunner.py --target
Test: art/tools/run-libcore-tests.sh --mode=device
Test: art/tools/run-libjdwp-tests.sh --mode=device
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m libart-compiler libartd-compiler libart-runtime libartd-runtime libart libartd
Test: art/build/apex/runtests.sh (no regressions)
Test: atest art-apex-update-rollback (no regressions)
Change-Id: I20bd2fcca26013963a48e933142c9f81883bdca4
|
|
Original change: https://android-review.googlesource.com/c/platform/art/+/2624310
Change-Id: I8a03b7e59ab2e2b17d3472bc3645233c3d27ffd0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
It's not used.
Bug: 279858383
Test: m com.android.runtime
Test: m art-check-release-apex-gen-fakebin
Test: m art-check-debug-apex-gen-fakebin
Change-Id: I1ca098c1ed48e31c77074fe41cb2a3079ae00ef5
|
|
am: 6f278463dd
Original change: https://android-review.googlesource.com/c/platform/art/+/2623410
Change-Id: I79c9ea286a60364ac7404acf001f27bf2c3b63be
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
This reverts commit b89b62d8ca79c1a8d349c6c30f43bfa8b9a43ed3.
Reason for revert: fix asan gtests
Link `libsigchain` statically in gtests, because dynamic
`libsigchain.so` interferes with ASAN init and breaks the tests.
Bug: 261703065
Bug: 247108425
Test: TARGET_PRODUCT=armv8 TARGET_BUILD_VARIANT=eng ./prebuilts/build-tools/path/linux-x86/python3 ./art/test/testrunner/run_build_test_target.py -j80 art-gtest-asan32
Test: ABTD v2/android-virtual-infra/arm_cf/test-mapping-hwasan-presubmit
Test: ABTD art-gtest-asan32 art-gtest-asan64
Test: m test-art-host-gtest
Test: m mts && mts-tradefed run commandAndExit mts-art
Change-Id: Ibbcc418aa33c5f4923100f3f83c8e21c189f8ad0
|
|
am: e012431b8f
Original change: https://android-review.googlesource.com/c/platform/art/+/2623089
Change-Id: I1f29b9d01e08f7be588dfc96136815a6988c2e3d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
This reverts commit 66244e2af2e9ee54b57022eeeabb7230109a98fa.
Reason for revert: broken tests on art-gtest-asan32
Change-Id: I069a6a177a8eb95a383719e3fdadc698dd2fb4b8
|
|
d933497f80
Original change: https://android-review.googlesource.com/c/platform/art/+/2547151
Change-Id: Ic8fe2a6df777d59ce94d10a9dd4261b402e16276
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Add new build targets `libart-for-test` and `libart-compiler-for-test`,
because building tests with LTO takes too much RAM and there is no way to
override LTO enabled in libart(-compiler). See: b/277207452
Add new *-for-test_static_defaults which use libart(-compiler)-for-test.
After this change, gtests will have access to all libart(-compiler)
symbols, which will allow merging libart and libart-compiler together
and further reducing the amount of public symbols.
Bug: 261703065
Bug: 247108425
Test: atest art_standalone_*_tests
Test: m aapt mts && mts-tradefed run commandAndExit mts-art-shard-03
Test: m test-art-host-gtest
Test: m art-check-testing-apex-gen
Change-Id: Ide03609e78af5441b6822e5640925e812bec4e11
|
|
Only propagate it if it turns off ART Service - if OEMs have disabled
it with dalvik.vm.useartservice then we shouldn't enable it.
Introduce a new art_boot binary to do it, which is only run at boot
through a oneshot service.
We cannot use setprop commands directly in the init script, because
non-vendor APEXes are prohibited from using `on` actions (b/278862348).
Test: boot
-> Check that dalvik.vm.useartservice is not false
adb root
adb shell setprop persist.device_config.runtime_native_boot.useartservice false
-> Check that dalvik.vm.useartservice is not false
adb reboot
-> Check that dalvik.vm.useartservice is false
on udc-dev
Test: Same as above, but with an unbundled ART module build installed
on git_sc-release and git_tm-release.
Test: boot
-> Check that dalvik.vm.useartservice is unset
adb root
adb shell setprop persist.device_config.runtime_native_boot.useartservice true
-> Check that dalvik.vm.useartservice is unset
adb reboot
-> Check that dalvik.vm.useartservice is unset
on udc-dev with dalvik.vm.useartservice unset
Bug: 272056722
Change-Id: Ifc552ed924818d7363aef822cd3060f7adfc92b6
(cherry picked from commit 4cdcab58b438a91c91cd5b09235c703251c6e328)
Merged-In: Ifc552ed924818d7363aef822cd3060f7adfc92b6
|
|
Only propagate it if it turns off ART Service - if OEMs have disabled
it with dalvik.vm.useartservice then we shouldn't enable it.
Introduce a new art_boot binary to do it, which is only run at boot
through a oneshot service.
We cannot use setprop commands directly in the init script, because
non-vendor APEXes are prohibited from using `on` actions (b/278862348).
Test: boot
-> Check that dalvik.vm.useartservice is not false
adb root
adb shell setprop persist.device_config.runtime_native_boot.useartservice false
-> Check that dalvik.vm.useartservice is not false
adb reboot
-> Check that dalvik.vm.useartservice is false
on udc-dev
Test: Same as above, but with an unbundled ART module build installed
on git_sc-release and git_tm-release.
Test: boot
-> Check that dalvik.vm.useartservice is unset
adb root
adb shell setprop persist.device_config.runtime_native_boot.useartservice true
-> Check that dalvik.vm.useartservice is unset
adb reboot
-> Check that dalvik.vm.useartservice is unset
on udc-dev with dalvik.vm.useartservice unset
Bug: 272056722
Ignore-AOSP-First: Will cherry-pick to AOSP later
Change-Id: Ifc552ed924818d7363aef822cd3060f7adfc92b6
|
|
e6c37e029b
Original change: https://android-review.googlesource.com/c/platform/art/+/2402707
Change-Id: I2a92a0a1e0f95f999306b22919c56c861c545f18
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
The only supported mode is the switch interpreter. JNI transitions are
not implemented yet (not even generic JNI trampoline), therefore it is
impossible to run even a simple hello world test (because it requires
loading Java libraries and initializing classes in them, many of which
call native methods). The only passing ART test is 000-nop.
Test: run ART test 000-nop on a Linux RISC-V VM:
lunch aosp_riscv64-userdebug
export ART_TEST_SSH_USER=ubuntu
export ART_TEST_SSH_HOST=localhost
export ART_TEST_SSH_PORT=10001
export ART_TEST_ON_VM=true
. art/tools/buildbot-utils.sh
art/tools/buildbot-build.sh --target
# Create, boot and configure the VM.
art/tools/buildbot-vm.sh create
art/tools/buildbot-vm.sh boot
art/tools/buildbot-vm.sh setup-ssh # password: 'ubuntu'
art/tools/buildbot-cleanup-device.sh
art/tools/buildbot-setup-device.sh
art/tools/buildbot-sync.sh
art/test.py --target -r --no-prebuild --ndebug --no-image \
--64 --interpreter 000-nop
Co-authored-by: Lifang Xia <lifang_xia@linux.alibaba.com>
Change-Id: Iac267525527901b74e863cb8c72ddcf0789e8a5d
|
|
e3b4be4508 am: 8c6c3cc4e4 am: 723ab2ccc9
Original change: https://android-review.googlesource.com/c/platform/art/+/2330793
Change-Id: I5968e94910074f3285c4023a9d106ff4df539ad1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
and libprofile.
For the sake of consistency, switch to linking it statically everywhere
on device, even in tests. This allows dropping libziparchive.so from
the APEX.
Also clean up some other Soong properties that were duplicated in
libartbase vs libartbased, and libprofile vs libprofiled.
Test: art/build/apex/runtests.sh
Test: gtests on host and target
Bug: 261402130
Change-Id: Iec03fa1da3cf64edc817b14c491493a63c423f6e
|
|
Original change: https://android-review.googlesource.com/c/platform/art/+/2324435
Change-Id: I5f4b40b769eb784c278935571e2c03455cba63ce
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
BUG: b/257933023
Change-Id: I66078f86bd7b7c3a929543520a65dba4a4f0b2cc
|
|
00ca1b514f am: 27b45c99d2 am: 080d972bfd
Original change: https://android-review.googlesource.com/c/platform/art/+/2289594
Change-Id: I43abdec511c9786b5b778a1dfd9fa5f6ed8ef07b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
026d5a1a36 am: 7353f8b33f
Original change: https://android-review.googlesource.com/c/platform/art/+/2251478
Change-Id: I6da8c01f6348530fd9e57819f44c737fe568ebe2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
This reverts commit 2b7be1efa1ba363778057d4e42fccab8afe3046b.
Reason for revert: broken build https://android-build.googleplex.com/builds/build-details/9263706/targets/full-eng
Change-Id: I1afd96b314418bc435c029c764fd9e406d2ccefc
|
|
Rename old libart into libart-runtime
Build libart-runtime and libart-compiler separately as static libraries
This is required to support PGO (compiler) and AFDO (runtime) without
mixing them
Combine libart-runtime and libart-compiler into libart with
whole-archive linking
This change negates all size savings from libart-compiler
version script, it will be restored in a follow-up CL
Bug: 186902856
Test: m test-art-host-gtest
Test: m libart libartd dex2oat dex2oatd oatdump oatdumps
Test: art/build/apex/runtests.sh
Test: art/tools/run-gtests.sh
Test: art/test/testrunner/testrunner.py --target --64
Test: art/tools/run-libcore-tests.sh --mode=device --variant=X64
Test: art/tools/run-libjdwp-tests.sh --mode=device --variant=X64
Change-Id: I6b9717cf49007e77691d49a2dca18a8064749154
|
|
Original change: https://android-review.googlesource.com/c/platform/art/+/2281672
Change-Id: I7f6da3bd86b9b1d3299868fbec842a821050daf5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
BUG: b/255963179, b/240288941
Test: art/build/apex/runtests.sh
Change-Id: I1bca2baf0aa43d092f75dad5d5b1ead9d7b55455
|
|
f033a451bf am: aa54c808cd am: d8d8cc1f20 am: 6b4e9e178e
Original change: https://android-review.googlesource.com/c/platform/art/+/2232131
Change-Id: Ia0fe51622f39b3fb679c18dfa222adffdd287b62
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
And clean up some related code.
Test: m test-art-host-gtest
Test: atest art_standalone_runtime_tests
Test: atest art_standalone_compiler_tests
Test: atest ArtGtestsTargetChroot
Change-Id: I6b60e553dad7111f6247fbd873cd46af11f00276
|
|
am: 636910f22a am: aa20abf044 am: 97480d0210 am: a08618db07
Original change: https://android-review.googlesource.com/c/platform/art/+/2184977
Change-Id: Ib49ce59abbfca1fa186510d577f9660680a090ad
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|