OSDN Git Service
Mathieu Chartier [Mon, 17 Apr 2017 22:24:43 +0000 (15:24 -0700)]
Differentiate between native alloc and normal background GC
Added a new GC cause kGcCauseForNativeAllocBackground.
Bug:
35872915
Test: test-art-host
Change-Id: I94e17f8bd53af29f2862b9910bd8abd2df97e229
Treehugger Robot [Tue, 18 Apr 2017 00:58:38 +0000 (00:58 +0000)]
Merge "sigchain: switch from __thread to pthread_setspecific."
Josh Gao [Mon, 17 Apr 2017 22:58:36 +0000 (15:58 -0700)]
sigchain: switch from __thread to pthread_setspecific.
__thread is implemented via emutls on Android, which will result in the
thread local variable being allocated again and leaked if it gets used
after it has been destructed already (e.g. by a later destructor
calling sigprocmask, or triggering a signal handler).
Switch to pthread_setspecific, which doesn't suffer from this problem.
Bug: http://b/
36871013
Test: ran dalvikvm on a class that spins creating threads
Change-Id: Ie5deab453be387490ba30a0010e12f60d736c8ad
Treehugger Robot [Mon, 17 Apr 2017 21:45:18 +0000 (21:45 +0000)]
Merge "Enable some redefinition run-tests in CTS"
Treehugger Robot [Mon, 17 Apr 2017 21:42:46 +0000 (21:42 +0000)]
Merge "ART: Change run-test 913 array testing"
Treehugger Robot [Mon, 17 Apr 2017 21:35:48 +0000 (21:35 +0000)]
Merge "Disable read barrier thunks for heap poisoning"
Calin Juravle [Mon, 17 Apr 2017 21:26:47 +0000 (21:26 +0000)]
Merge "Print runtime isa when invoking 'dalvikvm --showversion'"
Alex Light [Fri, 14 Apr 2017 23:20:53 +0000 (16:20 -0700)]
Enable some redefinition run-tests in CTS
We added the tests to run-test-jvmti-java-library
target and made some small changes to tests to
ensure that everything works without linking to
libart.so.
Bug:
32072923
Test: ./test.py --host -j40
Change-Id: I8fdad180c77b125c22c043cd61305cee79801cc7
Andreas Gampe [Mon, 17 Apr 2017 19:46:36 +0000 (12:46 -0700)]
ART: Change run-test 913 array testing
Use an explicit array in the test. Ignore all arrays that are
untagged.
Bug:
32072923
Bug:
36727422
Test: m
Test: art/test.py --host -r -t 913
Change-Id: Idf7bc03ae81e3e645935c8809bf59636cfa3784a
Mathieu Chartier [Mon, 17 Apr 2017 19:50:45 +0000 (12:50 -0700)]
Disable read barrier thunks for heap poisoning
Logic to unpoison is not yet implemented, this causes SIGSEGVs in
various places.
Bug:
29516974
Bug:
30126666
Bug:
36141117
Test: ./test/testrunner/testrunner.py -j4 --optimizing --debuggable --ndebuggable --target --verbose
Change-Id: I8317a142d07af36090d5f05ce46100dfa07c17e7
Treehugger Robot [Mon, 17 Apr 2017 18:59:40 +0000 (18:59 +0000)]
Merge "Use standard loading code in many tests"
Treehugger Robot [Mon, 17 Apr 2017 17:19:05 +0000 (17:19 +0000)]
Merge "Remove native code from test 944 for CTS"
Alex Light [Mon, 17 Apr 2017 17:06:44 +0000 (10:06 -0700)]
Use standard loading code in many tests
In order to prepare for use in CTS tests make tests 902, 914, 915,
917, 919, 926, 930, 932, 940, 942, 945, 981 & 982 use standard OnLoad
functions. Final configuration is done during test initialization.
Bug:
32072923
Test: ./test/testrunner/testrunner.py --host -j40
Change-Id: I84b2e17d0e024255d2dc49452f3d74dfd64abd22
Aart Bik [Mon, 17 Apr 2017 16:34:52 +0000 (16:34 +0000)]
Merge "Fixed bug on pending environment use of termination condition. With regression test."
David Sehr [Mon, 17 Apr 2017 15:49:41 +0000 (15:49 +0000)]
Merge "Add art_defaults to dexlayout"
Alex Light [Mon, 17 Apr 2017 15:36:14 +0000 (08:36 -0700)]
Remove native code from test 944 for CTS
Replaced native code in test 944 with java reflection based code.
Bug:
32072923
Test: ./test/testrunner/testrunner.py --host -j40 -t 944
Change-Id: I678d805936009a33ce8fe6b8570bfb788a8da72d
David Sehr [Sat, 15 Apr 2017 17:06:21 +0000 (10:06 -0700)]
Add art_defaults to dexlayout
The build rule defaults for dexlayout targets didn't include defaults
from the ART project. Because of this ART_TARGET_* weren't defined,
among other problems
Bug:
35800981
Test: make -j 40 test-art-host
Change-Id: Ic528bfc6b622fa9b4f5c0ddf883f15912641b720
Treehugger Robot [Sat, 15 Apr 2017 06:35:54 +0000 (06:35 +0000)]
Merge "ART: Tentative fix for stack count issue in test 913"
Andreas Gampe [Sat, 15 Apr 2017 04:49:33 +0000 (21:49 -0700)]
ART: Tentative fix for stack count issue in test 913
Use kCountTransition == kNo to also skip runtime methods in the
cur_depth_ count of a StackVisitor.
Currently this is only used in the VisitRoots function of Thread.
If the additional load is too expensive, we can make this dependent
on the requested precision (and thus revert "regular" visits to
the old scheme of also counting transitions between managed stack
frames and shadow frames, which is only an increment of a field).
Bug:
31385354
Bug:
32072923
Test: m test-art-host
Change-Id: Ief951585407dd6e03f8050774fe612e7b204247e
Treehugger Robot [Sat, 15 Apr 2017 02:43:14 +0000 (02:43 +0000)]
Merge "ART: Add debug code to run-test 913"
Alex Light [Sat, 15 Apr 2017 02:20:48 +0000 (02:20 +0000)]
Merge changes I5b05e23a,I9350b250,I1d66b42a
* changes:
More refactor for JVMTI redefinition run tests (3/3)
More refactor for JVMTI redefinition run tests (2/3)
More refactor for JVMTI redefinition run tests (1/3)
Treehugger Robot [Sat, 15 Apr 2017 01:03:50 +0000 (01:03 +0000)]
Merge "Add check that TypeIndex is valid in StringByTypeIdx."
Jeff Hao [Fri, 14 Apr 2017 21:33:52 +0000 (14:33 -0700)]
Add check that TypeIndex is valid in StringByTypeIdx.
StringByTypeIdx should fail gracefully if given a bad TypeIndex. This
adds a check that the TypeIndex is valid before getting its TypeId.
This fixes a regression that removed this check when it was refactored
in this CL: https://android-review.googlesource.com/#/c/243493/
Bug:
37287051
Test: mm -j31 test-art-host-gtest-dex_file_test
Change-Id: Ib68cb8135011f5f30335251583e181b089982754
Calin Juravle [Thu, 13 Apr 2017 23:35:42 +0000 (16:35 -0700)]
Print runtime isa when invoking 'dalvikvm --showversion'
The runtime ISA is appended at the end, after the version number.
Test: dalvikvm --showversion
Bug:
36824842
Change-Id: I09bbe3bf06054fe237543b5f96e9480631ea0838
Treehugger Robot [Fri, 14 Apr 2017 22:47:55 +0000 (22:47 +0000)]
Merge "Remove test skips associated with b/
37240685"
Alex Light [Fri, 14 Apr 2017 20:22:22 +0000 (13:22 -0700)]
More refactor for JVMTI redefinition run tests (3/3)
This adds in the Main.java files for the modified tests.
By doing the 3 CLs we keep git from getting confused about the history
of the files.
Bug:
32072923
Test: ./test.py --host -j40
Change-Id: I5b05e23aaf9e90101817ca01d1928a30f14cb7e5
Andreas Gampe [Fri, 14 Apr 2017 21:43:01 +0000 (14:43 -0700)]
ART: Add debug code to run-test 913
Try to figure out why we get wrong depth reporting by aborting in
a deep frame.
Bug:
32072923
Test: m
Test: art/test/testrunner/testrunner.py --host -t 913
Change-Id: Icea02ebdee0e5395a5935c58c80e6d7c82eb6c6d
Alex Light [Fri, 14 Apr 2017 20:20:12 +0000 (13:20 -0700)]
More refactor for JVMTI redefinition run tests (2/3)
Move refactored tests into their final places.
NOTE: BROKEN WITHOUT A FOLLOW-UP CL TO ADD NEW MAIN.JAVA FILES.
Bug:
32072923
Test: None
Change-Id: I9350b2505815c5d21816df4189482aee4868c91c
Alex Light [Fri, 14 Apr 2017 20:17:26 +0000 (13:17 -0700)]
More refactor for JVMTI redefinition run tests (1/3)
Does as much as possible without making git get confused about the
provenance of files. Follow up CLs will move the files into the
appropriate places.
NOTE: BROKEN WITHOUT A FOLLOW-UP CL TO CHANGE FILE NAMES!
Bug:
32072923
Test: None
Change-Id: I1d66b42a5041d4ea1a0e8eaa61d55422a507e26f
Aart Bik [Fri, 14 Apr 2017 19:00:15 +0000 (12:00 -0700)]
Fixed bug on pending environment use of termination condition.
With regression test.
Test: test-art-host
Bug:
37247891
Change-Id: I55b06939d465d3ddb736d1ba659b1df179a5c390
Alex Light [Thu, 13 Apr 2017 17:49:45 +0000 (10:49 -0700)]
Remove test skips associated with b/
37240685
It's been fixed.
Test: ./test.py --host --jvmti-stress -j40
Change-Id: Ic1bb74dc62a080f54f93cec6fd75d748a9941653
Treehugger Robot [Fri, 14 Apr 2017 16:17:10 +0000 (16:17 +0000)]
Merge "ART: Refactor run-test 913"
Treehugger Robot [Fri, 14 Apr 2017 13:51:03 +0000 (13:51 +0000)]
Merge "Disable 160-read-barrier-stress temporarily"
Sebastien Hertz [Fri, 14 Apr 2017 10:16:06 +0000 (12:16 +0200)]
Disable 160-read-barrier-stress temporarily
This test is causing an OOME with Jack compiler. This CL disables it
temporarily until we find a fix.
Bug:
37335480
Test: make -j test-art-host-run-test
Change-Id: I580fc99fbec0b0c94c25256fe20b957e07106205
Andreas Gampe [Thu, 13 Apr 2017 23:52:23 +0000 (16:52 -0700)]
ART: Refactor run-test 913
Remove references to ART. Filter roots from the JIT. Canonicalize
some thread IDs. Move the test to its own thread, and filter
stack-locals of other threads.
These changes ensure that the test is less dependent on the main
thread and its environment, which is required to use it in CTS.
Also fix a reporting issue for roots.
Bug:
32072923
Test: art/test/testrunner/testrunner.py --host -t 913
Change-Id: I8480ba7751fb6420c256db87cba11b8a65e25ea5
Treehugger Robot [Fri, 14 Apr 2017 00:10:36 +0000 (00:10 +0000)]
Merge "ART: Use _exit in dex2oat"
Treehugger Robot [Thu, 13 Apr 2017 23:54:34 +0000 (23:54 +0000)]
Merge "Remove native printing from test 980 and reliance on print internals"
Treehugger Robot [Thu, 13 Apr 2017 23:24:21 +0000 (23:24 +0000)]
Merge "Add check that map offset is sane to DexFile object init."
Mathieu Chartier [Thu, 13 Apr 2017 23:21:54 +0000 (23:21 +0000)]
Merge "Various debug ART GC performance improvements"
Treehugger Robot [Thu, 13 Apr 2017 23:16:11 +0000 (23:16 +0000)]
Merge "Add check that dexlayout can open output file."
Alex Light [Thu, 13 Apr 2017 19:58:06 +0000 (12:58 -0700)]
Remove native printing from test 980 and reliance on print internals
In preparation for a making a CTS test out of this make the test not
rely on internal allocation patterns of the 'System.out' object and
not make use of std::cout.
Test: ./test.py --host -j40
Change-Id: Ib7e874aaec71f93e834cf94ac5fe96663536691a
Jeff Hao [Thu, 13 Apr 2017 21:36:29 +0000 (14:36 -0700)]
Add check that map offset is sane to DexFile object init.
The DexFile constructor calls InitializeSectionsFromMapList, which
uses the header's map_offset before any checks are done on the file.
Bug:
37235346
Test: mm test-art-host-gtest-dex_file_test
Change-Id: I4fb8fcb57f9ef7e0182965b7ce663424b953abcb
Mathieu Chartier [Thu, 13 Apr 2017 18:47:53 +0000 (11:47 -0700)]
Various debug ART GC performance improvements
Removed unnecessary read barriers in SizeOf and a few other places.
Disabled disallow read barrier check.
Before:
GC time: 15.817s
Real 0m26.113s
user 1m16.780s
sys 0m3.152s
After:
GC time: 9.212s
real 0m19.875s
user 1m9.916s
sys 0m1.916s
Bug:
35644369
Test: test-art-host
Change-Id: I79a65259deff2a478a96e02ae69b14730b6dcbe6
Treehugger Robot [Thu, 13 Apr 2017 19:55:19 +0000 (19:55 +0000)]
Merge changes from topic 'art_run_test_910_cts'
* changes:
ART: Refactor run-test 910
ART: Fix GetArgumentsSize
Treehugger Robot [Thu, 13 Apr 2017 19:31:02 +0000 (19:31 +0000)]
Merge "MIPS32: java.lang.System.arraycopy() for copying char[] to char[]."
Andreas Gampe [Thu, 13 Apr 2017 19:20:42 +0000 (12:20 -0700)]
ART: Use _exit in dex2oat
That's what we really wanted to call. Seems to save about 50ms when
compiling something small-ish (out of .8s wall-clock time).
Test: m test-art-host
Change-Id: I9a20451adeaf63f535a7e42b46b4db78ee1d2bea
Andreas Gampe [Thu, 13 Apr 2017 03:49:38 +0000 (20:49 -0700)]
ART: Refactor run-test 910
Ensure a stable name for the proxy to be tested.
Bug:
32072923
Test: art/test/testrunner/testrunner.py --host -t 910
Change-Id: I34aedcdfae55f0bd0563d8aff0b8a8fdeb08de99
Andreas Gampe [Thu, 13 Apr 2017 04:11:28 +0000 (21:11 -0700)]
ART: Fix GetArgumentsSize
Fix the copy-paste mistake in GetArgumentsSize for abstract and
proxy methods. Use the usual computation derived from the shorty.
Bug:
34163329
Test: art/test/testrunner/testrunner.py --host -t 910
Change-Id: I71eaab70063303bea8eaa391ea067ebf8027820f
Jeff Hao [Wed, 12 Apr 2017 23:14:54 +0000 (16:14 -0700)]
Add check that dexlayout can open output file.
Test: mm test-art-host
Change-Id: I49b37b3e3696c8c002e22533c2e86e47a0e13e51
Treehugger Robot [Thu, 13 Apr 2017 17:16:12 +0000 (17:16 +0000)]
Merge "ART: Refactor run-test 904"
David Sehr [Thu, 13 Apr 2017 16:39:30 +0000 (16:39 +0000)]
Merge "Add OAT file mapping to dexdiag"
Chris Larsen [Thu, 23 Mar 2017 22:37:03 +0000 (15:37 -0700)]
MIPS32: java.lang.System.arraycopy() for copying char[] to char[].
Test: run-test --no-prebuild --optimizing 011-array-copy
Test: run-test --no-prebuild 011-array-copy
Test: run-test --optimizing 011-array-copy
Test: run-test 011-array-copy
Test: mma -j2 ART_TEST_OPTIMIZING=true test-art-target-run-test
Test: booted MIPS32R2 emulator.
Note: Tested against both the MIPS32R2, and MIPS64R6 emulators.
Change-Id: I0fc59fe8a242692b52cf8e8413d28397e210bb65
Treehugger Robot [Thu, 13 Apr 2017 14:38:54 +0000 (14:38 +0000)]
Merge "ARM/VIXL: Fix TypeConversion of large long constants to int."
Vladimir Marko [Thu, 13 Apr 2017 10:50:14 +0000 (11:50 +0100)]
ARM/VIXL: Fix TypeConversion of large long constants to int.
The ARM VIXL backend was using Int32ConstantFrom() to get
the value of a HLongConstant for TypeConversion to int.
That function has DCHECK()s that the constant fits into a
32-bit int which is bogus in this particular case.
This was out of sync with the old ARM backend, so bring the
two in sync by using the approach from the old backend.
Bug:
37236345
Test: 646-checker-lon-const-to-int
Change-Id: I675ebd7bbaa14d5dfc3f280f62867d342cbab683
Vladimir Marko [Thu, 13 Apr 2017 12:54:22 +0000 (12:54 +0000)]
Merge "ARM64: Use link-time generated thunks for Baker CC read barrier."
Treehugger Robot [Thu, 13 Apr 2017 11:17:06 +0000 (11:17 +0000)]
Merge "MIPS32: Add direct calls to math intrinsics."
Andreas Gampe [Thu, 13 Apr 2017 04:58:19 +0000 (04:58 +0000)]
Merge "ART: Fix test dependencies"
Andreas Gampe [Thu, 13 Apr 2017 04:53:55 +0000 (21:53 -0700)]
ART: Fix test dependencies
Follow-up to commit
8f2c6d479aeda3165c4f54c1076ec7ac335fccc7.
Test: m test-art-host
Change-Id: I67bf92067509ddf658fc22e333430fa5ee44f6ea
Andreas Gampe [Thu, 13 Apr 2017 02:06:12 +0000 (19:06 -0700)]
ART: Refactor run-test 904
Refactor run-test so it does not depend on printf output. That way
we can run it in CTS.
Bug:
32072923
Test: art/test/testrunner/testrunner.py -b --host -t 904
Change-Id: Ia0d2e01dba4f46b81e78c88d9c50aafbc69f679e
Treehugger Robot [Thu, 13 Apr 2017 01:32:51 +0000 (01:32 +0000)]
Merge changes I49c02b92,I898e5cff
* changes:
Ensure one can call DisposeEnvironment during event callbacks.
run-tests with jvmti-stress configuration
Alex Light [Wed, 12 Apr 2017 23:13:33 +0000 (16:13 -0700)]
Ensure one can call DisposeEnvironment during event callbacks.
Previously calling DisposeEnvironment during an event callback would
cause a currently in-use iterator to be invalidated. This could cause
undefined behavior.
Bug:
37283252
Test: ./test/testrunner/testrunner.py --host --jvmti-stress -j40
Change-Id: I49c02b925f0da5d4f66965f0fca21bf8dc83132a
Alex Light [Mon, 10 Apr 2017 23:27:35 +0000 (16:27 -0700)]
run-tests with jvmti-stress configuration
Adds a jvmti-stress mode to our run-tests. This mode runs our test
suite with every class-load being intercepted and undergoing
redefinition.
Test: DEXTER_BINARY="/path/to/built/dexter" \
./testrunner/testrunner.py --host --jvmti-stress -j40
Change-Id: I898e5cffea42a203aa4c45981b48baf8dc64fbb6
David Sehr [Wed, 5 Apr 2017 21:43:38 +0000 (14:43 -0700)]
Add OAT file mapping to dexdiag
Adds the ability to visualize the executable mapped sections of an OAT
file.
Bug:
37217968
Test: test-art-target-gtest-dexdiag_test
Change-Id: Id9f33885ee38a3753e781f955127eb8e1b83fe4d
Treehugger Robot [Wed, 12 Apr 2017 18:39:45 +0000 (18:39 +0000)]
Merge "MIPS64: Add direct calls to math intrinsics."
Chris Larsen [Fri, 24 Mar 2017 19:11:54 +0000 (12:11 -0700)]
MIPS32: Add direct calls to math intrinsics.
- cos - sin - acos - asin
- atan - atan2 - cbrt - cosh
- exp - expm1 - hypot - log
- log10 - nextAfter - sinh - tan
- tanh
Test: run-test --no-prebuild --optimizing 123-inline-execute2
Test: run-test --no-prebuild 123-inline-execute2
Test: run-test --optimizing 123-inline-execute2
Test: run-test 123-inline-execute2
Test: Booted MIPS32R2 and MIPS64R6 emulators.
Note: Ran tests under both emulators, and on CI20 hardware.
Change-Id: I4c1782d609a985ae49737f47c43caa5b0b6a10e3
Treehugger Robot [Wed, 12 Apr 2017 17:56:13 +0000 (17:56 +0000)]
Merge "Fix broken DCHECK."
Mathieu Chartier [Wed, 12 Apr 2017 17:28:38 +0000 (17:28 +0000)]
Merge "Clear zygote space cards for CC"
Mathieu Chartier [Wed, 12 Apr 2017 17:27:39 +0000 (17:27 +0000)]
Merge "Fix -XX:DumpGCPerformanceOnShutdown for debug builds"
Vladimir Marko [Mon, 20 Mar 2017 18:26:59 +0000 (18:26 +0000)]
ARM64: Use link-time generated thunks for Baker CC read barrier.
Remaining work for follow-up CLs:
- array loads,
- volatile field loads,
- use implicit null check in field thunk.
Test: Added tests to relative_patcher_arm64
Test: New run-test 160-read-barrier-stress
Test: m test-art-target-gtest on Nexus 6P.
Test: testrunner.py --target on Nexus 6P.
Bug:
29516974
Bug:
30126666
Bug:
36141117
Change-Id: Id68ff171c55a3f1bf1ac1b657f480531aa7b3710
Alex Light [Wed, 12 Apr 2017 16:01:47 +0000 (09:01 -0700)]
Fix broken DCHECK.
The DCHECK in ti_class_definition was incorrectly checking that the
original dex file was a primitive long instead of a boxed long.
Bug:
37271822
Test: ./test/testrunner/testrunner.py --host --jvmti-stress -j40
Change-Id: I901c6e2f6f93dca584faff70134cee957d8462c3
Aart Bik [Wed, 12 Apr 2017 15:52:08 +0000 (15:52 +0000)]
Merge changes I1d4db176,Ifb931a99
* changes:
ARM64: Support vectorization for double and long.
ARM64: Support 128-bit registers for SIMD.
Treehugger Robot [Wed, 12 Apr 2017 12:17:44 +0000 (12:17 +0000)]
Merge "MIPS: Use Lsa/Dlsa when possible."
Richard Uhler [Wed, 12 Apr 2017 07:44:46 +0000 (07:44 +0000)]
Merge "Add an 'art-preopt' test target configuration."
Andreas Gampe [Wed, 12 Apr 2017 04:07:43 +0000 (04:07 +0000)]
Merge changes Ic7d75e1e,Iaf828034
* changes:
ART: Fix GetSystemProperty (2)
ART: Fix GetSystemProperty
Mathieu Chartier [Wed, 12 Apr 2017 00:50:00 +0000 (17:50 -0700)]
Fix -XX:DumpGCPerformanceOnShutdown for debug builds
There was a failing DCHECK from CheckUnattachedThread. The fix is
to dump after attaching the shutdown thread.
Bug:
35644369
Test: test-art-host
Change-Id: I3d927e380888418167c101b2f09d1e547fe728cf
Treehugger Robot [Tue, 11 Apr 2017 23:51:05 +0000 (23:51 +0000)]
Merge changes Ib29b3920,Ice5efad9
* changes:
ART: Move trampoline logging to -verbose:dex
ART: Add -verbose:dex
Andreas Gampe [Tue, 11 Apr 2017 23:47:29 +0000 (16:47 -0700)]
ART: Fix GetSystemProperty (2)
Add live-phase Java-call fallback for java.library.path.
Bug:
31455788
Test: manual
Change-Id: Ic7d75e1e17760fce5506359058b754eb283b9c41
Mathieu Chartier [Tue, 11 Apr 2017 18:12:28 +0000 (11:12 -0700)]
Clear zygote space cards for CC
There may be dirty cards from reference processing or from zygote
compaction. Having these dirty cards in the zygote space is
unnecessary and causes PSS increase from GrayAllDirtyImmuneObjects
in future GCs. Clearing the zygote space cards when the zygote
space is created fixes this issue and reduces PSS.
System wide PSS for zygote space, before:
7,899K: .Zygote
7,896K: .Zygote
8,067K: .Zygote
8,547K: .Zygote
After:
4,881K: .Zygote
5,003K: .Zygote
5,582K: .Zygote
5,259K: .Zygote
5,176K: .Zygote
Bug:
12687968
Bug:
37219911
Test: Device boots
Test: test-art-host
(cherry picked from commit
d5a67447de577546b76c0565aed5af56176bbeb4)
Change-Id: I4746c4829056f558b454c78c5991426feb460904
Andreas Gampe [Tue, 11 Apr 2017 22:59:24 +0000 (15:59 -0700)]
ART: Fix GetSystemProperty
Align with VMRuntime.getClassPath to emit "." for an empty path.
Bug:
31455788
Test: manual
Change-Id: Iaf828034d414f45c20960ab6fd0ceb598362c6f1
Treehugger Robot [Tue, 11 Apr 2017 21:41:00 +0000 (21:41 +0000)]
Merge "Add option for duplicate classes check to return all dupes."
Andreas Gampe [Tue, 11 Apr 2017 20:50:23 +0000 (13:50 -0700)]
ART: Move trampoline logging to -verbose:dex
Move invoke logging to VLOG(dex).
Bug:
37158297
Test: m test-art-host
Change-Id: Ib29b3920e8f227395b99a9ed65de5ca10c737cc0
Andreas Gampe [Tue, 11 Apr 2017 20:48:37 +0000 (13:48 -0700)]
ART: Add -verbose:dex
Add a dex verbose flag to separate out concerns for dex investigations.
Bug:
37158297
Test: m test-art-host
Change-Id: Ice5efad919ae0b6838d44e2f3711563a0774ef0e
Treehugger Robot [Tue, 11 Apr 2017 19:46:48 +0000 (19:46 +0000)]
Merge "Fix bug in vectorization of charAt, with regression test"
Igor Murashkin [Tue, 11 Apr 2017 18:39:59 +0000 (18:39 +0000)]
Merge "optimizing: do not illegally remove constructor barriers after inlining"
Igor Murashkin [Tue, 11 Apr 2017 18:03:36 +0000 (18:03 +0000)]
Merge "target_config: add art-test-javac target"
Aart Bik [Tue, 11 Apr 2017 17:15:44 +0000 (10:15 -0700)]
Fix bug in vectorization of charAt, with regression test
Rationale:
String array get instruction cannot be vectorized
in a straightforward way, since compression has
to be dealt with. So rejected for now.
Test: test-art-target, test-art-host
Bug:
37151445
Change-Id: I16112cb8b1be30babd8ec07af5976db0369f8c28
Colin Cross [Tue, 11 Apr 2017 16:39:19 +0000 (16:39 +0000)]
Merge "Don't add Jack dependencies when building without Jack"
Colin Cross [Tue, 11 Apr 2017 02:04:59 +0000 (19:04 -0700)]
Don't add Jack dependencies when building without Jack
Runtests add dependencies on the core library classes.jack files,
which don't exist when compiling with javac. Disable the dependencies
when building without Jack for now.
Test: m -j ANDROID_COMPILE_WITH_JACK=false tests
Change-Id: I40925c8c8536cc048e7308e6202db420154a18aa
Aart Bik [Tue, 11 Apr 2017 15:57:31 +0000 (15:57 +0000)]
Merge "Add checker part of test, fix intrinsic copying"
Treehugger Robot [Tue, 11 Apr 2017 15:41:29 +0000 (15:41 +0000)]
Merge "Remove some obsolete TODO comments."
Treehugger Robot [Tue, 11 Apr 2017 15:40:59 +0000 (15:40 +0000)]
Merge "ART: Expose jni_binder's FindClass"
Richard Uhler [Tue, 11 Apr 2017 09:22:30 +0000 (10:22 +0100)]
Add an 'art-preopt' test target configuration.
To test the common case of running preopted apps, which are
precompiled pic against an unrelocated image then used with a
relocated image.
Bug:
33192586
Test: run_build_test_target.py art-preopt
Change-Id: Iababf267b90c63afa137f16a85c78a362de4626a
Treehugger Robot [Tue, 11 Apr 2017 04:24:20 +0000 (04:24 +0000)]
Merge "ART: Package expected run-test results with jvmti Java library"
Andreas Gampe [Tue, 11 Apr 2017 04:09:13 +0000 (21:09 -0700)]
ART: Expose jni_binder's FindClass
Required for the CTS agent.
Bug:
32072923
Test: m test-art-host
Change-Id: I37764b0646fdb0df7ec9dd544d1dffdc909e269b
Andreas Gampe [Mon, 10 Apr 2017 17:41:26 +0000 (10:41 -0700)]
ART: Package expected run-test results with jvmti Java library
Include the JVMTI Java library Makefile to make it buildable.
Include expected.txt files in the form of results.{NR}.expected.txt.
This is the best we can do with the current restrictions of
LOCAL_JAVA_RESOURCE_DIRS/FILES.
Bug:
32072923
Test: mmma art
Change-Id: Ie96ef38b50d523b9d3e31978216e9ec6d8c955f5
Aart Bik [Mon, 10 Apr 2017 20:15:57 +0000 (13:15 -0700)]
Add checker part of test, fix intrinsic copying
Rationale:
I forgot to add the check test part of this test,
and incidentally found an omission: intrinsic
information should be set in the scalar loop
(to get best code there too, not just a lib call).
Test: test-art-host, test-art-target
Change-Id: I94aa4cdf042f72690d10efee3a9dc7c476d5c5e0
Treehugger Robot [Mon, 10 Apr 2017 22:05:24 +0000 (22:05 +0000)]
Merge "Revert "Avoid JNI usage error when JNI_OnLoad throws""
Igor Murashkin [Thu, 6 Apr 2017 21:40:08 +0000 (14:40 -0700)]
optimizing: do not illegally remove constructor barriers after inlining
Remove the illegal optimization that destroyed constructor barriers
after inlining invoke-super constructor calls.
---
According to JLS 7.5.1,
"Note that if one constructor invokes another constructor, and the
invoked constructor sets a final field, the freeze for the final field
takes place at the end of the invoked constructor."
This means if an object is published (stored to a location potentially
visible to another thread) inside of an outer constructor, all final
field stores from any inner constructors must be visible to other
threads.
Test: art/test.py
Bug:
37001605
Change-Id: I3b55f6c628ff1773dab88022a6475d50a1a6f906
Igor Murashkin [Mon, 10 Apr 2017 20:34:29 +0000 (20:34 +0000)]
Revert "Avoid JNI usage error when JNI_OnLoad throws"
This reverts commit
d111f90a386f7bad1474189390fce7a8d1ff1ab5.
Change-Id: Ia8461946088644e41e0f2e14d7e806a70dec41ab
Igor Murashkin [Mon, 10 Apr 2017 20:13:55 +0000 (13:13 -0700)]
target_config: add art-test-javac target
Effectively runs the same commands as:
ANDROID_COMPILE_WITH_JACK=false make test-art-host
This builds libcore/art with javac/dx/desugar, then runs the gtests
and run-tests for it.
(It does not yet fix run-test to use javac everywhere. That will be a
follow-up change).
Bug:
36902714
Change-Id: Ibd226efcfe78c795474f98d69f513648cff5351a