OSDN Git Service
Andreas Gampe [Tue, 18 Oct 2016 17:13:02 +0000 (17:13 +0000)]
Merge "ART: Expect a null self in SetEntrypointsInstrumented"
Andreas Gampe [Tue, 18 Oct 2016 17:03:42 +0000 (10:03 -0700)]
ART: Expect a null self in SetEntrypointsInstrumented
Follow-up to commit
157c77eb9a5d6a7fe6ebcc29afa7f1913a877c87.
Bug:
31684277
Test: m ART_TEST_GC_STRESS=true test-art-host
Change-Id: I9de848ea6a9484798b75a594f3e390ef27394743
Andreas Gampe [Tue, 18 Oct 2016 15:15:56 +0000 (15:15 +0000)]
Merge changes I7061c450,Ie8f8f24b,Ia6cee2cb
* changes:
ART: Do not free allocation listener in heap destructor
ART: Fix allocation entrypoint instrumentation
ART: Fix lock order issue in allocation tracking
Narayan Kamath [Tue, 18 Oct 2016 09:49:15 +0000 (09:49 +0000)]
Merge "Revert "Revert "Revert "Temporarily blacklist 955-method-handles-smali.""""
Narayan Kamath [Tue, 18 Oct 2016 09:23:04 +0000 (09:23 +0000)]
Merge "Fix handling of dex cache arrays for method types."
Andreas Gampe [Tue, 18 Oct 2016 00:46:15 +0000 (17:46 -0700)]
ART: Do not free allocation listener in heap destructor
Do not deallocate on exit. Libraries are freed only after the heap
has already been destroyed.
Bug:
31684277
Bug:
31684920
Test: m test-art-host
Change-Id: I7061c4500a9ad314e2c00d7d722bb3372dff4810
Andreas Gampe [Tue, 18 Oct 2016 00:44:41 +0000 (17:44 -0700)]
ART: Fix allocation entrypoint instrumentation
Fix the unstarted-runtime case. Special-case the reset call to
the current thread, only.
Bug:
31684277
Test: m test-art-host
Change-Id: Ie8f8f24b2a6041344266a4e6b6bf8ddd9a0352a5
Andreas Gampe [Tue, 18 Oct 2016 00:40:27 +0000 (17:40 -0700)]
ART: Fix lock order issue in allocation tracking
(Un)instrumenting requires the instrumenting lock, which must be
acquired before the mutator lock. As the plugin can be called both
with and without the lock held, be careful. For simplicity, acquire
the lock (potentially) and immediately suspend.
Bug:
31684277
Test: m test-art-host
Change-Id: Ia6cee2cbe90f13f5543bdfea815d469b28a0f8f4
Treehugger Robot [Mon, 17 Oct 2016 23:08:41 +0000 (23:08 +0000)]
Merge "event interface going private"
Treehugger Robot [Mon, 17 Oct 2016 22:47:01 +0000 (22:47 +0000)]
Merge "Remove logging dependency on runtime"
Treehugger Robot [Mon, 17 Oct 2016 21:56:12 +0000 (21:56 +0000)]
Merge "Fix invoke-virtual not throwing ICCE in some cases"
Mark Salyzyn [Mon, 17 Oct 2016 21:11:20 +0000 (14:11 -0700)]
event interface going private
Test: compile
Bug:
30465923
Change-Id: I704e0e6ae886207a9625fcb59be4876307d21e5f
David Sehr [Mon, 17 Oct 2016 17:09:33 +0000 (10:09 -0700)]
Remove logging dependency on runtime
Moved the abort backtracing function to runtime, forcing callers to
supply the aborter at InitLogging. This makes runtime properly layer
on top of logging by removing the cyclic dependency.
Bug:
22322814
Test: test-art-host
Change-Id: I8b2e72174e937bb88fe1bddd6d04b564cfb011a9
Mathieu Chartier [Mon, 17 Oct 2016 20:29:37 +0000 (20:29 +0000)]
Merge "Move most mirror:: args to ObjPtr"
Alex Light [Mon, 17 Oct 2016 20:02:39 +0000 (13:02 -0700)]
Fix invoke-virtual not throwing ICCE in some cases
Due to an oversight invoke-virtual on an interface method would
not cause an ICCE to be thrown if the target method is default. This
could potentially cause incorrect methods to be called at runtime.
Bug:
32201623
Test: mma test-art-host-run-test-978-virtual-interface
Change-Id: Ie565cf2fbe8602b17be0fb051e21d221a17b518f
Mathieu Chartier [Sat, 15 Oct 2016 01:43:19 +0000 (18:43 -0700)]
Move most mirror:: args to ObjPtr
Fixed possible moving GC bugs in ClinitImageUpdate class.
Bug:
31113334
Test: test-art-host
Change-Id: I0bf6578553d58b944aaa17665f1350bdf5ed15ec
Vladimir Marko [Mon, 17 Oct 2016 16:43:30 +0000 (16:43 +0000)]
Merge "Use FdFile::Copy() in dex2oat for better error checking."
Narayan Kamath [Mon, 17 Oct 2016 15:13:46 +0000 (16:13 +0100)]
Revert "Revert "Revert "Temporarily blacklist 955-method-handles-smali."""
This reverts commit
5665f6a561262b78d85afc975eca5a3138f4efa2.
Test failures were fixed in
d4fd5b1ec3bea01ad6985b7fe19a0f80b5fc970b.
Test: make test-art-host.
Change-Id: I45901836a92336ed1a337cdbf3fa9a0181c3d975
Narayan Kamath [Fri, 14 Oct 2016 17:49:12 +0000 (18:49 +0100)]
Fix handling of dex cache arrays for method types.
- Add support for relocating method type dex cache arrays.
- Add missing call to MethodTypeDexCachePair::Initialize in the
class_linker.
- Fix alignment calculation for method_types in
DexCacheArraysLayout.
- Removed unused MethodTypeOffset(uint32_t) method.
Fixes tests with --pic.
Test: make test-art-host
Bug:
30550796
Change-Id: I2bba7228762b9e9834e7659fe62090be78afdfa8
Brian Carlstrom [Mon, 17 Oct 2016 15:18:09 +0000 (15:18 +0000)]
Merge "Ensure OpenDexFilesFromImage closes file to prevent file descriptor leak"
Vladimir Marko [Mon, 17 Oct 2016 15:08:21 +0000 (15:08 +0000)]
Merge "Add DCHECK() for class loader in artResolveStringFromCode()."
Vladimir Marko [Mon, 17 Oct 2016 14:25:10 +0000 (15:25 +0100)]
Use FdFile::Copy() in dex2oat for better error checking.
Previously, read errors would have been silently ignored
and write errors would ungracefully crash.
Also improves performance on Linux, including Android,
by using sendfile(). (We still keep Mac builds around.)
Test: m test-art-host
Change-Id: I689e8b9fee4595c42b353bd10042b60a7d6c1bc7
Vladimir Marko [Mon, 17 Oct 2016 12:27:55 +0000 (12:27 +0000)]
Merge "Do not write empty class table and intern table to image."
Treehugger Robot [Sat, 15 Oct 2016 04:06:52 +0000 (04:06 +0000)]
Merge "ART: Blacklist test 907 for target"
Andreas Gampe [Sat, 15 Oct 2016 02:05:06 +0000 (19:05 -0700)]
ART: Blacklist test 907 for target
Bug:
31684578
Test: m test-art-host
Change-Id: If2353bef8601ba16941a7b1df2befc215b493431
Treehugger Robot [Sat, 15 Oct 2016 02:02:37 +0000 (02:02 +0000)]
Merge changes If95ecaf4,Ifb33cae2
* changes:
ART: Temporarily use global references for GetLoadedClasses
ART: Add GetLoadedClasses support
Treehugger Robot [Sat, 15 Oct 2016 01:08:46 +0000 (01:08 +0000)]
Merge "ART: Make JNI global and weak global locks global"
Brian Carlstrom [Fri, 14 Oct 2016 08:04:26 +0000 (01:04 -0700)]
Ensure OpenDexFilesFromImage closes file to prevent file descriptor leak
(cherry picked from commit
645e477c2ce7a59ac98bc86463826cf082a13ad8)
Test: m -j32 test-art-host
Bug:
32095919
Change-Id: I44541edeb403a508e1b9794ee09fb1f55e3f42bf
Mathieu Chartier [Fri, 14 Oct 2016 23:40:46 +0000 (23:40 +0000)]
Merge "Move reference processor and mirror::Reference to ObjPtr"
Andreas Gampe [Fri, 14 Oct 2016 20:30:56 +0000 (13:30 -0700)]
ART: Temporarily use global references for GetLoadedClasses
Until we have enough local references, use global references.
Bug:
31684578
Bug:
32125344
Test: m test-art-host
Change-Id: If95ecaf424cfc7e8a84c7f99b071ac5d6bfb7797
Andreas Gampe [Wed, 12 Oct 2016 19:51:25 +0000 (12:51 -0700)]
ART: Add GetLoadedClasses support
Add support to retrieve all loaded classes. Use the standard
ClassLoader callback infrastructure.
Bug:
31684578
Test: m test-art-host-run-test-907-get-loaded-classes
Change-Id: Ifb33cae27dc32602bcd8fd930d3c7eda02598c26
Andreas Gampe [Fri, 14 Oct 2016 20:27:12 +0000 (13:27 -0700)]
ART: Make JNI global and weak global locks global
Add them to Locks. Give the JNI global table lock
a lock level, close to the weak global JNI references.
Bug:
31684578
Test: m test-art-host
Change-Id: I3857a3b0be69b16811d9999096b2c42e7a25d227
Hiroshi Yamauchi [Fri, 14 Oct 2016 21:46:31 +0000 (21:46 +0000)]
Merge "Add a mark bit check in the read barrier jni entrypoint."
Mathieu Chartier [Fri, 14 Oct 2016 21:28:47 +0000 (14:28 -0700)]
Move reference processor and mirror::Reference to ObjPtr
Bug:
31113334
Test: test-art-host
Change-Id: I2c7c3dfd88ebf12a0de271436f8a7781f997e061
Hiroshi Yamauchi [Fri, 14 Oct 2016 18:21:38 +0000 (11:21 -0700)]
Add a mark bit check in the read barrier jni entrypoint.
Bug:
30437917
Bug:
12687968
Test: test-art host/N9, N9 libartd boot, Ritz EAAC.
Change-Id: Ic5f8080959f243e80f00da73ba5f4b91a8d8b617
Mathieu Chartier [Fri, 14 Oct 2016 16:54:05 +0000 (16:54 +0000)]
Merge "Move mirror::ObjectArray to ObjPtr"
Vladimir Marko [Fri, 14 Oct 2016 15:28:52 +0000 (16:28 +0100)]
Add DCHECK() for class loader in artResolveStringFromCode().
Address late comment from
https://android-review.googlesource.com/281642
Test: m test-art-host
Bug:
20323084
Bug:
30627598
Change-Id: I3ba2617d2bc52ac8ba11307d206e6f5e6c017fb7
Narayan Kamath [Fri, 14 Oct 2016 14:29:03 +0000 (14:29 +0000)]
Merge "Revert "Revert "Temporarily blacklist 955-method-handles-smali."""
Narayan Kamath [Fri, 14 Oct 2016 14:27:33 +0000 (14:27 +0000)]
Revert "Revert "Temporarily blacklist 955-method-handles-smali.""
This reverts commit
f18d84699a7c18802f9774069143c173c6b927fb.
Tests are red on the bot. Blacklisting until this is investigated further.
Change-Id: Ibb9b4066abe28e8625c4eed5e0818e6a3fdd4f44
Treehugger Robot [Fri, 14 Oct 2016 13:23:03 +0000 (13:23 +0000)]
Merge "Revert "Temporarily blacklist 955-method-handles-smali.""
Roland Levillain [Fri, 14 Oct 2016 11:47:10 +0000 (11:47 +0000)]
Merge "Small clean up in art::x86_64::ReadBarrierMarkSlowPathX86_64."
Narayan Kamath [Thu, 13 Oct 2016 15:09:33 +0000 (16:09 +0100)]
Revert "Temporarily blacklist 955-method-handles-smali."
This reverts commit
adc2ef25244645a650111560d252e32b3e22f463.
The test is green, now that the required smali changes have been
merged into aosp/master.
Test: make test-art-host
Change-Id: I63eed37470d1def3bafccdd00116d7b49a4c9c78
Vladimir Marko [Thu, 13 Oct 2016 11:53:15 +0000 (12:53 +0100)]
Do not write empty class table and intern table to image.
And remove dead ClassLinker and InternTable code that would
be erroneously triggered by not writing the tables.
Test: m test-art-host
Change-Id: I2520daa8d1231e16112d44e364a72d782fa32527
Treehugger Robot [Fri, 14 Oct 2016 10:19:58 +0000 (10:19 +0000)]
Merge "interpreter: support for non-exact invokes."
Narayan Kamath [Wed, 3 Aug 2016 11:46:58 +0000 (12:46 +0100)]
interpreter: support for non-exact invokes.
Performs primitive argument conversions as well as boxing and unboxing
operations. Support for return value conversions will be added in a
follow up change.
Test: make test-art-host
Change-Id: I2e3348ff64a5826e477f87c12a7d5c390eb3a653
Nicolas Geoffray [Fri, 14 Oct 2016 08:37:36 +0000 (08:37 +0000)]
Merge "MIPS32: Improve integer comparison with constants."
Mathieu Chartier [Thu, 13 Oct 2016 20:48:23 +0000 (13:48 -0700)]
Move mirror::ObjectArray to ObjPtr
Also reduce calls to ObjPtr::Ptr.
Bug:
31113334
Test: test-art-host -j32
Change-Id: I73e1b356972bb079b66332f00f7f07451601044e
Treehugger Robot [Fri, 14 Oct 2016 00:37:37 +0000 (00:37 +0000)]
Merge "jni: Add read barrier fast path to jni compiler"
Mathieu Chartier [Thu, 13 Oct 2016 23:52:45 +0000 (23:52 +0000)]
Merge "Move common throws to ObjPtr"
Mathieu Chartier [Thu, 13 Oct 2016 20:59:58 +0000 (13:59 -0700)]
Move common throws to ObjPtr
Also a few other throws. Removed some calls to ObjPtr::Ptr.
Test: test-art-host
Bug:
31113334
Change-Id: I4082d64134a5a8961489f4309522c28a30968a18
Mathieu Chartier [Thu, 13 Oct 2016 20:08:36 +0000 (20:08 +0000)]
Merge "Move mirror::Class to use ObjPtr"
Mathieu Chartier [Tue, 4 Oct 2016 20:54:57 +0000 (13:54 -0700)]
Move mirror::Class to use ObjPtr
Leave the return types as non ObjPtr for now. Fixed moving GC bugs
in tests.
Test: test-art-host
Bug:
31113334
Change-Id: I5da1b5ac55dfbc5cc97a64be2c870ba9f512d9b0
Igor Murashkin [Thu, 6 Oct 2016 21:59:19 +0000 (14:59 -0700)]
jni: Add read barrier fast path to jni compiler
Static method dispatch via JNI requires a read barrier
for the ArtMethod::GetDeclaringClass() load before adding it to the
JNI StackHandleScope.
We used to call ReadBarrierJni unconditionally but add a branch
to skip calling it if the GC is not currently in the marking phase.
Test: ART_USE_READ_BARRIER=true make test-art-host test-art-target
Bug:
30437917
Change-Id: I4f505ebde17c0a67209c7bb51b3f39e37a06373a
Roland Levillain [Thu, 13 Oct 2016 15:51:08 +0000 (16:51 +0100)]
Small clean up in art::x86_64::ReadBarrierMarkSlowPathX86_64.
Clearly separate art::x86_64::CpuRegister (register object
used by the x86-64 assembler) from art::x86_64::Register
(register number) in
art::x86_64::ReadBarrierMarkSlowPathX86_64::EmitNativeCode.
Test: ART_USE_READ_BARRIER=true make test-art-host
Bug:
12687968
Change-Id: I4300e9b9c16b18119d4e399092aa1c9543518ab5
Nicolas Geoffray [Thu, 13 Oct 2016 15:09:30 +0000 (15:09 +0000)]
Merge "Fix optimizing_cfi_test and arm64 code generation."
Nicolas Geoffray [Thu, 13 Oct 2016 12:42:30 +0000 (13:42 +0100)]
Fix optimizing_cfi_test and arm64 code generation.
Change https://android-review.googlesource.com/#/c/287582/ broke it.
test: m test-art-host-gtest-optimizing_cfi_test
test: m test-art-target on angler
Change-Id: I7fc74a87ffa0b26b8e103b87a2ac1179bea2145a
Vladimir Marko [Thu, 13 Oct 2016 13:31:18 +0000 (13:31 +0000)]
Merge "Fix missing symbols for multiple oat files case"
David Srbecky [Thu, 13 Oct 2016 12:52:31 +0000 (12:52 +0000)]
Merge "Generate SHA-1 build ID for host-generated *.oat files (1/2)."
Nicolas Geoffray [Thu, 13 Oct 2016 10:15:52 +0000 (10:15 +0000)]
Merge "Update HInstruction::NeedsCurrentMethod."
Nicolas Geoffray [Thu, 13 Oct 2016 10:04:00 +0000 (10:04 +0000)]
Merge "ART: Disable test 906 for JIT"
Nicolas Geoffray [Thu, 13 Oct 2016 08:13:49 +0000 (08:13 +0000)]
Merge "Revert "Revert "Remove dead code from compiler driver."""
Mathieu Chartier [Thu, 13 Oct 2016 04:09:27 +0000 (04:09 +0000)]
Merge "Move Heap::GetInstances to use Handles"
Mathieu Chartier [Thu, 13 Oct 2016 02:37:59 +0000 (19:37 -0700)]
Move Heap::GetInstances to use Handles
Prevent moving GC bugs from VisitObjects. Fix JDWP tests.
Test: art/tools/run-jdwp-tests.sh '--mode=host' '--variant=X32' --debug
Bug:
31113334
Change-Id: Ie7f51f1980ec0c1eddc3b59c3e49564eacb3be85
bowen_lai [Wed, 12 Oct 2016 05:28:55 +0000 (13:28 +0800)]
Fix missing symbols for multiple oat files case
Generate the missing symbols when enabling "--multi-image"
Test: m test-art-host-gtest-dex2oat_test
Change-Id: I0ae2fb552ecd741f0b06414bc4a37c2f93ce5389
Alexey Frunze [Fri, 16 Sep 2016 04:37:49 +0000 (21:37 -0700)]
MIPS32: Improve integer comparison with constants.
Test: booted MIPS32 in QEMU
Test: test-art-target-run-test-optimizing on CI20
Test: test-art-target-gtest on CI20
Change-Id: Icbe74099fdebc29a38055ef70d7f14eed770b0a7
Mathieu Chartier [Thu, 13 Oct 2016 02:30:43 +0000 (02:30 +0000)]
Merge "Use handles for GetReferringObjects"
Mathieu Chartier [Thu, 13 Oct 2016 02:19:56 +0000 (19:19 -0700)]
Use handles for GetReferringObjects
Required since VisitObjects may cause thread suspension. Fixes
failing jdwp tests.
Test: test-art-host
Test: art/tools/run-jdwp-tests.sh '--mode=host' '--variant=X32' --debug
Bug:
31113334
Change-Id: Ic11780b3778c83e7812bc90c0723a293537f376c
Mathieu Chartier [Thu, 13 Oct 2016 01:31:19 +0000 (01:31 +0000)]
Merge "Fix moving GC bug in cloning finalizable objects"
Andreas Gampe [Thu, 13 Oct 2016 01:21:41 +0000 (18:21 -0700)]
ART: Disable test 906 for JIT
Suppress test which has potential allocations at inopportune
moments.
Bug:
31385354
Test: m ART_TEST_JIT=true test-art-host-run-test-906-iterate-heap
Change-Id: I137d5d2ba20b95ee4c4421e9da7526bee0c57d20
Mathieu Chartier [Wed, 12 Oct 2016 23:08:35 +0000 (16:08 -0700)]
Fix moving GC bug in cloning finalizable objects
It is not safe to have thread suspension in the PreFenceVisitor. The fix is
to add the finalizer reference in the caller.
Test: art/tools/run-libcore-tests.sh '--mode=host' '--variant=X32' --debug
Bug:
31113334
Change-Id: I1e4650f8b75408a3d07e2c51ac334ff98552cfb5
Colin Cross [Thu, 13 Oct 2016 00:02:33 +0000 (00:02 +0000)]
Merge "Move registration into android package"
Mathieu Chartier [Wed, 12 Oct 2016 23:47:10 +0000 (23:47 +0000)]
Merge "Replace StackHandleScopeCollection with VariableSizedHandleScope"
Mathieu Chartier [Wed, 12 Oct 2016 23:00:51 +0000 (23:00 +0000)]
Merge "Add handle wrapper to allocation listener"
Treehugger Robot [Wed, 12 Oct 2016 22:57:20 +0000 (22:57 +0000)]
Merge "Recognize XOR-based periodic induction."
Treehugger Robot [Wed, 12 Oct 2016 22:47:18 +0000 (22:47 +0000)]
Merge "ART: Fix typo"
Mathieu Chartier [Wed, 12 Oct 2016 22:45:58 +0000 (15:45 -0700)]
Add handle wrapper to allocation listener
Fix failing test for interpreter.
Test: mm -j32 test-art-host-run-test-debug-prebuild-interpreter-relocate-trace-cms-checkjni-picimage-npictest-ndebuggable-904-object-allocation32 ART_TEST_TRACE=true ART_TEST_OPTIMIZING=false ART_TEST_INTERPRETER=true
Change-Id: I9e7e09db82cf13730dc2471ac05260bf6a69ab7c
Treehugger Robot [Wed, 12 Oct 2016 22:23:36 +0000 (22:23 +0000)]
Merge "jni: Disable FastNative path for methods returning objects"
Colin Cross [Wed, 12 Oct 2016 21:26:55 +0000 (14:26 -0700)]
Move registration into android package
Mutator registration is tightly coupled with the android package, move
all registration from the soong package to the android package.
Test: build.ninja identical
Change-Id: I0326d0c88f78edb79eebedb155b69415e351fb61
Nicolas Geoffray [Wed, 12 Oct 2016 21:03:31 +0000 (22:03 +0100)]
Update HInstruction::NeedsCurrentMethod.
HLoadString and HLoadClass when sharpened may not need it
anymore. Instead just rely on the HCurrentMethod being the
SSA dependency of those instructions.
Also save storing the current method in the stack if the
graph actually doesn't need it.
test: m test-art-host test-art-target
Change-Id: I235d8275230637cbbd38fc0d2f9b822f6d2a9c1e
Aart Bik [Wed, 12 Oct 2016 17:01:05 +0000 (10:01 -0700)]
Recognize XOR-based periodic induction.
Rationale:
This is a commonly used construct (e.g. x = !x for booleans
and x ^= 1 for integers). This CL prepares some upcoming
optimizations that exploit such inductions.
Change-Id: I46edffb9de1075a836995daf5c2dfff7891f3034
Test: 530-checker-loops2 and induction_var_analysis_test
Andreas Gampe [Wed, 12 Oct 2016 20:50:20 +0000 (13:50 -0700)]
ART: Fix typo
Follow-up to commit
27fa96c285c4aa2f64e9bb63a3f38ffdc98c282a.
Bug:
31684277
Test: m test-art-host
Change-Id: I165b350f6c1a216ed6a7ca648abd6004c662c1cb
Igor Murashkin [Wed, 12 Oct 2016 20:33:43 +0000 (13:33 -0700)]
jni: Disable FastNative path for methods returning objects
Bug:
32088975
Change-Id: Iba3a8f5462829ccb38f771f8f940b57c4e6a1c3f
Treehugger Robot [Wed, 12 Oct 2016 20:42:56 +0000 (20:42 +0000)]
Merge "Fix the CC monkey crashes."
Mathieu Chartier [Tue, 11 Oct 2016 23:52:17 +0000 (16:52 -0700)]
Replace StackHandleScopeCollection with VariableSizedHandleScope
VariableSizedHandleScope's internal handle scopes are not pushed
directly on the thread. This means that it is safe to intermix with
other types of handle scopes.
Added test.
Test: clean-oat-host && test-art-host
Change-Id: Id2fd1155788428f394d49615d337d9134824c8f0
Andreas Gampe [Wed, 12 Oct 2016 20:11:11 +0000 (20:11 +0000)]
Merge "ART: Disable test 906 for target"
Andreas Gampe [Wed, 12 Oct 2016 20:09:03 +0000 (13:09 -0700)]
ART: Disable test 906 for target
Bug:
31385354
Test: m test-art-host-run-test-906-iterate-heap
Change-Id: Ic31d25acd9c50dfefddd567ead30d8d3e3f97d0a
Andreas Gampe [Wed, 12 Oct 2016 19:48:18 +0000 (19:48 +0000)]
Merge "ART: Add heap iteration callback"
Hiroshi Yamauchi [Wed, 12 Oct 2016 18:53:57 +0000 (11:53 -0700)]
Fix the CC monkey crashes.
Add ScopedGCCriticalSection around the monitor deflation to avoid race
conditions on the lock word.
Bug:
31773180
Bug:
31712602
Bug:
31712174
Bug:
31712601
Bug:
31712256
Bug:
31710993
Bug:
12687968
Test: test-art host/N9, N9 libartd boot, Ritz EAAC.
Change-Id: Id05c6502fb08ca2e0770af4940b737038c3412d6
Mathieu Chartier [Wed, 12 Oct 2016 18:35:03 +0000 (18:35 +0000)]
Merge "Move Heap parameters to ObjPtr"
Andreas Gampe [Wed, 12 Oct 2016 02:55:37 +0000 (19:55 -0700)]
ART: Add heap iteration callback
Add callback support for heap iteration. Visiting of fields will
be done in a follow-up.
Add a test.
Bug:
31385354
Test: m test-art-host-run-test-906-iterate-heap
Test: m ART_TEST_GC_STRESS=true ART_TEST_GC_VERIFY=true test-art-host-run-test-906-iterate-heap
Change-Id: I7bcf6751e6df4ef58756ba97701050b2ff5eb07b
Mathieu Chartier [Fri, 7 Oct 2016 00:44:26 +0000 (17:44 -0700)]
Move Heap parameters to ObjPtr
Deleted some unused object dumping code.
Test: test-art-host
Bug:
31113334
Change-Id: I747220caafe6679591fd4b361d7f50383a046164
Treehugger Robot [Wed, 12 Oct 2016 15:47:44 +0000 (15:47 +0000)]
Merge "ART: Use cerr for host unexpected errors"
Nicolas Geoffray [Wed, 12 Oct 2016 13:03:15 +0000 (13:03 +0000)]
Revert "Revert "Remove dead code from compiler driver.""
This reverts commit
38f250fd3cb36fac27bad7cac8eefacdf8a6e41e.
Change-Id: I491891c9108a0646145553241aa04a9cbba7d29b
Nicolas Geoffray [Wed, 12 Oct 2016 13:05:08 +0000 (13:05 +0000)]
Merge "Address revew comments for change Ia653d2c72df13889dc85dd8c84997582c034ea4b."
Andreas Gampe [Wed, 12 Oct 2016 03:04:11 +0000 (20:04 -0700)]
ART: Use cerr for host unexpected errors
Use cerr and endl when dumping unexpected signals on Linux. This
simulates the previous special-casing of INTERNAL_FATAL to
immediately print output.
Bug:
31338270
Test: m test-art-host
Test: manual segfault
Change-Id: I9d4471836339bf69681cc4aa43df6d558e7f123d
Treehugger Robot [Tue, 11 Oct 2016 23:16:48 +0000 (23:16 +0000)]
Merge "ART: Add object reclaim support"
Andreas Gampe [Tue, 11 Oct 2016 02:09:09 +0000 (19:09 -0700)]
ART: Add object reclaim support
Add support for the object free callback.
Refactor code in support. Add test.
Bug:
31384923
Test: m test-art-host
Test: m test-art-host-run-test-905-object-free
Test: m ART_USE_READ_BARRIER=true test-art-host-run-test-905-object-free
Change-Id: Icde40ad464c723cfe2f7660c07cd2f79b6dc2032
Treehugger Robot [Tue, 11 Oct 2016 19:55:32 +0000 (19:55 +0000)]
Merge "Improved and simplified loop optimizations."
Aart Bik [Mon, 10 Oct 2016 22:39:10 +0000 (15:39 -0700)]
Improved and simplified loop optimizations.
Rationale:
Empty preheader simplification has been simplified
to a much more general empty block removal optimization
step. Incremental updating of induction variable
analysis enables repeated elimination or simplification
of induction cycles.
This enabled an extra layer of optimization for
e.g. Benchpress Loop (17.5us. -> 0.24us. -> 0.08us).
So the original 73x speedup is now multiplied
by another 3x, for a total of about 218x.
Test: 618-checker-induction et al.
Change-Id: I394699981481cdd5357e0531bce88cd48bd32879
Treehugger Robot [Tue, 11 Oct 2016 16:03:13 +0000 (16:03 +0000)]
Merge "Enable generic JNI tests for MIPS32"