OSDN Git Service
Nicolas Geoffray [Wed, 9 Nov 2016 13:57:23 +0000 (13:57 +0000)]
Merge "Rename vdex-fd to output-vdex-fd, add input-vdex-fd."
Narayan Kamath [Wed, 9 Nov 2016 10:41:21 +0000 (10:41 +0000)]
Merge "MethodHandles: Add tests for MethodHandle.bindTo."
Narayan Kamath [Fri, 4 Nov 2016 14:41:19 +0000 (14:41 +0000)]
MethodHandles: Add tests for MethodHandle.bindTo.
Test: make test-art-host
Bug:
30550796
Change-Id: I7e8bd8c8cae5f874f7743fd1a0a361875fcb997e
Nicolas Geoffray [Mon, 7 Nov 2016 16:23:11 +0000 (16:23 +0000)]
Rename vdex-fd to output-vdex-fd, add input-vdex-fd.
In preparation for installd changes around vdex.
bug:
30937355
Test: device boots, oat_file_assistant_test
Change-Id: I7eba67f278a03d77b3e66fd24a96fbfd442db678
Nicolas Geoffray [Wed, 9 Nov 2016 09:55:45 +0000 (09:55 +0000)]
Merge "JIT root tables."
Orion Hodson [Wed, 9 Nov 2016 08:44:00 +0000 (08:44 +0000)]
Merge "MethodHandles: Constructor support"
Treehugger Robot [Wed, 9 Nov 2016 01:48:19 +0000 (01:48 +0000)]
Merge "ART: Fix tidy warnings"
Mingyao Yang [Tue, 8 Nov 2016 23:29:12 +0000 (23:29 +0000)]
Merge "Allow HDeoptimize to co-exist with LSE."
Treehugger Robot [Tue, 8 Nov 2016 23:21:21 +0000 (23:21 +0000)]
Merge "ART: Refactor jfieldID handling"
Mathieu Chartier [Tue, 8 Nov 2016 23:14:22 +0000 (23:14 +0000)]
Merge "Change check cast entrypoint to check instance of"
Andreas Gampe [Tue, 8 Nov 2016 16:09:33 +0000 (08:09 -0800)]
ART: Fix tidy warnings
Switch to char versions of find variants.
Add "explicit" constructor variants or refactor and
remove defaults.
Use const references.
Bug:
32619234
Test: m test-art-host
Change-Id: I970cc2f47d6cf8f0c74104b994b075b2fafb3d45
Andreas Gampe [Tue, 8 Nov 2016 21:20:52 +0000 (13:20 -0800)]
ART: Refactor jfieldID handling
ArtField objects have been native since Marshmallow.
Remove the dependency on being runnable. Refactor the
code into the jni_internal header.
Test: m test-art-host
Change-Id: I46708c70f9b4b566d7e26e4c5ffc3f0cbadc43fa
Treehugger Robot [Tue, 8 Nov 2016 21:15:39 +0000 (21:15 +0000)]
Merge "ART: Refactor jmethodID handling"
Mathieu Chartier [Tue, 8 Nov 2016 00:17:26 +0000 (16:17 -0800)]
Change check cast entrypoint to check instance of
Reduces code size since we do not need to reload class before
calling slow path.
TODO: Delete read barriers in the check cast code since the slow
path will retry with the proper read barriers if the check fails.
Bug:
12687968
Bug:
29516974
Test: test-art-host + test-art-target with CC
Change-Id: Ia4eb9bbe3fe2d2016e44523cf0451210828d7b88
Nicolas Geoffray [Wed, 5 Oct 2016 12:13:50 +0000 (13:13 +0100)]
JIT root tables.
Implement root tables for the JIT. Each JIT compiled method
gets a table allocated before the stack maps.
The table gets visited through Runtime::SweepSystemWeaks.
Implement String roots for x86_64 as an example.
Test: test-art-host test-art-target
Change-Id: Id3d5bc67479e08b52dd4b253e970201203a0f0d2
Orion Hodson [Fri, 4 Nov 2016 11:09:53 +0000 (11:09 +0000)]
MethodHandles: Constructor support
Test: m test-art-host-run-test-956-methodhandles
Bug:
30550796
Change-Id: Ied466d7e0f0f0b472e3a28909ca712dfdb99e422
Vladimir Marko [Tue, 8 Nov 2016 13:50:23 +0000 (13:50 +0000)]
Merge "Fix SimplifyIfs() trying to redirect exception handler edges."
Vladimir Marko [Tue, 8 Nov 2016 12:32:17 +0000 (12:32 +0000)]
Merge "Add String.indexOf() benchmark."
Vladimir Marko [Thu, 3 Nov 2016 13:01:28 +0000 (13:01 +0000)]
Fix SimplifyIfs() trying to redirect exception handler edges.
Test: 622-simplifyifs-exception-edges
Test: m test-art-host
Bug:
32545860
Bug:
32546110
Bug:
18051191
Change-Id: I641ed73baace840411fc5651937bbc80e79b0c46
Treehugger Robot [Tue, 8 Nov 2016 09:19:52 +0000 (09:19 +0000)]
Merge "Argument conversions for setter/getter MethodHandles."
Orion Hodson [Wed, 26 Oct 2016 09:56:25 +0000 (10:56 +0100)]
Argument conversions for setter/getter MethodHandles.
Test: m test-art-host-run-test-959-invoke-polymorphic-accessors
Bug:
30550796
Change-Id: I9898605fc9f9f8a80f47f9559f3ccb99b02b07c8
Andreas Gampe [Tue, 8 Nov 2016 00:48:23 +0000 (16:48 -0800)]
ART: Refactor jmethodID handling
ArtMethod objects have been native since Marshmallow.
Remove the dependency on being runnable. Refactor the
code into the jni_internal header.
Test: m test-art-host
Change-Id: I1385fcd4c08981491701da55a87036b447aa2fc2
Treehugger Robot [Tue, 8 Nov 2016 02:26:40 +0000 (02:26 +0000)]
Merge "ART: Extend Object tag table to be explicitly lockable"
Treehugger Robot [Mon, 7 Nov 2016 23:07:30 +0000 (23:07 +0000)]
Merge "Add forwarding address checks for X86, arm, arm64"
Treehugger Robot [Mon, 7 Nov 2016 21:27:46 +0000 (21:27 +0000)]
Merge "ART: Add Unlink to FdFile"
Treehugger Robot [Mon, 7 Nov 2016 21:02:27 +0000 (21:02 +0000)]
Merge "ART: Make excludes explicit"
Mathieu Chartier [Thu, 3 Nov 2016 18:15:04 +0000 (11:15 -0700)]
Add forwarding address checks for X86, arm, arm64
Added to READ_BARRIER_MARK_REG.
Bug:
30162165
Test: test-art-host, test-art-target
Change-Id: I15cf0d51ed3d22fa401e80ffac3877d61593527c
Colin Cross [Mon, 7 Nov 2016 20:28:25 +0000 (20:28 +0000)]
Merge "Support genrules with multiple tools"
Andreas Gampe [Fri, 24 Jun 2016 17:49:32 +0000 (10:49 -0700)]
ART: Add Unlink to FdFile
Add Unlink function that tries to unlink the file if it
was created with a file path. The function tries to
ensure that it does not unlink a newer file.
Add a parameter to Erase to add unlinking.
Test: m test-art-host-gtest-fd_file_test
Change-Id: I49993bb94aec10d5c8d9b2cbea30ebaa255b99e1
Colin Cross [Fri, 4 Nov 2016 22:31:17 +0000 (15:31 -0700)]
Support genrules with multiple tools
To allow genrules with more than one tool, rename the tool property to
tools and make it an array, replace $tool with $(location <label>),
and use $() for other variables for consistency.
Bug:
31948427
Test: compare build.ninja
Change-Id: I8d53510ac081ae20835b3ab7dfee3d74c520ab4d
(cherry picked from commit
7d332965ea44f54ddeedc9b7fadcf2e5b3259f3a)
Andreas Gampe [Mon, 7 Nov 2016 18:10:21 +0000 (10:10 -0800)]
ART: Extend Object tag table to be explicitly lockable
Expose the lock for the system weak holder. Add functions to lock
and unlock the object tagging table, and add accessors that assume
the table is already locked.
Bug:
31385354
Test: m test-art-host
Change-Id: I5a4328b0d439d13e6ace7965e22f01bbf8130f20
Andreas Gampe [Sat, 5 Nov 2016 03:27:24 +0000 (20:27 -0700)]
ART: Make excludes explicit
Fix some missing lock excludes.
Test: m
Change-Id: If74708c5d16469490e3374b7d5ffc23dd2ea5ec1
Dimitry Ivanov [Mon, 7 Nov 2016 18:00:39 +0000 (18:00 +0000)]
Merge "NB getError returns const char"
Treehugger Robot [Mon, 7 Nov 2016 17:46:49 +0000 (17:46 +0000)]
Merge changes I04517ee2,I476792ca
* changes:
ART: Remove unused lock levels
ART: Clean up old mutex
Treehugger Robot [Mon, 7 Nov 2016 13:15:41 +0000 (13:15 +0000)]
Merge "MethodHandles: Add tests for array accessors / identity / constant."
Roland Levillain [Mon, 7 Nov 2016 12:54:20 +0000 (12:54 +0000)]
Merge "Revert "Revert "Enable IntermediateAddress for primitive arrays with read barriers."""
Narayan Kamath [Thu, 3 Nov 2016 18:01:32 +0000 (18:01 +0000)]
MethodHandles: Add tests for array accessors / identity / constant.
Accompanies libcore change
a93a1fcc5b0e.
Test: make test-art-host
Bug:
30550796
Change-Id: Ic793687d98f850ffcd5f09fd3ab02d44644787d5
Vladimir Marko [Thu, 3 Nov 2016 13:25:44 +0000 (13:25 +0000)]
Add String.indexOf() benchmark.
Test: vogar --benchmark art/benchmark/string-indexof/src/StringIndexOfBenchmark.java
Change-Id: I57c8c9c7ede2b0e86a6142e713b4e8be094c82ce
Nicolas Geoffray [Sun, 6 Nov 2016 14:25:42 +0000 (14:25 +0000)]
Merge "Increase file size limit."
Nicolas Geoffray [Sun, 6 Nov 2016 14:24:08 +0000 (14:24 +0000)]
Increase file size limit.
Some checker tests now require more, as the cfg they
generate got bigger.
test: test-art-target
Change-Id: I301bc99730b139f7f5bdec77df3d6bee272d609e
Nicolas Geoffray [Sun, 6 Nov 2016 13:54:32 +0000 (13:54 +0000)]
Merge "Fix poison build."
Nicolas Geoffray [Sat, 5 Nov 2016 15:09:19 +0000 (15:09 +0000)]
Fix poison build.
The slow path for interface check cast isn't fatal for that build.
Test: ART_HEAP_POISONING=true/false m test-art-host-run-test
Change-Id: I3daf59e7f1e828ec72faf899adfafc9abd0fed88
Andreas Gampe [Sat, 5 Nov 2016 02:49:18 +0000 (02:49 +0000)]
Merge "ART: Make TypeCheckSlowPath call kind consistent"
Andreas Gampe [Sat, 5 Nov 2016 02:25:20 +0000 (19:25 -0700)]
ART: Make TypeCheckSlowPath call kind consistent
Slight refactor to make location and code generator consistent.
Bug:
32577579
Bug:
29516974
Test: m test-art-host
Change-Id: I11f8e227d4088d4922e6fdac3348cfe0f6690216
Andreas Gampe [Sat, 5 Nov 2016 01:07:20 +0000 (18:07 -0700)]
ART: Remove unused lock levels
Removes three obsolete lock levels.
Test: m test-art-host
Change-Id: I04517ee29a40ec383010d0e6f561d625360f067a
Dimitry Ivanov [Sat, 5 Nov 2016 01:03:37 +0000 (18:03 -0700)]
NB getError returns const char
We fixed the NB interface to have the callback return const char*
instead of char*, this commit fixes the test.
Bug:
32542970
Test: make test-art-host -j48
Change-Id: Iebab91c94dcc5699623226f220d6ef474b1a5f1f
Mathieu Chartier [Sat, 5 Nov 2016 00:54:21 +0000 (00:54 +0000)]
Merge "X86_64: Inline checking for kInterfaceCheck check cast"
Andreas Gampe [Fri, 4 Nov 2016 23:39:27 +0000 (16:39 -0700)]
ART: Clean up old mutex
Remove obsolete mutex.
Test: m test-art-host
Change-Id: I476792cac4d5d680192e35055abed66772cf8081
Mingyao Yang [Fri, 28 Oct 2016 18:07:24 +0000 (11:07 -0700)]
Allow HDeoptimize to co-exist with LSE.
The env use of HDeoptimize counts as escaping at the end of
executing the compiled code for a singleton, just like a return.
So store elimination won't happen for that singleton's locations.
Test: make test-art-host
Bug:
31716107
Change-Id: I09838e80586d279714c676a2f7294ae518f61457
Mathieu Chartier [Fri, 4 Nov 2016 02:23:06 +0000 (19:23 -0700)]
X86_64: Inline checking for kInterfaceCheck check cast
Interface check-cast with read barriers:
Before: 5.27 ns/check
After: 2.36 ns/check
Code expansion is 0.29%.
Test: test-art-host
Bug:
32577579
Bug:
29516974
Change-Id: Ie48251f97fbf2c95bd0a7c4bd62075414f8e3ae3
Treehugger Robot [Fri, 4 Nov 2016 20:01:22 +0000 (20:01 +0000)]
Merge "ART: Ignore google-default-arguments tidy check"
Treehugger Robot [Fri, 4 Nov 2016 20:00:34 +0000 (20:00 +0000)]
Merge "ART: Add NOLINT to ObjPtr"
Treehugger Robot [Fri, 4 Nov 2016 19:22:58 +0000 (19:22 +0000)]
Merge changes I8bbef5e3,Ib68bdc31,Ie39b7f59,I1ef8b65a
* changes:
ART: Remove "explicit" annotation
ART: Use references in assembler tests
ART: Make ManagedRegister ValueObject
ART: Make Location trivially copyable
Treehugger Robot [Fri, 4 Nov 2016 17:42:31 +0000 (17:42 +0000)]
Merge "Account for early exit loop."
Hiroshi Yamauchi [Fri, 4 Nov 2016 17:27:24 +0000 (17:27 +0000)]
Merge "Fix spin waiting for weak ref access in the intern table for CC."
Treehugger Robot [Fri, 4 Nov 2016 16:45:12 +0000 (16:45 +0000)]
Merge "Avoid visiting just eliminated bounds check."
Roland Levillain [Fri, 4 Nov 2016 13:44:09 +0000 (13:44 +0000)]
Revert "Revert "Enable IntermediateAddress for primitive arrays with read barriers.""
This reverts commit
4a3aa578eff94eb10450fae1772deb7cb8ddc6a6.
The failing assertion (see b/
30762467):
08-09 11:32:46.767 1654 1656 F dex2oatd: art/compiler/optimizing/register_allocation_resolver.cc:325] Check failed: interval->GetDefinedBy()->IsActualObject() IntermediateAddress@InstanceFieldGet
that motivated the initial revert has been removed by a
previous CL (commit
70e97462116a47ef2e582ea29a037847debcc029,
https://android-review.googlesource.com/#/c/254920/).
Test: ART host and target (ARM, ARM64) tests with `ART_USE_READ_BARRIER=true`.
Bug:
26601270
Bug:
12687968
Change-Id: I09cae0c6c38ca403924153e9f0eb0cc3ff4540e7
Roland Levillain [Fri, 4 Nov 2016 16:35:07 +0000 (16:35 +0000)]
Merge "Fix ART run-test 562-no-intermediate."
Andreas Gampe [Thu, 3 Nov 2016 23:48:51 +0000 (16:48 -0700)]
ART: Ignore google-default-arguments tidy check
Ignore the check for default arguments in virtual functions.
Bug:
32619234
Test: m
Change-Id: I62f1b36ca6fd0965cfd9f6be343b8a63ac4642c6
Andreas Gampe [Thu, 3 Nov 2016 22:46:34 +0000 (15:46 -0700)]
ART: Add NOLINT to ObjPtr
The ObjPtr constructors are constructed to allow implicit conversion.
Also ensure that ObjPtr is trivially copyable.
Bug:
32619234
Test: m
Change-Id: I022e8d7d5a54c0057e9007bb7c13312b343c23b6
Andreas Gampe [Fri, 4 Nov 2016 00:24:45 +0000 (17:24 -0700)]
ART: Remove "explicit" annotation
Remove unnecessary annotation.
Bug:
32619234
Test: m
Change-Id: I8bbef5e3b4b8d3f5ddeaece08fe614b9eeae6f2c
Andreas Gampe [Fri, 4 Nov 2016 00:24:15 +0000 (17:24 -0700)]
ART: Use references in assembler tests
Move parameters to const references.
Bug:
32619234
Test: m
Change-Id: Ib68bdc313b91fee1e9e4e1e794eeca630837b005
Andreas Gampe [Thu, 3 Nov 2016 23:50:05 +0000 (16:50 -0700)]
ART: Make ManagedRegister ValueObject
Make ManagedRegister a value class, and ensure it is trivially
copyable.
Bug:
32619234
Test: m
Change-Id: Ie39b7f59a01ed293891e97110db3f5262f25fb4e
Andreas Gampe [Thu, 3 Nov 2016 21:06:20 +0000 (14:06 -0700)]
ART: Make Location trivially copyable
Location is a ValueObject and should be trivially copyable. Move
copy constructor and copy assignment to default.
Add static assert.
Bug:
32619234
Test: m
Change-Id: I1ef8b65aafdbf84e3d4b7724b93f13936b590eba
Aart Bik [Fri, 4 Nov 2016 00:51:43 +0000 (17:51 -0700)]
Account for early exit loop.
Rationale:
last value computation is obviously only right if
the loop does not have early exits; only needed
if cycle leaks to outside loop in any way.
Bug:
32633772
Test: 623-checker-loop-regressions
Change-Id: Id60beca4704491cff611ad12a24bfc63c09d32c3
Roland Levillain [Fri, 4 Nov 2016 14:10:29 +0000 (14:10 +0000)]
Fix ART run-test 562-no-intermediate.
- Rename it to 562-checker-no-intermediate, so that Checker
assertions are actually verified.
- Fix Checker assertions, as they did not match the
code expected from the compiler.
- Have the test use an integer array (instead of a double
array), so that Checker assertions can be extended to ARM
as well (the ARM back end does not support the
IntermediateAddress instruction on long, float and double
arrays).
Test: make test-art-target-run-test-562-checker-no-intermediate
Bug:
30888043
Change-Id: I32c891948c585983d5fe5d6df092bc7a59c19ae6
Nicolas Geoffray [Fri, 4 Nov 2016 13:13:15 +0000 (13:13 +0000)]
Merge "Workaround adb issue in run-test."
Nicolas Geoffray [Fri, 4 Nov 2016 13:03:05 +0000 (13:03 +0000)]
Workaround adb issue in run-test.
Try a few times before giving up on fetching the architecture.
bug:
32655576
Change-Id: I05c6520efa56570ebe23820fca30fc234c368c88
Treehugger Robot [Fri, 4 Nov 2016 11:48:47 +0000 (11:48 +0000)]
Merge "MethodHandles: Implement MethodHandle.asType."
Nicolas Geoffray [Fri, 4 Nov 2016 11:03:18 +0000 (11:03 +0000)]
Merge "Integrate VerifierDeps in compiler driver."
Narayan Kamath [Fri, 4 Nov 2016 08:59:06 +0000 (08:59 +0000)]
Merge "MethodHandles: Track libcore change
eb497095e03068459."
Aart Bik [Fri, 4 Nov 2016 00:34:11 +0000 (00:34 +0000)]
Merge "More loop-body simplifications."
Treehugger Robot [Thu, 3 Nov 2016 23:39:29 +0000 (23:39 +0000)]
Merge "ART: Make Handle trivially-copyable"
Aart Bik [Tue, 1 Nov 2016 21:23:58 +0000 (14:23 -0700)]
Avoid visiting just eliminated bounds check.
Test: test-art-host
Bug:
32547652
Change-Id: Ifaed3d4eee08c6d044a41ade6c1ee73989489110
Andreas Gampe [Thu, 3 Nov 2016 20:06:25 +0000 (13:06 -0700)]
ART: Make Handle trivially-copyable
Use default copy constructor and copy assignment to make Handle
trivially copyable. Do the same for MutableHandle.
Fix up unused Handle warnings. Add asserts in the HandleScope
test.
Bug:
32619234
Test: m test-art-host
Change-Id: I151f0bdbeeb131a6fc5c44610f345663ebe96c09
Aart Bik [Thu, 3 Nov 2016 00:50:27 +0000 (17:50 -0700)]
More loop-body simplifications.
Rationale:
This removes all dead induction from the CaffeineLogic loop,
giving yet the next performance boost (2700us->1700us).
Also, the runtime is now the same between a DX compiled
and JACK compiled version, giving confidence that all
recent introduced optimizations are generally useful
and something expected from any optimizing compiler.
Last, less realistic improvement will pale anything
seen so far, since it removes the full loop (still TBD).
Test: test-art-host
Change-Id: Id6b89f74b7d009616821dca195200933cc0eaaf2
Treehugger Robot [Thu, 3 Nov 2016 20:43:06 +0000 (20:43 +0000)]
Merge changes I86bc206d,If20a34e7,I6ee6c826,I240341a0
* changes:
ART: Make some variables references
ART: Put macro parameters into parentheses
ART: Add "explicit" to constructors
ART: Change iterator value type to match
Hiroshi Yamauchi [Thu, 3 Nov 2016 20:03:20 +0000 (13:03 -0700)]
Fix spin waiting for weak ref access in the intern table for CC.
Bug:
32637633
Test: test-art-host with CC
Change-Id: I8f0f9f5ca24687f688318ea5cafcbb7f6597448c
Treehugger Robot [Thu, 3 Nov 2016 18:53:38 +0000 (18:53 +0000)]
Merge "Remove lock from ClassExt installation procedure."
Treehugger Robot [Thu, 3 Nov 2016 18:17:03 +0000 (18:17 +0000)]
Merge "Pass some arguments by const reference."
Andreas Gampe [Thu, 3 Nov 2016 15:21:59 +0000 (08:21 -0700)]
ART: Make some variables references
Avoid copying values.
Bug:
32619234
Test: m
Change-Id: I86bc206d6f6fccdf730c62c60317a7a4ae26c11b
Andreas Gampe [Thu, 3 Nov 2016 15:21:21 +0000 (08:21 -0700)]
ART: Put macro parameters into parentheses
Add parentheses to make macros robust.
Bug:
32619234
Test: m
Change-Id: If20a34e7e3497b1d969800d5004c8535810d90a6
Andreas Gampe [Thu, 3 Nov 2016 15:20:17 +0000 (08:20 -0700)]
ART: Add "explicit" to constructors
Add explicit to two constructors with single argument.
Bug:
32619234
Test: m
Change-Id: I6ee6c8264d76017247e2236170c776c801719a0a
Andreas Gampe [Thu, 3 Nov 2016 15:19:01 +0000 (08:19 -0700)]
ART: Change iterator value type to match
Make keys const.
Bug:
32619234
Test: m
Change-Id: I240341a0fec79754bea2ed21c0d0a4ddd119ce35
Mathieu Chartier [Thu, 3 Nov 2016 18:14:56 +0000 (18:14 +0000)]
Merge "Check for forwarding address in READ_BARRIER_MARK_REG"
Roland Levillain [Thu, 3 Nov 2016 18:14:31 +0000 (18:14 +0000)]
Merge "Update AArch32 VIXL intrinsics w.r.t. the new art::ReadBarrier API."
Roland Levillain [Thu, 3 Nov 2016 18:09:18 +0000 (18:09 +0000)]
Update AArch32 VIXL intrinsics w.r.t. the new art::ReadBarrier API.
Update with respect to changes introduced by commit
12b58b23de974232e991c650405f929f8b0dcc9f.
Test: ART_USE_READ_BARRIER=true make
Change-Id: Iaefd664172ff19cce17cf4d3b2064dba86170c22
Roland Levillain [Thu, 3 Nov 2016 17:56:19 +0000 (17:56 +0000)]
Merge "Add more missing definitions in art::arm::CodeGeneratorARMVIXL."
Roland Levillain [Thu, 3 Nov 2016 17:51:58 +0000 (17:51 +0000)]
Add more missing definitions in art::arm::CodeGeneratorARMVIXL.
This fixes build breakages on the read barrier
configuration. These are just dummy definitions, as ART's
AArch32 VIXL back end is work in progress.
Test: ART_USE_READ_BARRIER=true make
Change-Id: I8a0dd9724e4bf95664330232db40fd58bb8d234e
Hiroshi Yamauchi [Thu, 3 Nov 2016 17:36:23 +0000 (17:36 +0000)]
Merge "Clean up the runtime read barrier and fix fake address dependency."
Mingyao Yang [Thu, 3 Nov 2016 17:14:35 +0000 (17:14 +0000)]
Merge "More store/allocation elimination."
Nicolas Geoffray [Thu, 3 Nov 2016 17:11:48 +0000 (17:11 +0000)]
Merge "Output more for "Unable to determine architecture"."
Orion Hodson [Thu, 3 Nov 2016 17:07:40 +0000 (17:07 +0000)]
Merge "ART: Additional initialization for MethodHandle accessors."
Nicolas Geoffray [Thu, 3 Nov 2016 17:05:53 +0000 (17:05 +0000)]
Merge "Add missing definition of CodeGeneratorARMVIXL::GenerateReadBarrierSlow."
Orion Hodson [Thu, 3 Nov 2016 12:01:24 +0000 (12:01 +0000)]
ART: Additional initialization for MethodHandle accessors.
Ensure classes are initialized before static fields are touched by
MethodHandle setters and getters.
Bug:
30550796
Test: m test-art-host-run-test-979-invoke-polymorphic-accessors
Change-Id: Ibac4372607ecbb4e6f7347b89cef6d280632c835
Alex Light [Wed, 2 Nov 2016 18:19:31 +0000 (11:19 -0700)]
Remove lock from ClassExt installation procedure.
We were using a lock on the class to ensure that we avoid races in
setting the ext_data_ field of a class object. We replace this with a
CAS of the field in order to prevent deadlocks.
Test: mma test-art-host
Change-Id: Ie436ff9526f2c3b38a9af49c5606a7cee6d718f1
Roland Levillain [Thu, 3 Nov 2016 16:09:47 +0000 (16:09 +0000)]
Add missing definition of CodeGeneratorARMVIXL::GenerateReadBarrierSlow.
This fixes build breakages on the read barrier table lookup
configuration. This is just a dummy definition, as ART's
AArch32 VIXL back end is work in progress.
Test: ART_USE_READ_BARRIER=true ART_READ_BARRIER_TYPE=TABLELOOKUP make
Change-Id: Ifef39148fb7d9d8a5ad309ec0a2edc8a97d72f3d
Vladimir Marko [Thu, 3 Nov 2016 16:10:59 +0000 (16:10 +0000)]
Merge "Clean up parameter names in ManagedRegisterEntrySpills."
Vladimir Marko [Thu, 3 Nov 2016 15:12:29 +0000 (15:12 +0000)]
Pass some arguments by const reference.
Test: Rely on TreeHugger.
Bug:
32619234
Change-Id: Ia26277893641dcb3562eaeacaec4e089a978d56a
Narayan Kamath [Wed, 2 Nov 2016 18:47:11 +0000 (18:47 +0000)]
MethodHandles: Implement MethodHandle.asType.
Tracks libcore change
16fa583fb5ee489.
Test: make test-art-host
Bug:
30550796
Change-Id: I2457b563f67a183c4eebf94ddbe74cc55f772ee0