Age | Commit message (Collapse) | Author |
|
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
|
|
Test: buildbot-build.sh --target
Test: m cpp-define-generator-test && out/host/linux-x86/testcases/cpp-define-generator-test/cpp-define-generator-test
Change-Id: I73018df1e531c37d21397c2ffa35238e3df76d65
|
|
Use an unused bit in the access flags of an ArtMethod (0x00200000) to store
the information a method only takes ints or references and returns an
int, a reference, or a long. This avoids the need to fetch the shorty in nterp
when doing a call.
Test: test.py
Test: 821-many-args
Bug: 112676029
Change-Id: Ie657ccf69c17c1097dc2a97f18e3093ef3be391b
|
|
When all parameters are references, we don't need to look at the shorty.
Use the 0x00100000 flag in the modifiers which is free for non-native
methods.
Test: test.py
Bug: 112676029
Change-Id: Ied9a253f7f7230045dd13188a5b806fb1d6d019d
|
|
Bug: 180399951
Test: m
Change-Id: I5e2a1ddc3063be26c602bf4db8e6b77f2d54b656
|
|
Added SPDX-license-identifier-Apache-2.0 to:
adbconnection/Android.bp
benchmark/Android.bp
build/Android.bp
build/Android.cpplint.mk
build/Android.gtest.mk
build/apex/Android.bp
build/boot/Android.bp
build/sdk/Android.bp
cmdline/Android.bp
compiler/Android.bp
dalvikvm/Android.bp
dex2oat/Android.bp
dexdump/Android.bp
dexlayout/Android.bp
dexlist/Android.bp
dexoptanalyzer/Android.bp
disassembler/Android.bp
dt_fd_forward/export/Android.bp
imgdiag/Android.bp
libartbase/Android.bp
libartpalette/Android.bp
libartservice/Android.bp
libartservice/tests/Android.bp
libarttools/Android.bp
libdexfile/Android.bp
libelffile/Android.bp
libnativebridge/Android.bp
libnativebridge/tests/Android.bp
libnativeloader/Android.bp
libnativeloader/test/Android.bp
libnativeloader/test/Android.mk
libprofile/Android.bp
oatdump/Android.bp
odrefresh/Android.bp
perfetto_hprof/Android.bp
profman/Android.bp
runtime/Android.bp
simulator/Android.bp
test/001-HelloWorld/Android.bp
test/001-Main/Android.bp
test/002-sleep/Android.bp
test/004-InterfaceTest/Android.bp
test/004-SignalTest/Android.bp
test/004-UnsafeTest/Android.bp
test/004-checker-UnsafeTest18/Android.bp
test/006-args/Android.bp
test/007-count10/Android.bp
test/009-instanceof/Android.bp
test/010-instance/Android.bp
test/011-array-copy/Android.bp
test/012-math/Android.bp
test/013-math2/Android.bp
test/014-math3/Android.bp
test/015-switch/Android.bp
test/016-intern/Android.bp
test/017-float/Android.bp
test/018-stack-overflow/Android.bp
test/019-wrong-array-type/Android.bp
test/020-string/Android.bp
test/021-string2/Android.bp
test/022-interface/Android.bp
test/025-access-controller/Android.bp
test/026-access/Android.bp
test/027-arithmetic/Android.bp
test/028-array-write/Android.bp
test/029-assert/Android.bp
test/030-bad-finalizer/Android.bp
test/033-class-init-deadlock/Android.bp
test/034-call-null/Android.bp
test/035-enum/Android.bp
test/036-finalizer/Android.bp
test/037-inherit/Android.bp
test/038-inner-null/Android.bp
test/039-join-main/Android.bp
test/040-miranda/Android.bp
test/041-narrowing/Android.bp
test/043-privates/Android.bp
test/044-proxy/Android.bp
test/045-reflect-array/Android.bp
test/046-reflect/Android.bp
test/047-returns/Android.bp
test/048-reflect-v8/Android.bp
test/049-show-object/Android.bp
test/050-sync-test/Android.bp
test/051-thread/Android.bp
test/052-verifier-fun/Android.bp
test/053-wait-some/Android.bp
test/054-uncaught/Android.bp
test/055-enum-performance/Android.bp
test/058-enum-order/Android.bp
test/059-finalizer-throw/Android.bp
test/061-out-of-memory/Android.bp
test/062-character-encodings/Android.bp
test/063-process-manager/Android.bp
test/067-preemptive-unpark/Android.bp
test/070-nio-buffer/Android.bp
test/072-precise-gc/Android.bp
test/072-reachability-fence/Android.bp
test/074-gc-thrash/Android.bp
test/076-boolean-put/Android.bp
test/078-polymorphic-virtual/Android.bp
test/079-phantom/Android.bp
test/080-oom-fragmentation/Android.bp
test/080-oom-throw-with-finalizer/Android.bp
test/080-oom-throw/Android.bp
test/081-hot-exceptions/Android.bp
test/082-inline-execute/Android.bp
test/083-compiler-regressions/Android.bp
test/084-class-init/Android.bp
test/086-null-super/Android.bp
test/087-gc-after-link/Android.bp
test/090-loop-formation/Android.bp
test/092-locale/Android.bp
test/093-serialization/Android.bp
test/094-pattern/Android.bp
test/095-switch-MAX_INT/Android.bp
test/096-array-copy-concurrent-gc/Android.bp
test/098-ddmc/Android.bp
test/099-vmdebug/Android.bp
test/100-reflect2/Android.bp
test/1004-checker-volatile-ref-load/Android.bp
test/101-fibonacci/Android.bp
test/102-concurrent-gc/Android.bp
test/103-string-append/Android.bp
test/104-growth-limit/Android.bp
test/105-invoke/Android.bp
test/106-exceptions2/Android.bp
test/107-int-math2/Android.bp
test/108-check-cast/Android.bp
test/109-suspend-check/Android.bp
test/110-field-access/Android.bp
test/112-double-math/Android.bp
test/114-ParallelGC/Android.bp
test/115-native-bridge/Android.bp
test/116-nodex2oat/Android.bp
test/120-hashcode/Android.bp
test/121-simple-suspend-check/Android.bp
test/122-npe/Android.bp
test/123-compiler-regressions-mt/Android.bp
test/123-inline-execute2/Android.bp
test/125-gc-and-classloading/Android.bp
test/128-reg-spill-on-implicit-nullcheck/Android.bp
test/129-ThreadGetId/Android.bp
test/132-daemon-locks-shutdown/Android.bp
test/133-static-invoke-super/Android.bp
test/1336-short-finalizer-timeout/Android.bp
test/1337-gc-coverage/Android.bp
test/1339-dead-reference-safe/Android.bp
test/136-daemon-jni-shutdown/Android.bp
test/139-register-natives/Android.bp
test/140-dce-regression/Android.bp
test/140-field-packing/Android.bp
test/143-string-value/Android.bp
test/144-static-field-sigquit/Android.bp
test/148-multithread-gc-annotations/Android.bp
test/149-suspend-all-stress/Android.bp
test/150-loadlibrary/Android.bp
test/151-OpenFileLimit/Android.bp
test/152-dead-large-object/Android.bp
test/153-reference-stress/Android.bp
test/154-gc-loop/Android.bp
test/156-register-dex-file-multi-loader/Android.bp
test/158-app-image-class-table/Android.bp
test/159-app-image-fields/Android.bp
test/163-app-image-methods/Android.bp
test/165-lock-owner-proxy/Android.bp
test/168-vmstack-annotated/Android.bp
test/169-threadgroup-jni/Android.bp
test/170-interface-init/Android.bp
test/172-app-image-twice/Android.bp
test/174-escaping-instance-of-bad-class/Android.bp
test/175-alloc-big-bignums/Android.bp
test/176-app-image-string/Android.bp
test/177-visibly-initialized-deadlock/Android.bp
test/178-app-image-native-method/Android.bp
test/179-nonvirtual-jni/Android.bp
test/1900-track-alloc/Android.bp
test/1901-get-bytecodes/Android.bp
test/1902-suspend/Android.bp
test/1903-suspend-self/Android.bp
test/1904-double-suspend/Android.bp
test/1905-suspend-native/Android.bp
test/1906-suspend-list-me-first/Android.bp
test/1907-suspend-list-self-twice/Android.bp
test/1908-suspend-native-resume-self/Android.bp
test/1909-per-agent-tls/Android.bp
test/1910-transform-with-default/Android.bp
test/1911-get-local-var-table/Android.bp
test/1912-get-set-local-primitive/Android.bp
test/1913-get-set-local-objects/Android.bp
test/1914-get-local-instance/Android.bp
test/1915-get-set-local-current-thread/Android.bp
test/1916-get-set-current-frame/Android.bp
test/1917-get-stack-frame/Android.bp
test/1919-vminit-thread-start-timing/Android.bp
test/1920-suspend-native-monitor/Android.bp
test/1921-suspend-native-recursive-monitor/Android.bp
test/1922-owned-monitors-info/Android.bp
test/1923-frame-pop/Android.bp
test/1924-frame-pop-toggle/Android.bp
test/1925-self-frame-pop/Android.bp
test/1926-missed-frame-pop/Android.bp
test/1927-exception-event/Android.bp
test/1928-exception-event-exception/Android.bp
test/1930-monitor-info/Android.bp
test/1931-monitor-events/Android.bp
test/1932-monitor-events-misc/Android.bp
test/1933-monitor-current-contended/Android.bp
test/1934-jvmti-signal-thread/Android.bp
test/1935-get-set-current-frame-jit/Android.bp
test/1936-thread-end-events/Android.bp
test/1937-transform-soft-fail/Android.bp
test/1938-transform-abstract-single-impl/Android.bp
test/1939-proxy-frames/Android.bp
test/1941-dispose-stress/Android.bp
test/1942-suspend-raw-monitor-exit/Android.bp
test/1943-suspend-raw-monitor-wait/Android.bp
test/1945-proxy-method-arguments/Android.bp
test/1947-breakpoint-redefine-deopt/Android.bp
test/1949-short-dex-file/Android.bp
test/1951-monitor-enter-no-suspend/Android.bp
test/1953-pop-frame/Android.bp
test/1954-pop-frame-jit/Android.bp
test/1955-pop-frame-jit-called/Android.bp
test/1956-pop-frame-jit-calling/Android.bp
test/1957-error-ext/Android.bp
test/1958-transform-try-jit/Android.bp
test/1959-redefine-object-instrument/Android.bp
test/1960-checker-bounds-codegen/Android.bp
test/1960-obsolete-jit-multithread-native/Android.bp
test/1961-checker-loop-vectorizer/Android.bp
test/1961-obsolete-jit-multithread/Android.bp
test/1962-multi-thread-events/Android.bp
test/1963-add-to-dex-classloader-in-memory/Android.bp
test/1967-get-set-local-bad-slot/Android.bp
test/1968-force-early-return/Android.bp
test/1969-force-early-return-void/Android.bp
test/1970-force-early-return-long/Android.bp
test/1971-multi-force-early-return/Android.bp
test/1972-jni-id-swap-indices/Android.bp
test/1973-jni-id-swap-pointer/Android.bp
test/1974-resize-array/Android.bp
test/1975-hello-structural-transformation/Android.bp
test/1976-hello-structural-static-methods/Android.bp
test/1977-hello-structural-obsolescence/Android.bp
test/1978-regular-obsolete-then-structural-obsolescence/Android.bp
test/1979-threaded-structural-transformation/Android.bp
test/1980-obsolete-object-cleared/Android.bp
test/1982-no-virtuals-structural-redefinition/Android.bp
test/1984-structural-redefine-field-trace/Android.bp
test/1985-structural-redefine-stack-scope/Android.bp
test/1986-structural-redefine-multi-thread-stack-scope/Android.bp
test/1987-structural-redefine-recursive-stack-scope/Android.bp
test/1988-multi-structural-redefine/Android.bp
test/1989-transform-bad-monitor/Android.bp
test/1990-structural-bad-verify/Android.bp
test/1991-hello-structural-retransform/Android.bp
test/1992-retransform-no-such-field/Android.bp
test/1993-fallback-non-structural/Android.bp
test/1994-final-virtual-structural/Android.bp
test/1995-final-virtual-structural-multithread/Android.bp
test/1996-final-override-virtual-structural/Android.bp
test/1997-structural-shadow-method/Android.bp
test/1998-structural-shadow-field/Android.bp
test/1999-virtual-structural/Android.bp
test/2003-double-virtual-structural/Android.bp
test/2004-double-virtual-structural-abstract/Android.bp
test/2005-pause-all-redefine-multithreaded/Android.bp
test/2008-redefine-then-old-reflect-field/Android.bp
test/201-built-in-except-detail-messages/Android.bp
test/2011-stack-walk-concurrent-instrument/Android.bp
test/2019-constantcalculationsinking/Android.bp
test/202-thread-oome/Android.bp
test/2020-InvokeVirtual-Inlining/Android.bp
test/2021-InvokeStatic-Inlining/Android.bp
test/2022-Invariantloops/Android.bp
test/2023-InvariantLoops_typecast/Android.bp
test/2024-InvariantNegativeLoop/Android.bp
test/2025-ChangedArrayValue/Android.bp
test/2026-DifferentMemoryLSCouples/Android.bp
test/2027-TwiceTheSameMemoryCouple/Android.bp
test/2028-MultiBackward/Android.bp
test/2029-contended-monitors/Android.bp
test/203-multi-checkpoint/Android.bp
test/2030-long-running-child/Android.bp
test/2031-zygote-compiled-frame-deopt/Android.bp
test/2033-shutdown-mechanics/Android.bp
test/2036-jni-filechannel/Android.bp
test/2037-thread-name-inherit/Android.bp
test/2231-checker-heap-poisoning/Android.bp
test/2232-write-metrics-to-log/Android.bp
test/300-package-override/Android.bp
test/301-abstract-protected/Android.bp
test/302-float-conversion/Android.bp
test/304-method-tracing/Android.bp
test/305-other-fault-handler/Android.bp
test/401-optimizing-compiler/Android.bp
test/402-optimizing-control-flow/Android.bp
test/403-optimizing-long/Android.bp
test/404-optimizing-allocator/Android.bp
test/405-optimizing-long-allocator/Android.bp
test/406-fields/Android.bp
test/407-arrays/Android.bp
test/408-move-bug/Android.bp
test/409-materialized-condition/Android.bp
test/410-floats/Android.bp
test/411-checker-hdiv-hrem-const/Android.bp
test/411-checker-hdiv-hrem-pow2/Android.bp
test/411-checker-instruct-simplifier-hrem/Android.bp
test/411-optimizing-arith/Android.bp
test/413-regalloc-regression/Android.bp
test/414-static-fields/Android.bp
test/418-const-string/Android.bp
test/419-long-parameter/Android.bp
test/420-const-class/Android.bp
test/421-exceptions/Android.bp
test/421-large-frame/Android.bp
test/422-instanceof/Android.bp
test/422-type-conversion/Android.bp
test/423-invoke-interface/Android.bp
test/424-checkcast/Android.bp
test/426-monitor/Android.bp
test/427-bitwise/Android.bp
test/427-bounds/Android.bp
test/429-ssa-builder/Android.bp
test/430-live-register-slow-path/Android.bp
test/433-gvn/Android.bp
test/434-shifter-operand/Android.bp
test/435-try-finally-without-catch/Android.bp
test/436-rem-float/Android.bp
test/436-shift-constant/Android.bp
test/437-inline/Android.bp
test/438-volatile/Android.bp
test/439-npe/Android.bp
test/439-swap-double/Android.bp
test/440-stmp/Android.bp
test/441-checker-inliner/Android.bp
test/443-not-bool-inline/Android.bp
test/444-checker-nce/Android.bp
test/445-checker-licm/Android.bp
test/446-checker-inliner2/Android.bp
test/447-checker-inliner3/Android.bp
test/449-checker-bce-rem/Android.bp
test/449-checker-bce/Android.bp
test/450-checker-types/Android.bp
test/451-regression-add-float/Android.bp
test/451-spill-splot/Android.bp
test/454-get-vreg/Android.bp
test/455-checker-gvn/Android.bp
test/456-baseline-array-set/Android.bp
test/458-long-to-fpu/Android.bp
test/461-get-reference-vreg/Android.bp
test/464-checker-inline-sharpen-calls/Android.bp
test/465-checker-clinit-gvn/Android.bp
test/466-get-live-vreg/Android.bp
test/469-condition-materialization/Android.bp
test/470-huge-method/Android.bp
test/471-deopt-environment/Android.bp
test/472-type-propagation/Android.bp
test/473-checker-inliner-constants/Android.bp
test/473-remove-dead-block/Android.bp
test/474-checker-boolean-input/Android.bp
test/474-fp-sub-neg/Android.bp
test/475-simplify-mul-zero/Android.bp
test/476-checker-ctor-fence-redun-elim/Android.bp
test/476-checker-ctor-memory-barrier/Android.bp
test/476-clinit-inline-static-invoke/Android.bp
test/477-checker-bound-type/Android.bp
test/477-long-2-float-convers-precision/Android.bp
test/478-checker-clinit-check-pruning/Android.bp
test/478-checker-inline-noreturn/Android.bp
test/478-checker-inliner-nested-loop/Android.bp
test/479-regression-implicit-null-check/Android.bp
test/480-checker-dead-blocks/Android.bp
test/481-regression-phi-cond/Android.bp
test/482-checker-loop-back-edge-use/Android.bp
test/483-dce-block/Android.bp
test/485-checker-dce-switch/Android.bp
test/486-checker-must-do-null-check/Android.bp
test/487-checker-inline-calls/Android.bp
test/488-checker-inline-recursive-calls/Android.bp
test/489-current-method-regression/Android.bp
test/490-checker-inline/Android.bp
test/491-current-method/Android.bp
test/492-checker-inline-invoke-interface/Android.bp
test/493-checker-inline-invoke-interface/Android.bp
test/494-checker-instanceof-tests/Android.bp
test/495-checker-checkcast-tests/Android.bp
test/496-checker-inlining-class-loader/Android.bp
test/497-inlining-and-class-loader/Android.bp
test/499-bce-phi-array-length/Android.bp
test/500-instanceof/Android.bp
test/505-simplifier-type-propagation/Android.bp
test/507-boolean-test/Android.bp
test/507-referrer/Android.bp
test/508-checker-disassembly/Android.bp
test/508-referrer-method/Android.bp
test/513-array-deopt/Android.bp
test/514-shifts/Android.bp
test/519-bound-load-class/Android.bp
test/521-checker-array-set-null/Android.bp
test/521-regression-integer-field-set/Android.bp
test/524-boolean-simplifier-regression/Android.bp
test/525-checker-arrays-fields1/Android.bp
test/525-checker-arrays-fields2/Android.bp
test/526-checker-caller-callee-regs/Android.bp
test/526-long-regalloc/Android.bp
test/527-checker-array-access-simd/Android.bp
test/527-checker-array-access-split/Android.bp
test/528-long-hint/Android.bp
test/529-long-split/Android.bp
test/530-checker-loops1/Android.bp
test/530-checker-loops2/Android.bp
test/530-checker-loops3/Android.bp
test/530-checker-loops4/Android.bp
test/530-checker-loops5/Android.bp
test/530-checker-lse-ctor-fences/Android.bp
test/530-checker-lse-simd/Android.bp
test/530-checker-lse/Android.bp
test/530-checker-lse2/Android.bp
test/530-instanceof-checkcast/Android.bp
test/530-regression-lse/Android.bp
test/532-checker-nonnull-arrayset/Android.bp
test/534-checker-bce-deoptimization/Android.bp
test/535-deopt-and-inlining/Android.bp
test/536-checker-intrinsic-optimization/Android.bp
test/537-checker-arraycopy/Android.bp
test/537-checker-jump-over-jump/Android.bp
test/538-checker-embed-constants/Android.bp
test/540-checker-rtp-bug/Android.bp
test/542-bitfield-rotates/Android.bp
test/542-inline-trycatch/Android.bp
test/542-unresolved-access-check/Android.bp
test/545-tracing-and-jit/Android.bp
test/548-checker-inlining-and-dce/Android.bp
test/549-checker-types-merge/Android.bp
test/550-checker-multiply-accumulate/Android.bp
test/550-new-instance-clinit/Android.bp
test/551-checker-clinit/Android.bp
test/551-checker-shifter-operand/Android.bp
test/551-implicit-null-checks/Android.bp
test/552-checker-sharpening/Android.bp
test/552-checker-x86-avx2-bit-manipulation/Android.bp
test/554-checker-rtp-checkcast/Android.bp
test/555-UnsafeGetLong-regression/Android.bp
test/557-checker-instruct-simplifier-ror/Android.bp
test/558-switch/Android.bp
test/559-bce-ssa/Android.bp
test/559-checker-rtp-ifnotnull/Android.bp
test/560-packed-switch/Android.bp
test/561-divrem/Android.bp
test/561-shared-slowpaths/Android.bp
test/562-bce-preheader/Android.bp
test/562-checker-no-intermediate/Android.bp
test/563-checker-invoke-super/Android.bp
test/564-checker-bitcount/Android.bp
test/564-checker-inline-loop/Android.bp
test/564-checker-negbitwise/Android.bp
test/565-checker-condition-liveness/Android.bp
test/566-checker-codegen-select/Android.bp
test/566-polymorphic-inlining/Android.bp
test/567-checker-builder-intrinsics/Android.bp
test/568-checker-onebit/Android.bp
test/570-checker-select/Android.bp
test/572-checker-array-get-regression/Android.bp
test/573-checker-checkcast-regression/Android.bp
test/576-polymorphic-inlining/Android.bp
test/577-checker-fp2int/Android.bp
test/578-bce-visit/Android.bp
test/578-polymorphic-inlining/Android.bp
test/579-inline-infinite/Android.bp
test/580-checker-round/Android.bp
test/580-crc32/Android.bp
test/581-rtp/Android.bp
test/582-checker-bce-length/Android.bp
test/583-checker-zero/Android.bp
test/584-checker-div-bool/Android.bp
test/589-super-imt/Android.bp
test/590-checker-arr-set-null-regression/Android.bp
test/591-checker-regression-dead-loop/Android.bp
test/593-checker-long-2-float-regression/Android.bp
test/594-checker-array-alias/Android.bp
test/594-load-string-regression/Android.bp
test/595-profile-saving/Android.bp
test/597-deopt-busy-loop/Android.bp
test/597-deopt-invoke-stub/Android.bp
test/597-deopt-new-string/Android.bp
test/602-deoptimizeable/Android.bp
test/603-checker-instanceof/Android.bp
test/604-hot-static-interface/Android.bp
test/605-new-string-from-bytes/Android.bp
test/607-daemon-stress/Android.bp
test/609-checker-inline-interface/Android.bp
test/609-checker-x86-bounds-check/Android.bp
test/610-arraycopy/Android.bp
test/611-checker-simplify-if/Android.bp
test/614-checker-dump-constant-location/Android.bp
test/615-checker-arm64-store-zero/Android.bp
test/616-cha-abstract/Android.bp
test/616-cha-interface/Android.bp
test/616-cha-miranda/Android.bp
test/616-cha-native/Android.bp
test/616-cha-regression-proxy-method/Android.bp
test/616-cha/Android.bp
test/617-clinit-oome/Android.bp
test/618-checker-induction/Android.bp
test/619-checker-current-method/Android.bp
test/620-checker-bce-intrinsics/Android.bp
test/622-checker-bce-regressions/Android.bp
test/623-checker-loop-regressions/Android.bp
test/625-checker-licm-regressions/Android.bp
test/626-set-resolved-string/Android.bp
test/627-checker-unroll/Android.bp
test/628-vdex/Android.bp
test/629-vdex-speed/Android.bp
test/631-checker-get-class/Android.bp
test/632-checker-char-at-bounds/Android.bp
test/635-checker-arm64-volatile-load-cc/Android.bp
test/636-arm64-veneer-pool/Android.bp
test/637-checker-throw-inline/Android.bp
test/638-checker-inline-cache-intrinsic/Android.bp
test/639-checker-code-sinking/Android.bp
test/640-checker-boolean-simd/Android.bp
test/640-checker-integer-valueof/Android.bp
test/640-checker-simd/Android.bp
test/641-checker-arraycopy/Android.bp
test/641-iterations/Android.bp
test/642-fp-callees/Android.bp
test/643-checker-bogus-ic/Android.bp
test/645-checker-abs-simd/Android.bp
test/646-checker-arraycopy-large-cst-pos/Android.bp
test/646-checker-long-const-to-int/Android.bp
test/646-checker-simd-hadd/Android.bp
test/647-jni-get-field-id/Android.bp
test/650-checker-inline-access-thunks/Android.bp
test/652-deopt-intrinsic/Android.bp
test/654-checker-periodic/Android.bp
test/655-checker-simd-arm-opt/Android.bp
test/655-jit-clinit/Android.bp
test/656-checker-simd-opt/Android.bp
test/656-loop-deopt/Android.bp
test/657-branches/Android.bp
test/658-fp-read-barrier/Android.bp
test/660-checker-sad/Android.bp
test/660-checker-simd-sad/Android.bp
test/660-clinit/Android.bp
test/661-checker-simd-reduc/Android.bp
test/661-oat-writer-layout/Android.bp
test/662-regression-alias/Android.bp
test/664-aget-verifier/Android.bp
test/665-checker-simd-zero/Android.bp
test/666-dex-cache-itf/Android.bp
test/667-checker-simd-alignment/Android.bp
test/667-jit-jni-stub/Android.bp
test/667-out-of-bounds/Android.bp
test/669-checker-break/Android.bp
test/671-npe-field-opts/Android.bp
test/672-checker-throw-method/Android.bp
test/673-checker-throw-vmethod/Android.bp
test/674-HelloWorld-Dm/Android.bp
test/674-hotness-compiled/Android.bp
test/676-proxy-jit-at-first-use/Android.bp
test/677-fsi2/Android.bp
test/679-locks/Android.bp
test/680-checker-deopt-dex-pc-0/Android.bp
test/680-sink-regression/Android.bp
test/684-checker-simd-dotprod/Android.bp
test/684-select-condition/Android.bp
test/685-deoptimizeable/Android.bp
test/687-deopt/Android.bp
test/689-multi-catch/Android.bp
test/689-zygote-jit-deopt/Android.bp
test/693-vdex-inmem-loader-evict/Android.bp
test/694-clinit-jit/Android.bp
test/695-simplify-throws/Android.bp
test/696-loop/Android.bp
test/697-checker-string-append/Android.bp
test/698-selects/Android.bp
test/700-LoadArgRegs/Android.bp
test/703-floating-point-div/Android.bp
test/704-multiply-accumulate/Android.bp
test/705-register-conflict/Android.bp
test/707-checker-invalid-profile/Android.bp
test/708-jit-cache-churn/Android.bp
test/711-checker-type-conversion/Android.bp
test/717-integer-value-of/Android.bp
test/718-zipfile-finalizer/Android.bp
test/720-thread-priority/Android.bp
test/721-osr/Android.bp
test/726-array-store/Android.bp
test/728-imt-conflict-zygote/Android.bp
test/805-TooDeepClassInstanceOf/Android.bp
test/806-TooWideClassInstanceOf/Android.bp
test/812-recursive-default/Android.bp
test/813-fp-args/Android.bp
test/814-large-field-offsets/Android.bp
test/815-invokeinterface-default/Android.bp
test/818-clinit-nterp/Android.bp
test/900-hello-plugin/Android.bp
test/901-hello-ti-agent/Android.bp
test/902-hello-transformation/Android.bp
test/903-hello-tagging/Android.bp
test/904-object-allocation/Android.bp
test/905-object-free/Android.bp
test/906-iterate-heap/Android.bp
test/907-get-loaded-classes/Android.bp
test/908-gc-start-finish/Android.bp
test/910-methods/Android.bp
test/911-get-stack-trace/Android.bp
test/913-heaps/Android.bp
test/914-hello-obsolescence/Android.bp
test/915-obsolete-2/Android.bp
test/916-obsolete-jit/Android.bp
test/917-fields-transformation/Android.bp
test/918-fields/Android.bp
test/919-obsolete-fields/Android.bp
test/920-objects/Android.bp
test/921-hello-failure/Android.bp
test/922-properties/Android.bp
test/923-monitors/Android.bp
test/924-threads/Android.bp
test/925-threadgroups/Android.bp
test/926-multi-obsolescence/Android.bp
test/927-timers/Android.bp
test/928-jni-table/Android.bp
test/930-hello-retransform/Android.bp
test/931-agent-thread/Android.bp
test/932-transform-saves/Android.bp
test/933-misc-events/Android.bp
test/937-hello-retransform-package/Android.bp
test/939-hello-transformation-bcp/Android.bp
test/940-recursive-obsolete/Android.bp
test/941-recursive-obsolete-jit/Android.bp
test/942-private-recursive/Android.bp
test/943-private-recursive-jit/Android.bp
test/944-transform-classloaders/Android.bp
test/945-obsolete-native/Android.bp
test/946-obsolete-throw/Android.bp
test/947-reflect-method/Android.bp
test/949-in-memory-transform/Android.bp
test/950-redefine-intrinsic/Android.bp
test/951-threaded-obsolete/Android.bp
test/963-default-range-smali/Android.bp
test/982-ok-no-retransform/Android.bp
test/983-source-transform-verify/Android.bp
test/984-obsolete-invoke/Android.bp
test/985-re-obsolete/Android.bp
test/986-native-method-bind/Android.bp
test/987-agent-bind/Android.bp
test/988-method-trace/Android.bp
test/989-method-trace-throw/Android.bp
test/990-field-trace/Android.bp
test/991-field-trace-2/Android.bp
test/992-source-data/Android.bp
test/993-breakpoints/Android.bp
test/994-breakpoint-line/Android.bp
test/995-breakpoints-throw/Android.bp
test/996-breakpoint-obsolete/Android.bp
test/997-single-step/Android.bp
test/Android.bp
tools/Android.bp
tools/ahat/Android.bp
tools/ahat/Android.mk
tools/art_verifier/Android.bp
tools/cpp-define-generator/Android.bp
tools/dexanalyze/Android.bp
tools/dexfuzz/Android.bp
tools/dmtracedump/Android.bp
tools/hiddenapi/Android.bp
tools/jfuzz/Android.bp
tools/jvmti-agents/breakpoint-logger/Android.bp
tools/jvmti-agents/chain-agents/Android.bp
tools/jvmti-agents/dump-jvmti-state/Android.bp
tools/jvmti-agents/enable-vlog/Android.bp
tools/jvmti-agents/field-counts/Android.bp
tools/jvmti-agents/field-null-percent/Android.bp
tools/jvmti-agents/jit-load/Android.bp
tools/jvmti-agents/list-extensions/Android.bp
tools/jvmti-agents/simple-force-redefine/Android.bp
tools/jvmti-agents/simple-profile/Android.bp
tools/jvmti-agents/ti-alloc-sample/Android.bp
tools/jvmti-agents/ti-fast/Android.bp
tools/jvmti-agents/titrace/Android.bp
tools/jvmti-agents/wrapagentproperties/Android.bp
tools/signal_dumper/Android.bp
tools/tracefast-plugin/Android.bp
tools/veridex/Android.bp
Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:
sigchainlib/Android.bp
Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
SPDX-license-identifier-GPL-2.0
to:
Android.bp
Android.mk
Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-GPL-2.0
SPDX-license-identifier-GPL-with-classpath-exception
to:
dt_fd_forward/Android.bp
openjdkjvmti/Android.bp
Added SPDX-license-identifier-GPL-2.0
SPDX-license-identifier-GPL-with-classpath-exception
to:
openjdkjvm/Android.bp
Bug: 68860345
Bug: 151177513
Bug: 151953481
Test: m all
Exempt-From-Owner-Approval: janitorial work
Change-Id: If775045c12955fa6d72d40ccf2a09beef93d1699
Merged-in: If775045c12955fa6d72d40ccf2a09beef93d1699
|
|
The DexCache is always allocated at runtime now and thus
it always has runtime pointer-size. Remove the dead code.
Test: m test-art-host-gtest
Change-Id: Ic21dc20649e1fd70f8981602d75b5690065aec20
|
|
Such methods only take 'this' as an argument and we don't need to fetch
the shorty.
We can make this optimization when doing nterp->compiled as a follow-up,
by checking that the next instruction after the invoke is not
move-result(-wide).
Test: test.py
Bug: 112676029
Change-Id: Ibc7b4d4ca1c636f4ad6572484e0990ccdbd63293
|
|
This reverts commit f1d06474baa2f7c00761db39099b89ddab71bbe4.
Bug: 177554973
Bug: 112676029
Test: test.py
Test: 815-invokeinterface-default
Test: enable text-to-speech on device, no crash
Reason for revert: Fixed issue with recursive default methods
Change-Id: I2fb9336adb6c4fc920f39aa19bfe7f0a92ce059a
|
|
This reverts commit c0d392be9172c4c60b3e81b0123489ec3036c401.
Bug: 177554973
Reason for revert: Fix crash when enabling 'Select to Speak'
Change-Id: If2865cc1dfc11e6bd27ed533da10f53521e3e613
|
|
- Remove bitwise negation of imt_index: the class linker already always
initializes the imt_index.
- Special case the imt index of default methods: to simplify invocation
in nterp, mask the method_index to create the imt index.
- Add arm64, arm, x64 support in nterp.
Test: test.py
Bug: 112676029
Change-Id: I815a4a4ec5c219921ab4ed1a20b02586aab19a46
|
|
Currently using arm32, will try thumb once this CL lands to compare
performance.
Test: test.py, run-libcore-tests, device boots
Bug: 112676029
Change-Id: I6535e2982a3ceed83eba6664fc8ba8609974bc08
|
|
Test: Build & boot on AOSP master
Test: `m` on AOSP master, flipping
PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD between true and false, and
check out/target/product/bonito/symbols/apex/com.android.art.
Test: art/build/apex/runtests.sh
Test: art/tools/buildbot-build.sh {--host,--target}
Test: art/tools/run-gtests.sh
Test: m test-art-host-gtest
Test: art/test/testrunner/testrunner.py --target --64 --optimizing
Test: m build-art-target-golem
Bug: 169639321
Change-Id: Ic4bb8d6f9988ce99bba326b9c635bd3c01ed74ab
Merged-In: Ic4bb8d6f9988ce99bba326b9c635bd3c01ed74ab
|
|
Test: test.py
Bug: 112676029
Change-Id: I604af166dab0647037bf675cabc6ce433053a83c
|
|
This saves 4 bytes on 32bit and 8 bytes on 64bit on ArtMethod.
Also update nterp to directly fetch the code item from the data pointer.
Test: test.py
Bug: 112676029
Change-Id: Ic01f43c7ccf2cbce1ec517478e81362232d36371
|
|
With upcoming SDK snapshot generation fixes it won't be enabled for
linux_glibc either.
Test: art/build/apex/runtests.sh on master-art
Test: art/tools/buildbot-build.sh {--host,--target} on master-art
Bug: 151303681
Change-Id: I9379d47dd266c7737fc9e30db67f833c63044965
|
|
Test: test.py
Test: google/perf/app-transition/app-transition-to-recents
Bug: 112676029
Bug: 157402634
Change-Id: Ibe08720b442c5050062db1104be2d3a62641e629
|
|
Emit direct calls from compiled managed code to the native
code registered with the method, avoiding the JNI stub.
Golem results:
art-opt-cc x86 x86-64 arm arm64
NativeDowncallStaticCritical +12.5% +62.5% +75.9% +41.7%
NativeDowncallStaticCritical6 +55.6% +87.5% +72.1% +35.3%
art-opt x86 x86-64 arm arm64
NativeDowncallStaticCritical +28.6% +85.6% +76.4% +38.4%
NativeDowncallStaticCritical6 +44.6% +44.6% +74.6% +32.2%
Test: Covered by 178-app-image-native-method.
Test: m test-art-host-gtest
Test: testrunner.py --host --debuggable --ndebuggable \
--optimizing --jit --jit-on-first-use
Test: run-gtests.sh
Test: testrunner.py --target --optimizing
Test: testrunner.py --target --debuggable --ndebuggable \
--optimizing --jit --jit-on-first-use -t 178
Test: aosp_cf_x86_phone-userdebug boots.
Test: aosp_cf_x86_phone-userdebug/jitzygote boots.
Bug: 112189621
Change-Id: I8b37da51e8fe0b7bc513bb81b127fe0416068866
|
|
Test: Build and boot
Bug: 153590472
Change-Id: I1755d6648e467e8a1edb613278ed756888a6fc3a
|
|
The marked library(ies) were available to the APEXes via the
hand-written whitelist in build/soong/apex/apex.go. Trying to remove the
whitelist by adding apex_available property to the Android.bp of the
libraries.
Bug: 150999716
Test: m
Merged-In: Ie9a693be10c6c6571c8aa5357500f5d931400593
(cherry picked from commit 0f152391c0458d3d1cce04a11bc92e7234955d6f)
Change-Id: Ie9a693be10c6c6571c8aa5357500f5d931400593
|
|
Bug: 152482542
Test: lunch aosp_x86_64 && m checkbuild
Change-Id: I1859a5b15d7e1a4939968908d862d27b2345acc4
|
|
Test: Add and enable tests in 178-app-image-native-method
Test: Add and enable tests in jni_compiler_test
Test: Manually step through the new stub in GDB and check
that backtrace works at various points.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Test: aosp_taimen-userdebug boots.
Test: run-gtests.sh
Test: testrunner.py --target --optimizing
Bug: 112189621
Change-Id: If094e5062acbb99eefa88f2afb4815f93730cb82
|
|
Previously, Soong didn't follow the static dependencies when checking
apex_available. As a result, a module that is not available to an APEX
(or to the platform) was able to be statically linked from the APEX (or
the platform).
As the Soong bug is fixed, unchecked dependencies have revealed and this
change reflects the finding.
Exempt-From-Owner-Approval: cherry-pick from internal
Bug: 147671264
Test: m
Merged-In: I6d9dbe31a8d46d26a4925462edd1984281bd203a
(cherry picked from commit a24189de28d3dc078ffe3e694816859bce9ce730)
Change-Id: I6d9dbe31a8d46d26a4925462edd1984281bd203a
|
|
Reason for revert: relanding with fix
Reverted Changes:
Ic4119368c:Revert submission 1191937-art_apex_available
Ia084976bb:Revert submission 1191937-art_apex_available
Iada86226d:Revert submission 1191937-art_apex_available
Ic76735eac:Revert submission 1191937-art_apex_available
I1eb30e355:Revert submission 1191937-art_apex_available
Icaf95d260:Revert submission 1191937-art_apex_available
Ie8bace4be:Revert submission 1191937-art_apex_available
I8961702cf:Revert submission 1191937-art_apex_available
I39316f9ef:Revert submission 1191937-art_apex_available
I522a7e83b:Revert submission 1191937-art_apex_available
I8b9424976:Revert submission 1191937-art_apex_available
I48b998629:Revert submission 1191937-art_apex_available
Change-Id: I7a101d39ff63c153675e4e741f9de1a15a778d33
|
|
Original Commit Message:
"""
Rename modules that are APEX-only
The renamed modules are only available for APEXes, but not for the
platform. Use the <module_name>.<apex_name> syntax to correctly install
the APEX variant of the modules.
"""
Reason for revert: Build Cop - Breaks about 15 AOSP targets, with high confidence due to these changes being the only non-robot changes in those builds.
Reverted Changes:
I190ce2d10:Use apex_available property
I990e0a67e:Use apex_available property
I0d1295683:Revert "Avoid duplicated classes for boot dex jars...
I5fb725403:Find the jar libraries in APEX from the correct pa...
I322b1efcc:Rename modules that are APEX-only
Ifa2bd0f8f:Use apex_available property
Iac6533177:Use apex_available property
Ie999602c6:Use apex_available property
I2a3d73397:Use apex_available property
Ic91bcbb9a:Use apex_available property
Ia6c324eed:Use apex_available property
I964d0125c:Use apex_available property
Change-Id: I1eb30e355cfce316b94cde0dd176002af8d222bb
|
|
Use apex_available property to prevent modules that are only for the ART
apex from being used outside of the APEX.
This change also fixes the reference to
$(TARGET_OUT_SHARED_LIBRARIES)/$(lib).so to $(lib).com.android.art.debug
phony module since the former is never installed to the system partition
due to their 'apex_available' settings.
Bug: 128708192
Bug: 133140750
Test: m
Change-Id: I990e0a67e066d9b1dc221748422a2f44449258da
|
|
And enable it on x64 when runtime and ArtMethod requirements are met
(see nterp.cc).
Test: test.py
Bug: 112676029
Change-Id: I772cd20a20fdc0ff99529df7495801d773091584
|
|
- Make the compiler restore all callee-save registers.
- Make the compiler return any value in a core register: this simplifies
the current stub, and will also avoid having to look at the return
type (and reading the shorty) when returning to an nterp frame.
- Add OsrData and offsets of its members to be used by nterp.
Test: test.py
Bug: 27094810
Change-Id: Ifa4f4877ab8b1f0c6a96feccea30c909942eb2fa
|
|
- Add data structure offsets that will be used in assembly code.
- Be explicit about a stack overflow in a fault handler.
- Move assembly helper code in asm_support so interpreter can use it.
- Support putting literals in InterpreterCache.
- Fix artHandleFillArrayDataFromCode for x64.
Bug: 119800099
Test: test.py
Change-Id: I2729f87fe5d09c04ae2e7081636f0cd89ac14c21
|
|
Avoid failing a runtime state assertion.
Test: Enable tests in 178-app-image-native-method
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Test: aosp_taimen-userdebug boots.
Test: run-gtests.sh
Test: testrunner.py --target --optimizing
Bug: 112189621
Change-Id: I3eb5c9fd239743732866e8ea0863a84bf85f7b20
|
|
In trying to remove profiling from interpreter, to speed up
interpreter performance.
Bug: 119800099
Test: test.py --baseline
Change-Id: Ica1fa41a889b31262d9f5691b30a31fbcec01b34
|
|
This is (one of the many things) currently breaking the Mac build.
Test: builds on my puny Mac
Change-Id: Ifab20b357573917fb4929cf41052b2ed544476fd
|
|
Bug: http://b/117842681
Bug: https://github.com/android-ndk/ndk/issues/1036
After change https://reviews.llvm.org/D65550, Clang stopped emitting '#'
before constants in inline assembly. To accommodate this change, mark
the $/# before constants as optional in make_header.py
Test: Build with old and new compilers
Change-Id: Idb056c99a2bfc4d14e4e30d7dc1d0740ca4f9b60
|
|
Depends on change to add support for header_libs to cc_object.
This change:
* Removes unused art/libartbase and system/core/base/include from
asm_defines.s.
* Replaces include_dirs with header_libs.
Bug: 35624006
Test: m cpp-define-generator-asm-support - compare output before and after change
Change-Id: I1475193e057abe2a6e7a320fcc989fa37d37792f
|
|
This reverts commit 50bc8fb89c79874e731f245abda3b9e48a541cfe.
Reason for revert: Performance regression
Change-Id: Ib39ceb9e1f2753c518dd24fd193a824211fd5795
|
|
They store the same information which is redundant and error prone.
Test: ./art/test.py --interpreter
Change-Id: I379c20973b90645e3c1016c253d9a6db9a2417dc
|
|
Split libartbase's globals.h into actual globals, and runtime-
dependent globals which should live in runtime.
Blanket-convert all runtime/ inclusions.
In future CLs, the number of global constants should be reduced.
For example, GC types are only relevant to GC/alloc functionality.
Bug: 119869270
Test: mmma art
Change-Id: I2d8cd32e0e7ab4084d2f2e96864b5338a78da94e
|
|
Add field to the Thread object which stores the value instead (negated).
Explicitly update the field when relevant state changes (which is rare).
This speeds up golem interpreter benchmarks by 3.5%
on average with some benchmarks up to 15% faster.
Test: test.py -b -r --interpreter --host
Change-Id: If2df0d3bf9e69ab50c30102b2648e997927c34d8
|
|
The runtime is build with both debug and non-debug configs,
so checking it there covers more cases.
Test: Check this caches cases which previously passed.
Change-Id: I543547e517b79289438b19ed9e18f5a6d0b74172
|
|
They are currently unused and I don't have plans to use them.
The alternate table made it possible to enable extra mterp checks.
However, it is possible to move the debug checks to the main path.
Test: test.py -b -r --interpreter -t 001-HelloWorld
Change-Id: I45a39ec73abaefaecf5b8c636f3f9d519a0a8bb0
|
|
Use helpers to make more room for the follow-up CL.
Refactor the code so that it is possible to add
non-opcode specific helpers with custom name.
Test: test.py -b -r --interpreter -t 001-HelloWorld
Change-Id: I3714f83c10e1c16d3b26108e6eb475805482c785
|
|
Test: test-art-host-gtest-arch_test
Change-Id: Ifda7a51d19156b1eb62bc39b16ec559d609744e5
|
|
The new method works by generating temporary per-architecture
human-readable object file with the constants embedded in it.
Python script extracts those values and generates the header.
This means the values can now implicitly depend on pointer size,
compile time flags, or ABI specific object layout with no hacks.
Test: test-art-host-gtest-arch_test
Change-Id: Id6e8c77c01f9d6c49cd6d40e3487b56fa4777349
|
|
Still generate the file, just don't commit it in the repository.
The build system decides the location, which is: out/soong/.intermediates/art/tools/
cpp-define-generator/cpp-define-generator-asm-support/<arch>/gen/asm_support_gen.h
Test: test-art-host-gtest
Change-Id: I586bad682818acb5293919b84c02738bba3073ea
|
|
Small (one page) cache which can be used on the hottest paths
in the interpreter and which does not require synchronisation.
This CL adds the code but it does not use it for anything yet.
Test: test-art-host-gtest
Change-Id: I41d4e7a86a0f62f7a4efc165b8934232b4e766c7
|
|
|
|
Do the same in fewer instructions.
Test: Pixel 2 XL boots.
Test: testrunner.py --target --optimizing
Change-Id: I8003481116fd3dc6a1559b84fdc776b92dba0c68
|
|
Adds a dependency from libdexfile on libartbase, but allows the use of
MemMap loaders, etc.
Bug: 78652467
Test: make -j 40 checkbuild
Change-Id: I15cf33893ca9192050762f8350a3cc1e39f88dc5
|
|
Remove runtime/globals.h and make clients point to the right globals.h
(libartbase/base/globals.h). Also make within-libartbase includes
relative rather than using base/, etc.
Bug: 22322814
Test: make -j 40 checkbuild
Change-Id: I99de63fc851d48946ab401e2369de944419041c7
|
|
Add a new header library to remove libdexfile and others' dependence on
runtime (typically runtime/base) includes in libdexfile. Also a small step
to tease dexlayout and profman away from relying on these as well.
Bug: 22322814
Test: make -j 50 checkbuild
make -j 50 test-art-host-gtest
Change-Id: I38e2fe399a75f4bc6318c77a71954c00ea73ec2b
|