OSDN Git Service
Alex Light [Tue, 10 May 2016 17:01:22 +0000 (10:01 -0700)]
Revert "Revert "Make run-test default to optimizing compiler.""
This reverts commit
4650c939e8590b2d421241023e359260b1b59bf1.
Change-Id: I3814c6a579d3d88222b53d7ae63a2d4b03b620a7
Vladimir Marko [Tue, 10 May 2016 14:30:06 +0000 (14:30 +0000)]
Merge "Intrinsify String.length() and String.isEmpty() as HIR."
Narayan Kamath [Tue, 10 May 2016 14:05:52 +0000 (14:05 +0000)]
Merge "DexFile: Add an API to query oat file status."
Treehugger Robot [Tue, 10 May 2016 13:47:54 +0000 (13:47 +0000)]
Merge "Reduce memory usage of SSA Phi elimination and make it faster."
Vladimir Marko [Tue, 10 May 2016 12:31:23 +0000 (13:31 +0100)]
Reduce memory usage of SSA Phi elimination and make it faster.
Use an ArenaBitVector instead of an ArenaSet<> that leaks
its allocated memory on clear(). We were also erroneously
using the O(n) helper ContainsElement() for the ArenaSet<>
instead of the O(log n) ArenaSet<>::find() which made the
methods with large number of processed Phis also very slow
to compile in addition to the enormous memory usage.
Bug:
28684584
Change-Id: Idc7604e51cfae643debd0378baf828a1430ec14c
Narayan Kamath [Mon, 2 May 2016 12:14:48 +0000 (13:14 +0100)]
DexFile: Add an API to query oat file status.
Adds DexFile.getDexFileStatus(path), which returns an opaque,
human-readable string representation of the oat file status. This
representation isn't guaranteed to be stable and can change from
release to release.
bug:
27494108
(cherry picked from commit
cd7e7f78b8e97c1f6419f3f44e0d5fdc6eddfdc6)
Change-Id: If6997f7d28d022e118ffea1eec6183841577a637
Nicolas Geoffray [Tue, 10 May 2016 09:13:29 +0000 (09:13 +0000)]
Merge "Revert "Make run-test default to optimizing compiler.""
Nicolas Geoffray [Tue, 10 May 2016 09:13:13 +0000 (09:13 +0000)]
Revert "Make run-test default to optimizing compiler."
454 and 457 fail with interpreter access checks.
This reverts commit
f494663ab5295fadf7209a9a1bead05be5039858.
Change-Id: Iaff6036e83e1745f4ed00b8d6814abd5759c6854
Treehugger Robot [Tue, 10 May 2016 09:11:00 +0000 (09:11 +0000)]
Merge "Fix braino when parsing invoke transition weight."
Vladimir Marko [Tue, 10 May 2016 08:55:58 +0000 (08:55 +0000)]
Merge "Attribute arena allocations previously marked as STL."
Nicolas Geoffray [Fri, 6 May 2016 15:52:36 +0000 (16:52 +0100)]
Fix braino when parsing invoke transition weight.
bug:
27865109
(cherry picked from commit
95bc2f29ef2e9e6b7a71cd123df0c4a1063be1d7)
Change-Id: I56e21714bf803b8fefa2bd8087cd385c7a57564c
Nicolas Geoffray [Tue, 10 May 2016 08:13:27 +0000 (08:13 +0000)]
Merge "Workaround invokesuper underspecified behavior."
Nicolas Geoffray [Tue, 10 May 2016 08:12:41 +0000 (08:12 +0000)]
Merge "Relax the DCHECK in load store elimination."
David Sehr [Tue, 10 May 2016 04:24:17 +0000 (04:24 +0000)]
Merge "Remove a common subexpression from profman output"
David Sehr [Tue, 10 May 2016 01:06:47 +0000 (01:06 +0000)]
Merge "Use delete/delete[] rather than free/realloc in tracedump"
Dimitry Ivanov [Tue, 10 May 2016 00:44:07 +0000 (00:44 +0000)]
Merge "Initialize native loader before starting runtime"
Treehugger Robot [Tue, 10 May 2016 00:20:57 +0000 (00:20 +0000)]
Merge "Make --jvm work again"
Dimitry Ivanov [Mon, 9 May 2016 23:26:13 +0000 (16:26 -0700)]
Initialize native loader before starting runtime
Loading public libraries before everything else
to prevent situation when libssl.so gets into
libopenjdk.so load group which then prevented
from unloading by a global library referencing
the very same libssl.so
Bug: http://b/
28449304
Change-Id: I3bbff3cc6926c2377ae5cb5b7b5b5d6e26ea4470
Alex Light [Mon, 9 May 2016 23:21:09 +0000 (16:21 -0700)]
Make --jvm work again
A previous commit broke --jvm by making it be passed dex2oat args. Fix
this bug.
Change-Id: I22864ef876c7b3c174af029fe2f1a76cf7825fa7
David Sehr [Fri, 6 May 2016 19:29:35 +0000 (12:29 -0700)]
Remove a common subexpression from profman output
Change-Id: I12fa4a36f4e9d980a720bb52c6b736ffc91a6700
(cherry picked from commit
727074b62ef86dfb631a99214e6726d7d9c6c6be)
David Sehr [Fri, 6 May 2016 21:12:23 +0000 (14:12 -0700)]
Use delete/delete[] rather than free/realloc in tracedump
Bug:
28587945
Change-Id: I62281a956503b4351a36d6798bcd61e408b448f6
Treehugger Robot [Mon, 9 May 2016 19:57:08 +0000 (19:57 +0000)]
Merge "Revert "Revert "Assembly RegionTLAB allocation fast path for x86_64"""
Vladimir Marko [Thu, 28 Apr 2016 12:10:02 +0000 (13:10 +0100)]
Intrinsify String.length() and String.isEmpty() as HIR.
Use HArrayLength for String.length() in anticipation of
changing the String.charAt() to HBoundsCheck+HArrayGet to
allow the existing BCE to seamlessly work for strings.
Use HArrayLength+HEqual for String.isEmpty().
We previously relied on inlining but we now want to apply
the new intrinsics even when we do not inline, i.e. when
compiling debuggable (as is currently the case for boot
image) or when we hit inlining limits, i.e. depth, size,
or the number of accumulated dex registers.
Bug:
28330359
Change-Id: Iab9d2f6d2967bdd930a72eb461f27efe8f37c103
Vladimir Marko [Mon, 9 May 2016 19:23:34 +0000 (20:23 +0100)]
Attribute arena allocations previously marked as STL.
Bug:
28603175
Change-Id: I488e39b23afb86f3ff5a2df16d2df59eb3adaa0f
Vladimir Marko [Mon, 9 May 2016 16:58:28 +0000 (16:58 +0000)]
Merge "Fix ProtoId ordering check in DexFileVerifier."
Alex Light [Mon, 9 May 2016 16:36:25 +0000 (16:36 +0000)]
Merge "Make run-test default to optimizing compiler."
Vladimir Marko [Mon, 9 May 2016 14:59:20 +0000 (14:59 +0000)]
Merge "Improve String.indexOf() intrinsics."
Nicolas Geoffray [Mon, 9 May 2016 08:48:28 +0000 (08:48 +0000)]
Merge "Revert "Remove double unloading hack""
Nicolas Geoffray [Mon, 9 May 2016 08:48:08 +0000 (08:48 +0000)]
Revert "Remove double unloading hack"
Needed after dlclose revert.
This reverts commit
b408e583385dbf256514885e1671db1b2f633f58.
Change-Id: I0a83af2462f5a51b12d6ee97d70f62b44e487dd5
Nicolas Geoffray [Mon, 9 May 2016 08:35:46 +0000 (08:35 +0000)]
Merge "Revert "Revert "Revert "(dl)Close native libraries on unload""""
Nicolas Geoffray [Mon, 9 May 2016 08:33:13 +0000 (08:33 +0000)]
Revert "Revert "Revert "(dl)Close native libraries on unload"""
Still flakes on our tests.
This reverts commit
727d6dff8fce26f7f3a252177cc730fbfcbc52ee.
Change-Id: If14076ba9fe91934294c24a23f53d55d88d76fb7
Treehugger Robot [Sat, 7 May 2016 01:45:51 +0000 (01:45 +0000)]
Merge "Fix test for verification of clinit method"
Alex Light [Sat, 7 May 2016 00:36:36 +0000 (17:36 -0700)]
Fix test for verification of clinit method
Bug:
28605638
Change-Id: Idbf2d59c20b7dda1efb9aa61bce2cefbe2c0040a
Alex Light [Fri, 6 May 2016 21:33:46 +0000 (21:33 +0000)]
Merge "Make <clinit> verification stronger for v37+."
Alex Light [Fri, 6 May 2016 17:39:06 +0000 (10:39 -0700)]
Make <clinit> verification stronger for v37+.
Preserve the verification behavior of M for v35 dex files. v37+ get
stronger behavior
Bug:
28605638
Change-Id: If1ff4abcc61e0945f924fe4e10e173c03b4cd1a9
Dimitry Ivanov [Fri, 6 May 2016 19:44:15 +0000 (19:44 +0000)]
Merge "Fix libart tests on target"
Dimitry Ivanov [Fri, 6 May 2016 00:24:28 +0000 (17:24 -0700)]
Fix libart tests on target
1. Add libart/d.so to the list of additional public libraries
2. Fix java.library.path to include /system/lib(64)? for tests
run by dalvikvm
Bug: http://b/
28449304
Change-Id: I11f2dc22e445389160d6f7ed6743bb9664cf3745
Vladimir Marko [Fri, 6 May 2016 14:52:12 +0000 (15:52 +0100)]
Improve String.indexOf() intrinsics.
If the code point input is a char, we don't need the slow
path. Also improve the slow-path check (if we do need it)
on arm and arm64 to avoid loading 0xffff into a register.
Bug:
28330359
Change-Id: Ie6514c16126717bb0b11e3c7ab2b60eaa70fed4c
Vladimir Marko [Fri, 6 May 2016 14:46:47 +0000 (14:46 +0000)]
Merge "Optimizing: LoadString may not have any side effects."
David Brazdil [Fri, 6 May 2016 13:45:50 +0000 (13:45 +0000)]
Merge "ART: Fix dominance for irreducible loops"
Aart Bik [Tue, 5 Apr 2016 00:28:59 +0000 (17:28 -0700)]
Workaround invokesuper underspecified behavior.
The verifier allows invokesuper on a class unrelated
to the referring class. However, the runtime uses the vtable of
the super class of the referring class to lookup the ArtMethod.
Since the receiver has no relation to the referring class, this lead
to either jumping to a wrong method, or "luckily" throw a
NoSuchMethodError if the vtable index is out of bounds of the super
class of the referring class.
This changes the runtime behavior to always throw NoSuchMethodError
when hitting such invokesuper.
Also, we make the verifier consistent with the runtime by treating
such calls unresolved.
bug=
27627004
Change-Id: I68486501a9625f91679078c5a980b39974ddbf1c
David Brazdil [Fri, 6 May 2016 11:46:21 +0000 (12:46 +0100)]
ART: Fix dominance for irreducible loops
Computation of dominance was broken in the presence of irreducible
loops because the algorithm assumed that back edges are always
dominated by their respective headers and a fix-point iteration is
therefore unnecessary.
This is not true for irreducible loops, forcing us to revisit their
loop headers and all dependent blocks. This patch adds a fix-point
iteration if a back edge not dominated by its header is found.
Bug:
28611485
Change-Id: If84044e49d5b9c682949648033d2861628d7fe05
David Brazdil [Fri, 6 May 2016 10:47:18 +0000 (10:47 +0000)]
Merge "Stop populating irreducible loop at header"
Nicolas Geoffray [Fri, 6 May 2016 09:10:16 +0000 (09:10 +0000)]
Merge "Fix test with libarttest.so."
Nicolas Geoffray [Fri, 6 May 2016 09:08:36 +0000 (10:08 +0100)]
Fix test with libarttest.so.
We used to always skip it as kIsDebugBuild was true for
libarttest.so and libarttestd.so.
Change-Id: I1a5efbba8c2f9d63af824ed727154794aaea8d29
Vladimir Marko [Fri, 6 May 2016 07:58:53 +0000 (07:58 +0000)]
Merge "Fix index checks for error strings in DexFileVerifier."
David Sehr [Fri, 6 May 2016 04:56:05 +0000 (04:56 +0000)]
Merge "Add braces per the coding convention"
Mathieu Chartier [Fri, 6 May 2016 02:59:01 +0000 (02:59 +0000)]
Merge "Remove double unloading hack"
Mathieu Chartier [Fri, 6 May 2016 02:55:03 +0000 (19:55 -0700)]
Remove double unloading hack
No longer required since we unload native libraries.
Bug:
28406866
Change-Id: I9ae39b4f2ef0bf6d70c5b7df3e275d36b01ca472
David Sehr [Thu, 5 May 2016 20:39:43 +0000 (13:39 -0700)]
Add braces per the coding convention
Bug:
28599906
Change-Id: Ie2cb4f6865b7756ceaf65c400a4090fc9423232a
(cherry picked from commit
64b0f0bf5b03fc53282f61c1d2d2dc6b8c7e7a3e)
Mathieu Chartier [Fri, 6 May 2016 00:18:13 +0000 (00:18 +0000)]
Merge "Fix libarttest to be non debug"
Mathieu Chartier [Thu, 5 May 2016 22:31:12 +0000 (15:31 -0700)]
Fix libarttest to be non debug
Previously both libarttest and libarttestd had debug enabled. This
made it hard to know which one was loaded (couldn't look at
kIsDebugBuild).
Fixes test 136 with ART_TEST_RUN_TEST_NDEBUG configuration.
Bug:
28406866
Change-Id: I92983f71374b211f96f5b346fec326ea8543f876
Alex Light [Thu, 5 May 2016 22:45:29 +0000 (15:45 -0700)]
Make run-test default to optimizing compiler.
Quick compiler is dead.
Change-Id: I88d83a9935a81a38ca2a02bd3168c35b81a791da
David Sehr [Thu, 5 May 2016 22:35:55 +0000 (22:35 +0000)]
Merge "Limit profman log spam with time threshold"
Mingyao Yang [Thu, 5 May 2016 20:52:29 +0000 (20:52 +0000)]
Merge "Fix assert failure in interpreter after deoptimization."
David Sehr [Thu, 5 May 2016 16:02:38 +0000 (09:02 -0700)]
Limit profman log spam with time threshold
Bug:
28599906
Change-Id: Ibe1001da94c7916761c8f3b4b5dbacd8cf3809a7
(cherry picked from commit
305ed710a8ea732e59bdc782121dea3389adc357)
Mathieu Chartier [Thu, 5 May 2016 18:56:14 +0000 (18:56 +0000)]
Merge changes I8fab78bc,I8aae0d75
* changes:
Change test 136 to use dlopen
Revert "Revert "(dl)Close native libraries on unload""
Mingyao Yang [Thu, 28 Apr 2016 23:23:01 +0000 (16:23 -0700)]
Fix assert failure in interpreter after deoptimization.
There is code that does
new String(chararr, 0, chararr_count);
which under debuggable turns into a call into pNewEmptyString() plus a
call into pNewStringFromChars_CII().
Even though we currently don't patch return pc in a runtime method,
calling into pNewEmptyString() is special since it's hacked such
that it's acting as if the caller calls into the java method
StringFactory.newEmptyString() directly. So deoptimization can now
happen at the NewEmptyString site and the assert is triggered since
it's a new instance instead of an invoke instruction.
The fix relaxes the assert to allow the special case.
Bug:
28555675
Change-Id: Idbb159b5aa450df2344cd93ae74fef5f55bdc534
Mathieu Chartier [Thu, 5 May 2016 18:09:58 +0000 (11:09 -0700)]
Change test 136 to use dlopen
dlopen self to prevent the native libary being closed from
DestroyJavaVM. We need this since it is the library currently
executing code.
Bug:
28406866
Change-Id: I8fab78bc7c27f5c03a6670d20d5cf8e44295d5e2
Mathieu Chartier [Thu, 5 May 2016 18:09:37 +0000 (11:09 -0700)]
Revert "Revert "(dl)Close native libraries on unload""
This reverts commit
0cf0dbd5f8ae5a1ccd51b45c4d692eedb3ff8a2b.
David Brazdil [Thu, 5 May 2016 10:27:03 +0000 (11:27 +0100)]
Stop populating irreducible loop at header
Recent CL modified the (previously exponential) algorithm for
populating irreducible loops so as to not visit blocks multiple times.
However, the new condition for an early exit did not take into account
that it is not necessary to visit predecessors of the loop header.
The algorithm remains correct but does unnecessary work.
Bug:
27856014
Change-Id: If72f8be82e79838f0dd9678082a3bbaabb51e43b
Richard Uhler [Thu, 5 May 2016 15:26:21 +0000 (15:26 +0000)]
Merge "Remove -XOatFileManagerCompilerFilter argument."
Vladimir Marko [Tue, 3 May 2016 16:17:50 +0000 (17:17 +0100)]
Fix ProtoId ordering check in DexFileVerifier.
The code previously checked for kNoDexIndex16 as the type
list terminator. This is incorrect as we should not actually
see the kNoDexIndex16 in type lists in supported dex files.
To make sure that we don't see kNoDexIndex16, check the size
of the arrays with documented limits, i.e. type-ids and
proto-ids, see dex_file.h. In the ProtoId ordering check,
DCHECK() that we don't encounter kNoDexIndex16 and verify
that the previous list is not longer if the current list's
elements match.
Bug:
28580925
Change-Id: I7b17ce54b0047d97e13be88377676b1b7c713ae1
Vladimir Marko [Tue, 3 May 2016 15:31:52 +0000 (16:31 +0100)]
Fix index checks for error strings in DexFileVerifier.
Bug:
28552165
Change-Id: I5b352536b746ec5bd48daa5c693d62d9fbc0b21c
Roland Levillain [Thu, 5 May 2016 10:54:34 +0000 (10:54 +0000)]
Merge "Patch for compiling art to run on linux target"
Nicolas Geoffray [Wed, 4 May 2016 13:00:12 +0000 (14:00 +0100)]
Relax the DCHECK in load store elimination.
The DCHECK was too strong, as we could come from a field or array
get on null, instead of null directly.
bug:
27831001
Change-Id: I24b6a0b3c92467aff81aaeaa22402743e9014d97
Nicolas Geoffray [Thu, 5 May 2016 08:02:38 +0000 (08:02 +0000)]
Merge "Revert "(dl)Close native libraries on unload""
Nicolas Geoffray [Thu, 5 May 2016 08:02:17 +0000 (08:02 +0000)]
Revert "(dl)Close native libraries on unload"
Failures on test 136.
Bug: http://b/
28406866
This reverts commit
2eb3ba9fcc120b74bdf9f61342347379223973f3.
Change-Id: Ic70aceb0831256b1e12730e5508e86e6fed8cb42
Treehugger Robot [Wed, 4 May 2016 23:38:54 +0000 (23:38 +0000)]
Merge "(dl)Close native libraries on unload"
Aart Bik [Wed, 4 May 2016 22:55:43 +0000 (22:55 +0000)]
Merge "Exploit NE/EQ tests on array length in BCE."
Dimitry Ivanov [Tue, 3 May 2016 22:05:41 +0000 (15:05 -0700)]
(dl)Close native libraries on unload
Dlclose native libraries when VM unloads a classloader. This
change is made to avoid leakage of adress space and RSS for
mapped but unreachable native libraries.
Bug: http://b/
28406866
Change-Id: Iccaa87210908872c2013506d8a310955c1e3d888
(cherry picked from commit
35f01195c4cf6e3c6fbb8b51f5a41b26132b4bdd)
Aart Bik [Wed, 4 May 2016 21:00:55 +0000 (14:00 -0700)]
Exploit NE/EQ tests on array length in BCE.
BUG=
28585870
Change-Id: I382ffaf80dfb861f66eb0bfb6508e7d946a07e14
Treehugger Robot [Wed, 4 May 2016 17:40:25 +0000 (17:40 +0000)]
Merge "Update comment in class_linker.cc"
Alex Light [Wed, 4 May 2016 16:23:09 +0000 (09:23 -0700)]
Update comment in class_linker.cc
Be more clear about what is meant by 'corruption'.
Change-Id: I54f11c8c1ff11328f2a63382fc570b213a4d3a3e
Treehugger Robot [Wed, 4 May 2016 12:59:07 +0000 (12:59 +0000)]
Merge "Do not look at dead phis during SsaRedundantPhiElimination."
Nicolas Geoffray [Wed, 4 May 2016 11:05:56 +0000 (12:05 +0100)]
Do not look at dead phis during SsaRedundantPhiElimination.
Otherwise, we may replace a dead loop phi with its incoming input.
This broke an assumption during liveness analysis in the presence
of irreducible loops.
bug:
28256552
Change-Id: Ia9e82026555e6b7f6a2cd37df4b765cd3684079d
Treehugger Robot [Wed, 4 May 2016 10:08:07 +0000 (10:08 +0000)]
Merge "Check if a class is verified before visiting profiling info."
Vladimir Marko [Wed, 4 May 2016 09:34:37 +0000 (09:34 +0000)]
Merge "ARM64: Add new String.compareTo intrinsic."
Nicolas Geoffray [Wed, 4 May 2016 08:51:24 +0000 (09:51 +0100)]
Check if a class is verified before visiting profiling info.
The call to IsNative expects non-retired classes, and we know
we don't have any profiling info for non-verified classes anyway.
bug:
28542527
Change-Id: I5bb9528a8d357bc8940c2190e2cde33a13df3e8d
Nicolas Geoffray [Wed, 4 May 2016 08:42:38 +0000 (08:42 +0000)]
Merge "Put a handle on the String object."
Nicolas Geoffray [Wed, 4 May 2016 08:01:52 +0000 (08:01 +0000)]
Merge "Blacklist test."
Nicolas Geoffray [Wed, 4 May 2016 08:00:56 +0000 (09:00 +0100)]
Blacklist test.
bug:
28574453
Change-Id: I8afd2b824d302114b259e45164ddee3519c10a6e
Treehugger Robot [Wed, 4 May 2016 03:13:52 +0000 (03:13 +0000)]
Merge "ART: Dump more OatDexFile data in oatdump"
Andreas Gampe [Sat, 30 Apr 2016 00:52:07 +0000 (17:52 -0700)]
ART: Dump more OatDexFile data in oatdump
Add some stats about the enclosed dex file and type table when
dumping an oat file.
Bug:
28251566
(cherry picked from commit
00bb716039d23e02797a3858fcdb0380a9bb8855)
Change-Id: I80c14e85d68cd1e3e4c64b7b9d86059d5ac8a6ad
Treehugger Robot [Wed, 4 May 2016 00:27:01 +0000 (00:27 +0000)]
Merge "Make test for app-image loading."
Alex Light [Tue, 3 May 2016 22:01:06 +0000 (15:01 -0700)]
Make test for app-image loading.
Bug:
26882072
Change-Id: I40a45e7944aec3a5ee28ef3d47e9881f61a7c9e6
Aart Bik [Tue, 3 May 2016 20:08:10 +0000 (20:08 +0000)]
Merge "ARM(64): Implement the isInfinite intrinsics"
Alex Light [Tue, 3 May 2016 20:05:36 +0000 (20:05 +0000)]
Merge "Fix vtable corruption."
Richard Uhler [Wed, 13 Apr 2016 18:03:46 +0000 (11:03 -0700)]
Remove -XOatFileManagerCompilerFilter argument.
Instead use the value of '-Xcompiler-option --compiler-filter=XXX' for
the target compiler filter to use to determine if the runtime should
try to invoke dex2oat when oat files are loaded.
Bug:
27641809
Change-Id: I1856e0e37df91835b81105567c70d8a285a88f62
Alex Light [Tue, 3 May 2016 01:51:34 +0000 (18:51 -0700)]
Fix vtable corruption.
Due to failing to keep track of superclass implementations of
interface methods we could end up in situations where methods were
placed onto a class's vtable multiple times. This could cause virtual
and interface dispatches on subclasses to fail by causing corruption
of the subclass's vtable and iftable.
Bug:
28333278
Change-Id: I37d9740ca912daf37cdf9ff82697bbc5db46177a
Nicolas Geoffray [Tue, 3 May 2016 13:04:02 +0000 (14:04 +0100)]
Put a handle on the String object.
Otherwise, a GC could occur in the loop below, and the String
be moved (note that there was already one for the Class object to
protect for that same problem).
bug:
27561834
Change-Id: I5ad0e0cac148bc6e028d05eff67f18932ec46ea8
Scott Wakeling [Thu, 21 Apr 2016 10:13:45 +0000 (11:13 +0100)]
ARM64: Add new String.compareTo intrinsic.
Benchmarked on Nexus6P big, little, and all cores. The new intrinsic
is faster than pStringCompareTo for compare lengths on [1,512], so the
runtime call is no longer needed.
Change-Id: If94bfe24d9bf4dddcca648cc0b563709fc407b34
Dimitry Ivanov [Mon, 2 May 2016 21:31:49 +0000 (21:31 +0000)]
Merge changes from topic 'reset-native-loader'
* changes:
Fix check_jni_compiler tests
Revert "Disable tests after latest nativeloader changes."
Reset NativeLoader on DestroyJavaVM
Dimitry Ivanov [Fri, 29 Apr 2016 18:14:25 +0000 (11:14 -0700)]
Fix check_jni_compiler tests
Test needs to initialize nativeloader on runtime->Start(),
and reset it when runtime is stopped.
Bug: http://b/
28449304
Change-Id: I0ba946fe5fc2817dff73154e3191444106dfcb08
Dimitry Ivanov [Mon, 2 May 2016 20:39:39 +0000 (13:39 -0700)]
Revert "Disable tests after latest nativeloader changes."
This reverts commit
7032e780836a464faf5901d9d8d7fedb97f3a739.
Bug: http://b/
28449304
Dimitry Ivanov [Fri, 29 Apr 2016 23:02:38 +0000 (16:02 -0700)]
Reset NativeLoader on DestroyJavaVM
Native loader keeps vector of weak references
to classloader. ResetNativeLoader instructs
it to clear this vector once JavaVM is
destroyed.
Bug: http://b/
28453840
Change-Id: I45e38c45268a741d86ec686266b13fde7d5fb9a2
(cherry picked from commit
9e83422b27faa3f249ec32ad2cbaa34530bd3df1)
Mathieu Chartier [Mon, 2 May 2016 16:30:19 +0000 (16:30 +0000)]
Merge "Fix profile saver to use base dex location"
Mathieu Chartier [Fri, 29 Apr 2016 19:03:56 +0000 (12:03 -0700)]
Fix profile saver to use base dex location
Previously we were using the dex location. This only matches the
base location for the main dex file, and resulted in only the
main dex file to have classes recorded.
Bug:
28463739
(cherry picked from commit
9275af6ec0d71d1a13a97a1d292806b73f755717)
Change-Id: Ie822c2a38fd1316c3ba604b8625c48388f6a8c07
Andreas Gampe [Sat, 30 Apr 2016 01:34:33 +0000 (01:34 +0000)]
Merge "ART: Disambiguate access-checks mode from lock-counting"
Andreas Gampe [Thu, 28 Apr 2016 21:56:54 +0000 (14:56 -0700)]
ART: Disambiguate access-checks mode from lock-counting
Lock-counting (when structural locking verification failed) is a
special sub-mode of access-checks and must be disambiguated, because
we currently use access-checks mode class-wide when at least one
method soft-fails, but do not stop the compiler/JIT to compile
the "working" methods. So we may end up in the access-checks
interpreter for a working method through deopt without knowing
which locks are already held.
Bug:
28351535
(cherry picked from commit
f517e283d477dd2ae229ee3f054120c6953895db)
Change-Id: I083032f064d88df8f8f0611ad8b57d1b39cd09fb