OSDN Git Service
Artem Udovichenko [Fri, 9 Sep 2016 11:02:25 +0000 (14:02 +0300)]
Reduce number of physical pages used for DexCache's arrays
This commit reduces the amount of physical pages allocated for the .bss
section of an application's oat file.
Many of elements in the application's DexCache arrays are empty.
But during coping content of the DexCaches arrays from
the app's art file into the .bss section all pages become dirty.
The commit fixes that by copying non null elements only. So pages
in the .bss section that contains zeroes remains untouched.
This approach allows to save 209Kb of memory after one minute of
GMaps use.
This number is the difference between the size of .bss section and
the Rss value from the /proc/<pid>/smaps file.
Test: run test-art-host
Change-Id: I3d7bed0805b95b5f344303581274ca8e8e69940e
Andreas Gampe [Tue, 25 Oct 2016 15:18:14 +0000 (15:18 +0000)]
Merge changes Iae3a933e,I08ff5d6e
* changes:
ART: Make IndirectReferenceTable resizable
ART: Change IndirectReferenceTable
Andreas Gampe [Tue, 25 Oct 2016 15:16:31 +0000 (15:16 +0000)]
Merge "ART: Clean up IndirectReferenceTable"
Vladimir Marko [Tue, 25 Oct 2016 14:51:57 +0000 (14:51 +0000)]
Merge "Clean up app image .bss dex cache arrays fixup."
Calin Juravle [Tue, 25 Oct 2016 14:36:15 +0000 (14:36 +0000)]
Merge "Build target which faciliates ART testing image/image creation"
Vladimir Marko [Tue, 25 Oct 2016 14:07:31 +0000 (14:07 +0000)]
Merge "Clear OOME from DexCache allocation when another thread succeeded."
Calin Juravle [Mon, 24 Oct 2016 11:40:19 +0000 (12:40 +0100)]
Build target which faciliates ART testing image/image creation
Bug:
32365426
Test: m art-job-images
Change-Id: I19f74b7880e8b88c20fcd26729ec05a48b618dbb
Vladimir Marko [Tue, 25 Oct 2016 12:32:27 +0000 (12:32 +0000)]
Merge "Revert "Disable kBssEntry LoadString sharpening.""
Vladimir Marko [Tue, 25 Oct 2016 10:51:35 +0000 (11:51 +0100)]
Clean up app image .bss dex cache arrays fixup.
Do not store type and method array forwarding address
in old arrays. They are available from the DexCache.
Test: m test-art-host
Change-Id: Id019bfd343f5fc687b75594991151cf5eded71a9
Vladimir Marko [Tue, 25 Oct 2016 12:04:00 +0000 (13:04 +0100)]
Clear OOME from DexCache allocation when another thread succeeded.
Test: m test-art-host
Change-Id: I358f69de446474641fab7ca6a9eadf15c9900b87
Narayan Kamath [Tue, 25 Oct 2016 11:36:16 +0000 (11:36 +0000)]
Merge "method_handles: Minor refactor of PerformArgumentConversions."
Vladimir Marko [Mon, 24 Oct 2016 16:53:39 +0000 (16:53 +0000)]
Revert "Disable kBssEntry LoadString sharpening."
Fix .bss GC root walking by registering the oat file
with the class loader's class table.
Also fix potentially outdated ObjPtr<> use in debug build.
This reverts commit
b55fdbb30b3bc4e334c241153b98c0a6ea4a4a2b.
Test: m test-art-host
Bug:
32124939
Change-Id: I0b7e3b93cb53c7b22408aa10a04eaf5582c69ee8
Nicolas Geoffray [Tue, 25 Oct 2016 07:27:07 +0000 (07:27 +0000)]
Merge "Encode quickening info in .vdex."
Andreas Gampe [Tue, 25 Oct 2016 02:35:19 +0000 (19:35 -0700)]
ART: Make IndirectReferenceTable resizable
Allow backing table to be resized. This can be used for the local
reference table, where synchronization is not an issue.
Bug:
32125344
Test: m test-art-host
Change-Id: Iae3a933e330026231b17fdde44bcdd99c235dff1
Andreas Gampe [Fri, 14 Oct 2016 00:12:56 +0000 (17:12 -0700)]
ART: Change IndirectReferenceTable
Change cookie structure to allow for more entries. Use a local
hole-count caching scheme. The design is driven by two
considerations. For one, the change is small and mostly local.
The other point is to still allow inlining of functions involved
with JNI transitions.
This change is in preparation for a resizable backing table for
"unlimite" local references.
micro_native tests show changes are in the noise.
Bug:
32125344
Test: m test-art-host
Change-Id: I08ff5d6eaed75d13ec88f469fb0d18328a0eeb70
Andreas Gampe [Mon, 24 Oct 2016 20:19:37 +0000 (13:19 -0700)]
ART: Clean up IndirectReferenceTable
Introduce constants and move some functions into the
IndirectReferenceTable class.
Slightly change IndirectRef encoding to be more obvious (and slighly
more optimized when decoding).
Bug:
32125344
Test: m test-art-host
Change-Id: I05819eccb733b611de582fb8d7151f1a110c305a
Andreas Gampe [Mon, 24 Oct 2016 23:14:47 +0000 (23:14 +0000)]
Merge "ART: Blacklist test 908 for target"
Andreas Gampe [Mon, 24 Oct 2016 22:50:49 +0000 (15:50 -0700)]
ART: Blacklist test 908 for target
As usual, black-list an agent test for the target.
Bug:
31684633
Test: m test-art-host-run-test-908-gc-start-finish
Change-Id: I0c246f7af7942ae098dc1d6829b34562ec4222e5
Treehugger Robot [Mon, 24 Oct 2016 22:36:18 +0000 (22:36 +0000)]
Merge "ART: Add GC callbacks"
Treehugger Robot [Mon, 24 Oct 2016 22:34:47 +0000 (22:34 +0000)]
Merge "ART: Only scan tag table once during marking"
Andreas Gampe [Fri, 21 Oct 2016 22:27:46 +0000 (15:27 -0700)]
ART: Add GC callbacks
Add start and end of pause callbacks.
Fix setup and missing functions in test 907.
Bug:
31684633
Test: m test-art-host
Test: m test-art-host-run-test-908-gc-start-finish
Change-Id: I1d8872ef9cd6914de7fb033cd873f8d5cb48ea17
Mathieu Chartier [Mon, 24 Oct 2016 19:36:50 +0000 (19:36 +0000)]
Merge "Remove unnecessary load class for new instance"
Nicolas Geoffray [Mon, 24 Oct 2016 12:14:58 +0000 (13:14 +0100)]
Encode quickening info in .vdex.
We quicken vdex files for performance reasons, but when taking an OTA,
we need to revert the quickening to the original instructions. As vdex
should be independent of the oat file and oat file versions, we encode
the quickening data in the vdex.
test: m test-art-host-jit m test-art-host-gtest
bug:
30937355
Change-Id: I9a543a161b70aa1cff99f8fe6f5b5cab7a6c4d31
Treehugger Robot [Mon, 24 Oct 2016 18:46:30 +0000 (18:46 +0000)]
Merge "Move dex CFG dumping out of utils.cc"
Andreas Gampe [Fri, 21 Oct 2016 19:32:31 +0000 (12:32 -0700)]
ART: Only scan tag table once during marking
Remember an update and avoid multiple scans during the marking
phase.
Bug:
31385027
Test: m test-art-host
Test: m ART_USE_READ_BARRIER=true test-art-host
Change-Id: I82211938965fd32a6d6c2dbf58bf7be2fc688c46
Mathieu Chartier [Tue, 30 Aug 2016 17:23:01 +0000 (10:23 -0700)]
Remove unnecessary load class for new instance
Remove the load class for new instance if the load class has only one
use and can not throw. Previously many were not removed due to
MarkInDexCache nulling out the environment of the HLoadClass and
causing CanMoveClinitCheck to fail.
Also keep track of initialized HLoadClass and always remove clinit
checks for these.
Added checker regression test.
Code size savings: ARM64 CC boot.oat:
47896936 ->
47642488 (-0.53%)
Savings from IsInitialized optimization: 65984 bytes
Performance unmeasured, probably faster due to removing unnecessary
work.
Test: test-art-host with CC baker
Bug:
29516974
Change-Id: I43358762ffb380ebe7e6518d0d440a5e1cc03b61
David Sehr [Thu, 20 Oct 2016 23:27:02 +0000 (16:27 -0700)]
Move dex CFG dumping out of utils.cc
Move CFG dumping to dexdump, the only client.
Bug:
22322814
Test: test-art-host
Change-Id: I0f39f1d5dfc446419d26d709b78d04e45616f42c
Orion Hodson [Mon, 24 Oct 2016 11:48:17 +0000 (11:48 +0000)]
Merge "Dex disassembly suppport for invoke-polymorphic."
Narayan Kamath [Thu, 20 Oct 2016 17:39:22 +0000 (18:39 +0100)]
method_handles: Minor refactor of PerformArgumentConversions.
Separate out a method that can perform a single argument conversion.
Useful for Field setters and also for future use in transforming handles
where the input source will not be a stack frame.
Also remove unnecessary JValue* argument.
bug:
30550796
Test: make test-art-host
Change-Id: I75a63800839dbf1016a2c362169e138c83f34e4c
Treehugger Robot [Mon, 24 Oct 2016 07:20:23 +0000 (07:20 +0000)]
Merge "Add support for proguard deobfuscation."
Treehugger Robot [Sat, 22 Oct 2016 17:09:44 +0000 (17:09 +0000)]
Merge "ART: Switch tagging table to a map"
Roland Levillain [Sat, 22 Oct 2016 13:25:43 +0000 (13:25 +0000)]
Merge "Remove read barrier in UnstartedUnsafeCompareAndSwapLong."
Andreas Gampe [Fri, 21 Oct 2016 02:03:58 +0000 (19:03 -0700)]
ART: Switch tagging table to a map
Performance is critical. A map involves overhead for moving GC,
but has much faster lookup for the common case.
Make test 905 robust against unstable ordering.
Bug:
31385027
Test: m test-art-host
Test: m ART_USE_READ_BARRIER=true test-art-host
Change-Id: Ica3ff603fc78168759fccfe79c97860279ce9036
Treehugger Robot [Fri, 21 Oct 2016 21:58:20 +0000 (21:58 +0000)]
Merge "Reduce the number of dumps in 130-hprof."
Hiroshi Yamauchi [Fri, 21 Oct 2016 20:07:18 +0000 (13:07 -0700)]
Reduce the number of dumps in 130-hprof.
To avoid timeouts.
Test: test-art-host with ART_TEST_TRACE=true.
Change-Id: I849007b94341f4851c11a8896889f9e2ce851a86
Treehugger Robot [Fri, 21 Oct 2016 19:42:55 +0000 (19:42 +0000)]
Merge "Add missing shared library"
Colin Cross [Fri, 21 Oct 2016 17:50:31 +0000 (10:50 -0700)]
Add missing shared library
Host builds were compiling without -Wl,--no-undefined. Add missing
shared library so that -Wl,--no-undefined can be added again.
Test: m -j host
Bug:
32305815
Change-Id: I39456a95c37b64b6ac65c0b3220d4816ce34e5c6
Mathieu Chartier [Fri, 21 Oct 2016 16:38:18 +0000 (16:38 +0000)]
Merge "Don't dump loaded but unresolved classes in hprof"
David Sehr [Fri, 21 Oct 2016 15:30:22 +0000 (15:30 +0000)]
Merge "Remove mutex dependency on art::Runtime"
Richard Uhler [Fri, 13 May 2016 21:19:37 +0000 (14:19 -0700)]
Add support for proguard deobfuscation.
Test: m ahat-test, with obfuscation of test-dump.hprof added.
Bug:
25812772
Change-Id: I0f257432da570aa146e6bb5c549f014aecc0c326
Roland Levillain [Fri, 21 Oct 2016 13:47:26 +0000 (14:47 +0100)]
Remove read barrier in UnstartedUnsafeCompareAndSwapLong.
art::interpreter::UnstartedRuntime::UnstartedUnsafeCompareAndSwapLong
manipulates a long field and does not need a read barrier
(read barriers are only required when loading an object
reference from the heap).
Test: ART_USE_READ_BARRIER=true make test-art-host
Bug:
12687968
Change-Id: Ia46590e649a7bb46ca4b3c90bab03fb3a836563d
Vladimir Marko [Fri, 21 Oct 2016 12:27:16 +0000 (12:27 +0000)]
Merge "Disable kBssEntry LoadString sharpening."
Treehugger Robot [Fri, 21 Oct 2016 12:26:18 +0000 (12:26 +0000)]
Merge "MIPS32: Implement HSelect"
Treehugger Robot [Fri, 21 Oct 2016 10:33:58 +0000 (10:33 +0000)]
Merge "MIPS32R6: Fix floating point compares in mterp."
Vladimir Marko [Fri, 21 Oct 2016 09:22:45 +0000 (10:22 +0100)]
Disable kBssEntry LoadString sharpening.
We seem to fail to visit the BSS GC roots sometimes.
Bug:
32124939
Test: m test-art-host
Change-Id: I4724ced649042cbeb170cac9e8da8c5db168c8fc
Alexey Frunze [Fri, 21 Oct 2016 04:50:05 +0000 (21:50 -0700)]
MIPS32R6: Fix floating point compares in mterp.
This fixes failures in the following tests:
003-omnibus-opcodes
082-inline-execute
083-compiler-regressions
107-int-math2
422-type-conversion
570-checker-select
Test: 'run-test --interpreter <tests above>'
in QEMU for MIPS64R6/MIPS32R6
Change-Id: I11b4f1df7c212932c92d41fbc98c00465d03e850
Mathieu Chartier [Fri, 21 Oct 2016 00:11:23 +0000 (17:11 -0700)]
Don't dump loaded but unresolved classes in hprof
If a class is loaded but not yet resolved, it will cause failed
DCHECK when reading static fields.
Bug:
32008990
Test: test/run-test --host 130
Change-Id: I05f549cb2b70c75b06ed23d3405373d15ad7707b
Treehugger Robot [Thu, 20 Oct 2016 22:50:12 +0000 (22:50 +0000)]
Merge "Improve recognition of select-based period induction."
Alexey Frunze [Tue, 20 Sep 2016 21:54:15 +0000 (14:54 -0700)]
MIPS32: Implement HSelect
Test: booted MIPS32R2 in QEMU
Test: test-art-target-run-test-optimizing (MIPS32R2) on CI20
Test: booted MIPS64 (with 2nd arch MIPS32R6) in QEMU
Test: test-art-target-run-test-optimizing (MIPS32R6) in QEMU
Test: test-art-host-gtest
Change-Id: I8a8127d8d29cb5df84ed6f4fd4478f8d889e5cb7
Aart Bik [Tue, 18 Oct 2016 20:03:31 +0000 (13:03 -0700)]
Improve recognition of select-based period induction.
Rationale:
Similar to the previous CL, this helps to eliminate more dead induction.
Now, CaffeineLogic, when compiled with dx (rather than jack) improves
by a 1.5 speedup (9000us -> 6000us).
Note:
We need to run the simplifier before induction analysis to trigger
the select simplification first. Although a bit of a compile-time hit,
it seems a good idea to run a simplifier here again anyway.
Test: test-art-host
Change-Id: I93b91ca40a4d64385c64393028e8d213f0c904a8
Hiroshi Yamauchi [Thu, 20 Oct 2016 21:10:57 +0000 (21:10 +0000)]
Merge "Test for the CC RegionSpace::WalkInternal crash."
David Sehr [Wed, 19 Oct 2016 20:20:45 +0000 (13:20 -0700)]
Remove mutex dependency on art::Runtime
Breaks the cyclic dependency between mutex and the runtime. This allows
the use of mutexes without instantiating a runtime.
Bug:
22322814
Test: test-art
Change-Id: Ia642e515937068d385e5bb1e10bbd3e50a6e36d2
Treehugger Robot [Thu, 20 Oct 2016 18:50:24 +0000 (18:50 +0000)]
Merge "Ensure that overrides work in presence of package-private methods."
Orion Hodson [Tue, 18 Oct 2016 16:02:58 +0000 (17:02 +0100)]
Dex disassembly suppport for invoke-polymorphic.
Bug:
30550796
Test: art/test/dexdump/run-all-tests
Change-Id: I013ce2ebbcf9555e01170dc47fc38036c276b1b4
Richard Uhler [Thu, 20 Oct 2016 14:57:15 +0000 (14:57 +0000)]
Merge "Disable 151-OpenFileLimit test."
Richard Uhler [Thu, 20 Oct 2016 14:41:21 +0000 (15:41 +0100)]
Disable 151-OpenFileLimit test.
Until we can track down all the crashes it leads to.
Bug:
32302133
Test: mma -j32 ART_TEST_JIT=true ART_TEST_INTERPRETER=true test-art-host-run-test-151-OpenFileLimit
Change-Id: I515a5175b4cefe49a8e270d354879050b1f616f9
Igor Murashkin [Thu, 20 Oct 2016 14:41:18 +0000 (14:41 +0000)]
Merge changes I16f8b7ec,I075bbf55
* changes:
jni: Support @FastNative methods that return objects
Revert "jni: Disable FastNative path for methods returning objects"
Narayan Kamath [Thu, 20 Oct 2016 14:39:10 +0000 (14:39 +0000)]
Merge "Revert "Revert "Interpreter: Add support for direct handle invokes on methods."""
Roland Levillain [Thu, 20 Oct 2016 11:59:42 +0000 (11:59 +0000)]
Merge "ARM: VIXL32: Pass initial ART tests with new code generator."
Treehugger Robot [Thu, 20 Oct 2016 11:59:27 +0000 (11:59 +0000)]
Merge "DexCache: Add support for updating MethodType references during GC."
Treehugger Robot [Thu, 20 Oct 2016 11:45:05 +0000 (11:45 +0000)]
Merge "Return error message if IndirectReferenceTable construction fails."
Narayan Kamath [Thu, 20 Oct 2016 09:57:45 +0000 (10:57 +0100)]
Revert "Revert "Interpreter: Add support for direct handle invokes on methods.""
This reverts commit
cfa61ad52077df66a448b84c360b12bc6f0e3f51.
Test flakiness in 956-methodhandles is fixed by
d08e39b6f02368aaa668b5aae6b6077b3eb44d9c.
Test: make test-art-host
Change-Id: I56e02e9a5bbc2b992cf746a92fd95ea77d32456c
Narayan Kamath [Wed, 19 Oct 2016 13:16:35 +0000 (14:16 +0100)]
DexCache: Add support for updating MethodType references during GC.
Fixes flakiness in 956-methodhandles
Test: make test-art-host
bug:
30550796
Change-Id: Ia5359390d59e65fc6efc16cc55c11bc65029104d
Vladimir Marko [Thu, 20 Oct 2016 09:24:03 +0000 (09:24 +0000)]
Merge "Change pResolveString entrypoint to kSaveEverything."
Narayan Kamath [Thu, 20 Oct 2016 07:49:22 +0000 (07:49 +0000)]
Merge "Build: Avoid using ppid to generate temporary directory name."
Treehugger Robot [Thu, 20 Oct 2016 03:26:21 +0000 (03:26 +0000)]
Merge "ART: Harden dex-file verifier wrt/ LEB128"
Mathieu Chartier [Thu, 20 Oct 2016 00:25:39 +0000 (00:25 +0000)]
Merge "Persistent bitmap for region space"
Andreas Gampe [Sat, 3 Sep 2016 01:12:00 +0000 (18:12 -0700)]
ART: Harden dex-file verifier wrt/ LEB128
Use out-of-bounds checks when decoding (U)LEB128.
Bug:
31252966
Test: m test-art-host
Change-Id: Id6dbbceb37c4d8d698e7685c61bf31912e3bf69e
Alex Light [Tue, 18 Oct 2016 21:33:18 +0000 (14:33 -0700)]
Ensure that overrides work in presence of package-private methods.
It was possible that methods with the same signature & name of
package-private methods could fail to be correctly overridden causing
surprising behavior and DCHECK failures.
Bug:
32193118
Test: mma test-art-host
Test: ART_TEST_RUN_TEST_NDEBUG=true ART_TEST_RUN_TEST_NO_PREBUILD=true mma test-art-host-run-test-300-package-override
Change-Id: I8f53a830cd8d4210f60e9827e525c779a0696e04
Mathieu Chartier [Fri, 7 Oct 2016 22:24:46 +0000 (15:24 -0700)]
Persistent bitmap for region space
Fix bug where region space was not safely walkable due to holes
in the unevac regions possibly having dangling class pointers.
No preformance change, RAM overhead 1.1-1.2% .Heap (non LOS).
Test: test-art-host
Test: https://android-review.googlesource.com/#/c/288907/
Bug:
31522820
Change-Id: Ic4f8b7175e117689cb1ce3e28b082cf63f1f7b5a
Mathieu Chartier [Wed, 19 Oct 2016 19:35:54 +0000 (19:35 +0000)]
Merge "Move most of class linker to ObjPtr"
Treehugger Robot [Wed, 19 Oct 2016 18:53:06 +0000 (18:53 +0000)]
Merge "Fix bug in dynamic BCE. With regression test."
Igor Murashkin [Thu, 13 Oct 2016 00:44:50 +0000 (17:44 -0700)]
jni: Support @FastNative methods that return objects
Bug:
32088975
Change-Id: I16f8b7ec6b251812af60ab25f2153d9b72f37044
Igor Murashkin [Thu, 13 Oct 2016 15:12:20 +0000 (15:12 +0000)]
Revert "jni: Disable FastNative path for methods returning objects"
This reverts commit
6f029d9cfae142f318e3986331b04695f3ea524a.
Change-Id: I075bbf55a07565118b8fa529a397bb42490e6e51
Aart Bik [Tue, 18 Oct 2016 18:35:22 +0000 (11:35 -0700)]
Fix bug in dynamic BCE. With regression test.
Rationale:
We implicitly assumed anything on a fixed offset to a suitable
candidate could be picked for codegen. Although this is usually
true, the scanner found an exception (on types). So, it is best
to make the test explicit. Note: some type implications are TBD.
Bug:
32193474
Test: test-art-host and offending APKs
Change-Id: I664a2caa97a7f231509f8832b940dd72da11a372
Mathieu Chartier [Tue, 18 Oct 2016 23:27:40 +0000 (16:27 -0700)]
Move most of class linker to ObjPtr
Return values are still mirror pointer. Fix some failing asserts in
compiler driver and tests.
Bug:
31113334
Test: test-art-host
Change-Id: I4450bf9dfb2541749496b8388616e8aae8488919
Vladimir Marko [Fri, 30 Sep 2016 13:50:51 +0000 (14:50 +0100)]
Change pResolveString entrypoint to kSaveEverything.
Test: Run ART test suite including gcstress on host and Nexus 9.
Test: Run ART test suite including gcstress with baker CC on host and Nexus 9.
Bug:
20323084
Change-Id: I63c21a7d3be8ff7a5765b5003c85b5317635efe6
Mathieu Chartier [Wed, 19 Oct 2016 17:01:02 +0000 (17:01 +0000)]
Merge "Delete unused blocked_register_pairs_ in code generators"
David Sehr [Wed, 19 Oct 2016 16:18:50 +0000 (16:18 +0000)]
Merge "Remove mirror:: and ArtMethod deps in utils.{h,cc}"
Richard Uhler [Tue, 11 Oct 2016 14:06:38 +0000 (15:06 +0100)]
Return error message if IndirectReferenceTable construction fails.
Previously if there was an error when constructing the
IndirectReferenceTable, the error message was lost. Now expose and
include the error message when throwing an exception related to
failures to construct the IndirectReferenceTable.
The error message is propagated through JVMEnvExt, JavaVMExt, and
Runtime::Init as well.
Bug:
32013594
Test: Added new 151-OpenFileLimit runtest.
Test: m test-art-host, m test-art-target
Change-Id: I3692f6928c9570358571bce634569d6f14cdeb05
Treehugger Robot [Wed, 19 Oct 2016 14:55:34 +0000 (14:55 +0000)]
Merge "Revert "Interpreter: Add support for direct handle invokes on methods.""
Narayan Kamath [Wed, 19 Oct 2016 10:05:04 +0000 (11:05 +0100)]
Build: Avoid using ppid to generate temporary directory name.
When TMPDIR is left unset, use the BSD checksum of
$(ANDROID_BUILD_TOP)-$(USER) instead of the PPID to construct a root
directory for all test runs. This workaround lets us run tests from
multiple repos at the same time, and will also avoid having to deal
with path length issues on the build bots.
This is a hacky workaround, but the only proper fix is stop using a
test runner built on top of make.
Bug:
32165422
Test: test-art-host
Change-Id: I61bc1eb3cf57d498f910573926d826a36020067a
Narayan Kamath [Wed, 19 Oct 2016 13:21:59 +0000 (13:21 +0000)]
Revert "Interpreter: Add support for direct handle invokes on methods."
This reverts commit
e5cd2cd7d0f8e1332f25edfd2798d84fec871f10.
Reverting due to flakiness in 956-methodhandles. Flakiness will be
fixed by
67f0929710a4489e3603383e57c9d236920654aa but might take time
to submit.
Change-Id: Ifdda5d3caca62d16d21cefaab7742fb2e8ca6969
Roland Levillain [Wed, 19 Oct 2016 12:19:03 +0000 (12:19 +0000)]
Merge "Remove libcore tests failures expectations for the concurrent collector."
Treehugger Robot [Wed, 19 Oct 2016 11:32:59 +0000 (11:32 +0000)]
Merge "Fix string compression, add tests."
Narayan Kamath [Wed, 19 Oct 2016 10:30:57 +0000 (10:30 +0000)]
Merge "Interpreter: Add support for direct handle invokes on methods."
Treehugger Robot [Wed, 19 Oct 2016 10:04:50 +0000 (10:04 +0000)]
Merge "Blacklist test that has been flaky for days."
Vladimir Marko [Mon, 17 Oct 2016 13:45:29 +0000 (14:45 +0100)]
Fix string compression, add tests.
Fix String.compareTo() for interpreter; memcmp() does not
return the required result (only the right sign).
Fix x86-64 stub where the assembler silently accepted and
generated bad code for out-of-range JECXZ.
Add extensive tests for String.equals(), String.compareTo()
and String.indexOf().
Bug:
31040547
Test: Run ART test suite including interpreter tests on host and Nexus 9.
Test: Ditto with string compression enabled.
Change-Id: I21b7a74da8a577c8fbaf8d9225f048550236d414
Treehugger Robot [Wed, 19 Oct 2016 09:29:36 +0000 (09:29 +0000)]
Merge "Release version 0.8 of ahat."
Nicolas Geoffray [Wed, 19 Oct 2016 08:32:10 +0000 (09:32 +0100)]
Blacklist test that has been flaky for days.
Change-Id: Ic3f4a10568b03f02c2173fd18e7642bb9ae4e2b3
Treehugger Robot [Wed, 19 Oct 2016 02:00:08 +0000 (02:00 +0000)]
Merge "ART: Remove IRT cruft"
David Sehr [Thu, 13 Oct 2016 16:12:37 +0000 (09:12 -0700)]
Remove mirror:: and ArtMethod deps in utils.{h,cc}
The latest chapter in the ongoing saga of attempting to dump a DEX
file without having to start a whole runtime instance. This episode
finds us removing references to ArtMethod/ArtField/mirror.
One aspect of this change that I would like to call out specfically
is that the utils versions of the "Pretty*" functions all were written
to accept nullptr as an argument. I have split these functions up as
follows:
1) an instance method, such as PrettyClass that obviously requires
this != nullptr.
2) a static method, that behaves the same way as the util method, but
calls the instance method if p != nullptr.
This requires using a full class qualifier for the static methods,
which isn't exactly beautiful. I have tried to remove as many cases
as possible where it was clear p != nullptr.
Bug:
22322814
Test: test-art-host
Change-Id: I21adee3614aa697aa580cd1b86b72d9206e1cb24
Mathieu Chartier [Tue, 18 Oct 2016 20:24:05 +0000 (13:24 -0700)]
Delete unused blocked_register_pairs_ in code generators
Legacy code for compatibility with quick?
Test: test-art-host CC
Change-Id: I9de261daea67dfd9bd3df89826ba9d10f135e29e
Mathieu Chartier [Tue, 18 Oct 2016 20:39:28 +0000 (20:39 +0000)]
Merge "Update the Begin() of LargeObjectMapSpace"
Roland Levillain [Tue, 18 Oct 2016 18:07:49 +0000 (19:07 +0100)]
Remove libcore tests failures expectations for the concurrent collector.
Test: art/tools/run-libcore-tests.sh --mode=host --variant=X32 --debug (with ART_USE_READ_BARRIER=true)
Bug:
12687968
Change-Id: I470f11d0bc6e38011c5b8f3797f2c0e9ec1e56cc
Treehugger Robot [Tue, 18 Oct 2016 18:02:37 +0000 (18:02 +0000)]
Merge "Enable last value generation of periodic sequence."
Mathieu Chartier [Tue, 18 Oct 2016 17:40:52 +0000 (17:40 +0000)]
Merge "Move art/native to ObjPtr"
Mingyao Yang [Tue, 18 Oct 2016 17:32:46 +0000 (17:32 +0000)]
Merge "More store/allocation elimination for singletons in case of loops"
Treehugger Robot [Tue, 18 Oct 2016 17:32:14 +0000 (17:32 +0000)]
Merge changes If0d5eeeb,Id927f2b5
* changes:
ART: Fix and extend test 904
ART: Better handle multiple event enables
Andreas Gampe [Tue, 18 Oct 2016 17:13:02 +0000 (17:13 +0000)]
Merge "ART: Expect a null self in SetEntrypointsInstrumented"