OSDN Git Service
Mathieu Chartier [Thu, 7 Apr 2016 20:19:19 +0000 (13:19 -0700)]
Store precice set of which constructors require barriers
Fixes bugs where things in the boot image might not have been
calculated even though resolved_clases was true. This only occured
for app and test compiles though.
Fixes test 476-checker-ctor-memory-barrier which was failing due to
inlining something in the boot class path and getting a unexpected
barrier since the barrier defaults to enabled.
No measurable increase in RAM usage.
(cherry picked from commit
c4ae916def97b9e1ef6df35c8fabb3921a0e380c)
Bug:
28005874
Change-Id: I4a417819aa129c95f4a83c38df1a66eb77824ea9
Jeff Hao [Fri, 8 Apr 2016 02:46:31 +0000 (19:46 -0700)]
Fix combined checksum calculation to use isa.
Bug:
28054110
Change-Id: Ifcd1b0c4549a22bf4181f8acad222da05ac9f1ce
Jeff Hao [Thu, 7 Apr 2016 22:40:54 +0000 (15:40 -0700)]
Combine checksum of all boot images.
Allows a change to be detected in more than just the first image.
Combines checksums of all boot images using xor. A better hash is left
as TODO.
Bug:
28054110
Change-Id: Ifbdd6cbb0104c95e8926ba4f8a207cc72dbb7f79
Jeff Hao [Tue, 5 Apr 2016 02:50:14 +0000 (19:50 -0700)]
Remove AnnotationAccess and its remaining uses.
Art side of this change. Adds a test to ensure annotations not marked
for runtime retention can't be seen at runtime.
Bug:
27912552
(cherry picked from commit
1133db79350060158f99210c56f111c6dad43563)
Change-Id: I090a90bc82fc9b5e51aba02dcb3d8cccb6fb0f90
Mathieu Chartier [Wed, 6 Apr 2016 22:45:41 +0000 (22:45 +0000)]
Merge "Fix regression in ModUnionTable RAM usage" into nyc-dev
Mathieu Chartier [Wed, 6 Apr 2016 22:45:13 +0000 (22:45 +0000)]
Merge "Check if we require barrier if we did not resolve classes" into nyc-dev
Mathieu Chartier [Wed, 6 Apr 2016 22:27:19 +0000 (15:27 -0700)]
Fix regression in ModUnionTable RAM usage
We forgot to check if a reference changed before assigning it back,
this caused extra dirty pages in the image.
BusinessCard .art PSS
Before: 1678 KB
After: 991 KB
System wide .art PSS goes down ~20MB on my shamu.
Bug:
27906566
Change-Id: I6e398da79f0838960e4cb6650b24b1e6f60784ae
Mathieu Chartier [Wed, 6 Apr 2016 21:41:23 +0000 (14:41 -0700)]
Check if we require barrier if we did not resolve classes
Check fields instead of just always inserting the return void
barrier.
Bug:
28005874
Change-Id: I62cc1c3979304642109961fcf2607a7df065a162
Andreas Gampe [Wed, 6 Apr 2016 19:57:20 +0000 (19:57 +0000)]
Merge "ART: Add cutout for Unsafe.putObjectVolatile" into nyc-dev
Andreas Gampe [Wed, 6 Apr 2016 19:57:10 +0000 (19:57 +0000)]
Merge "ART: Add integer & long parsing cutout to unstarted runtime" into nyc-dev
Andreas Gampe [Wed, 6 Apr 2016 19:56:56 +0000 (19:56 +0000)]
Merge "ART: Add getDeclaredConstructor cutout for unstarted runtime" into nyc-dev
Mathieu Chartier [Wed, 6 Apr 2016 18:42:12 +0000 (18:42 +0000)]
Merge "Shard classloader classes lock" into nyc-dev
Mathieu Chartier [Wed, 6 Apr 2016 18:32:33 +0000 (18:32 +0000)]
Merge "Change RequiresConstructorBarrier default to yes" into nyc-dev
David Srbecky [Wed, 6 Apr 2016 18:27:31 +0000 (18:27 +0000)]
Merge "Fix thumb bit in the oatdump symbolizer." into nyc-dev
Mathieu Chartier [Wed, 6 Apr 2016 17:47:45 +0000 (10:47 -0700)]
Change RequiresConstructorBarrier default to yes
Previously it defaulted to false, this caused incorrect dex2dex if
the resolution pass was not run.
TODO: Re-enable the no barrier for no resolution case to improve
interpreter performance slightly.
Bug:
28005874
Change-Id: I6b2e5078e5a0d76317e5486cd5e4f04d995e7b56
Yi Kong [Wed, 6 Apr 2016 17:09:34 +0000 (17:09 +0000)]
Merge "Fix and re-enable compiler_driver_test" into nyc-dev
Yi Kong [Mon, 4 Apr 2016 16:44:59 +0000 (17:44 +0100)]
Fix and re-enable compiler_driver_test
This reverts commit
6f58cb85328bed2f3ea246cce4080244544d7c2b.
The move to OpenJDK introduces new dependencies to compile these
methods, however we don't actually need them to run this test. Remove
them here to enable the test again.
Bug:
25836016
Change-Id: I75b12c48941fca6646142004accae8364e8c6dbc
(cherry picked from commit
5dcf19d402b4ea7023ced2afa8d615576fe2784f)
Mathieu Chartier [Mon, 4 Apr 2016 23:49:44 +0000 (16:49 -0700)]
ART: Handle OOM in stack overflow
When creating a stack overflow error, we must not allocate a
new out-of-memory error. Running its constructor will lead to
a nested exception.
Bug:
27663199
(cherry picked from commit
e8f3f03ce142d9cdb10a1bb6bbbb428d0e8b672f)
Change-Id: I96b9682c3eb6ad71140a062cb357d4334c7fdaa5
Mathieu Chartier [Wed, 6 Apr 2016 16:52:25 +0000 (16:52 +0000)]
Merge "Change hash set to use noexcept" into nyc-dev
Andreas Gampe [Wed, 6 Apr 2016 04:12:51 +0000 (21:12 -0700)]
ART: Add cutout for Unsafe.putObjectVolatile
Add an unstarted-runtime cutout for putObjectVolatile.
Allows to compile-time initialize:
* android.content.res.Configuration
* android.icu.text.PluralRules$SimpleTokenizer
* android.icu.text.UnicodeSet
* android.icu.util.VersionInfo
* android.util.LocaleList
May allow follow-up changes to compile-time initialize
more ICU classes.
Bug:
27265238
Change-Id: I775a57c9f15aa8f42a4dffbd1dd40c641c30f645
Andreas Gampe [Wed, 6 Apr 2016 03:14:30 +0000 (20:14 -0700)]
ART: Add integer & long parsing cutout to unstarted runtime
Add a cutout for Integer.parseInt and Long.parseLong. Only handle
(some) successful cases, and abort the transaction in the rest.
Add tests.
Allows to compile-time initialize:
* com.android.org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers
* com.android.org.bouncycastle.asn1.x509.X509ObjectIdentifiers
* sun.security.x509.InhibitAnyPolicyExtension
Bug:
27265238
Change-Id: I14c0836fd9ec7c9bf49d8186ff14a3c6830ff711
Mathieu Chartier [Wed, 6 Apr 2016 02:13:37 +0000 (19:13 -0700)]
Change hash set to use noexcept
Otherwise it uses copy constructor instead of move constructor in
some cases (like std::vector).
Reduces shared dirty native by around 350k.
Bug:
27860101
Change-Id: I2ece57e81349316c2f8ba0a57bda6f342faf3f3b
Andreas Gampe [Wed, 6 Apr 2016 01:18:43 +0000 (18:18 -0700)]
ART: Add getDeclaredConstructor cutout for unstarted runtime
In the vein of getDeclaredMethod and getDeclaredField. Refactor
code from java_lang_Class to share code.
Allows to compile-time initialize:
* sun.security.x509.AVAKeyword
* sun.security.x509.X500Name
Bug:
27265238
Change-Id: I075c1b11f3408f5b31e4f84140a24fd8d3eaa17e
Mathieu Chartier [Tue, 5 Apr 2016 21:36:57 +0000 (14:36 -0700)]
Shard classloader classes lock
Used to guard adding and removing classes.
Previously we used the class linker classes lock, but this had
a deadlock issue since the reference processor may need to acquire
the lock to mark the classes of a class loader. Another thread could
be blocked trying to access weak globals while also holding the
class linker classes lock.
Bug:
27946564
Change-Id: If7c13e8775f0912e104d1382eacdba7e7edf6818
Andreas Gampe [Tue, 5 Apr 2016 23:02:11 +0000 (23:02 +0000)]
Merge "ART: Add arraycopy(byte) to unstarted runtime" into nyc-dev
Andreas Gampe [Tue, 5 Apr 2016 21:16:10 +0000 (14:16 -0700)]
ART: Add arraycopy(byte) to unstarted runtime
The byte-array version is now in use in libcore.
Allows to compile-time initialize:
* java.security.cert.X509CertSelector
* sun.security.pkcs.PKCS9Attribute
* sun.security.provider.certpath.AdaptableX509CertSelector
* sun.security.x509.AccessDescription
* sun.security.x509.AlgorithmId
* sun.security.x509.ExtendedKeyUsageExtension
* sun.security.x509.NetscapeCertTypeExtension
* sun.security.x509.OIDMap
* sun.security.x509.PKIXExtensions
Bug:
27265238
Change-Id: If6b680a455809152c9bd7a679a8ab430936c46a1
Andreas Gampe [Tue, 5 Apr 2016 21:03:35 +0000 (21:03 +0000)]
Merge "ART: Don't attempt write flock if not zygote" into nyc-dev
Alex Light [Thu, 31 Mar 2016 17:03:07 +0000 (10:03 -0700)]
Fix issued with non-public interface methods.
Some APK's ship with dex files containing non-public interface
methods. These would cause crashes on newer versions of ART due to
stricter verification of dex files. Make ART emit a warning but allow
this behavior.
Bug:
27928832
(cherry picked from commit
d7c10c237bf2631630fac7982c3f374b1a27ed01)
Change-Id: Ia3689ee091aa154fb5954b1f6dd50c489128acce
Andreas Gampe [Tue, 5 Apr 2016 17:26:42 +0000 (10:26 -0700)]
ART: Don't attempt write flock if not zygote
When loading an image, don't attempt a RDWR flock if the process
is not the zygote. The lock will be rejected as the process does
not have permission to write the file.
Bug:
28011897
Change-Id: I567934c4e9a9a13e9131711240e9ecfdd58b69f7
David Srbecky [Thu, 31 Mar 2016 17:17:59 +0000 (18:17 +0100)]
Fix thumb bit in the oatdump symbolizer.
MethodDebugInfo expects code address without the bit set.
Therefore we need to clear it before passing it to the DWARF writer.
(cherry picked from commit
a1b4c5f562c67398e14756bd127ed806937ff35a)
Bug:
28017942
Change-Id: I37586b19f2a3fc95107abb6204a34e95a3816936
Oleksiy Vyalov [Tue, 5 Apr 2016 17:27:22 +0000 (17:27 +0000)]
Merge "ART: Return native debuggable status of the app." into nyc-dev
Narayan Kamath [Tue, 5 Apr 2016 17:21:00 +0000 (17:21 +0000)]
Merge changes I56b0a4dd,I85aa52cc into nyc-dev
* changes:
unstarted_runtime: Update references to decimal format classes.
unstarted_runtime: Add additional cutouts
Oleksiy Vyalov [Thu, 31 Mar 2016 03:27:00 +0000 (20:27 -0700)]
ART: Return native debuggable status of the app.
Bug:
27942453
Change-Id: I40820cfb1416d468331f9b6583f9e3809670f428
Andreas Gampe [Mon, 4 Apr 2016 21:22:13 +0000 (21:22 +0000)]
Merge "ART: Dump less maps" into nyc-dev
Mathieu Chartier [Sat, 2 Apr 2016 00:33:31 +0000 (17:33 -0700)]
Mark array classes as verification attempted
We now initialize all array classes in the compiler driver. This in
turn will ensure they are marked verified in the image. This
prevents dirty pages in the image since we would otherwise set the
flags in the zygote.
On BusinessCard:
Reduces shared dirty from 636k -> 432k for boot.art, and dirty pages
from 183 to 132.
Bug:
27906566
Change-Id: I99fcaffe2cb7f0235a1a0845bebc44e2dc94cbf0
Andreas Gampe [Sat, 2 Apr 2016 00:20:49 +0000 (17:20 -0700)]
ART: Dump less maps
Security has been tightened, so there are situations where we can't
load our files, and produce "log spam."
Bug:
27925454
Change-Id: Ia8c76184ea5087d625cf52d4459f8a557eebfafe
Mathieu Chartier [Fri, 1 Apr 2016 23:09:19 +0000 (23:09 +0000)]
Merge "Dump different fields in imgdiag" into nyc-dev
Mathieu Chartier [Fri, 1 Apr 2016 20:56:41 +0000 (13:56 -0700)]
Dump different fields in imgdiag
Dump which fields are different, also print field values.
Bug:
27906566
Change-Id: Ia7b49981b59ccf058f098edcff4c39c10448b89e
Alex Light [Fri, 1 Apr 2016 21:36:57 +0000 (21:36 +0000)]
Merge changes from topic 'bad-classpath' into nyc-dev
* changes:
Make test 146 run with secondary dex file in classpath.
Make InvokeInterfaceTrampoline check methods
Alex Light [Fri, 1 Apr 2016 18:40:16 +0000 (11:40 -0700)]
Make test 146 run with secondary dex file in classpath.
Bug:
27931085
(cherry picked from commit
24a4fdf9aadd37c44438841e661dccfb24eeb8c1)
Change-Id: Ie0b15d5fc94c2bb6d3707ecf985f6f72110e4d68
Andreas Gampe [Fri, 1 Apr 2016 18:41:13 +0000 (18:41 +0000)]
Merge "ART: Better support for arraycopy in unstarted runtime" into nyc-dev
Andreas Gampe [Thu, 31 Mar 2016 20:30:53 +0000 (13:30 -0700)]
ART: Better support for arraycopy in unstarted runtime
Extend the System.arraycopy() cutout in the unstarted runtime
to support arrays with differing component types.
Add tests.
Bug:
27805718
(cherry picked from commit
85a098af5fc8d2dd0e39d61c9f93fc6257d631c5)
Change-Id: Iaacd95a372e9bfa26e9055a06b0d8f0335b8d6d1
Alex Light [Thu, 31 Mar 2016 21:34:33 +0000 (14:34 -0700)]
Make InvokeInterfaceTrampoline check methods
InvokeInterfaceTrampoline was causing problems by looking into the
ImtConflictTable of non-imt-conflict-methods. This makes it check for
that before doing so.
Bug:
27931085
(cherry picked from commit
9fc547ac3936fe88e9592f4a47afd7b134cb607c)
Change-Id: I993178a371f8f46535a752e5c4d46d74777cefaf
Richard Uhler [Fri, 1 Apr 2016 17:26:18 +0000 (17:26 +0000)]
Merge "Refine OatFileAssistant.MakeUpToDate failure result." into nyc-dev
Narayan Kamath [Wed, 30 Mar 2016 14:41:54 +0000 (15:41 +0100)]
unstarted_runtime: Update references to decimal format classes.
We had a few special cases for thread local buffers and instances
created by our formatters / parsers. Update them to point to the
OpenJdk equivalents of the same classes.
bug:
27265238
(cherry picked from commit
a1e93127fa078e589d186ffb132d2ef71c9ab5d3)
Change-Id: I56b0a4dd19762665393a205c1f6f0e549451f0f4
Narayan Kamath [Wed, 30 Mar 2016 12:11:18 +0000 (13:11 +0100)]
unstarted_runtime: Add additional cutouts
These allow us to initialize a further 90 classes. getIntVolatile
was used by the static initializer for ThreadLocal, which is used
quite frequently. This class was compile time initializable for M.
java.lang.System.getSecurityManager : 5 classes
sun.misc.Unsafe.getIntVolatile : 85 classes
bug:
27265238
(cherry picked from commit
34a316fa8b08d7b818c73ba8fd606a92b1e632ad)
Change-Id: I85aa52cc9a67123e2ac2feec48a96eb795427adf
Andreas Gampe [Fri, 1 Apr 2016 02:58:09 +0000 (02:58 +0000)]
Merge "Revert "ART: Resolve all classes even when verify-profile"" into nyc-dev
Andreas Gampe [Fri, 1 Apr 2016 01:08:44 +0000 (01:08 +0000)]
Merge "ART: Do not run verification under lock" into nyc-dev
Andreas Gampe [Fri, 1 Apr 2016 00:49:34 +0000 (17:49 -0700)]
Revert "ART: Resolve all classes even when verify-profile"
This reverts commit
82e8c1ff6d58e98a52725eeefc6c2407470239d2.
The deadlock is fixed by
884f3b83ed6b2a378535ac6b2be57d6b2e22de09.
Bug:
27924355
Andreas Gampe [Thu, 31 Mar 2016 02:52:58 +0000 (19:52 -0700)]
ART: Do not run verification under lock
Do not hold the object lock for the duration of the verification.
Instead, use the kStatusVerifying indicator to wait, similar to
resolution.
Bug:
27924355
(cherry picked from commit
884f3b83ed6b2a378535ac6b2be57d6b2e22de09)
Change-Id: Ie831f47dd830756a1b7002ca9c792f8ff67570dc
Richard Uhler [Wed, 30 Mar 2016 19:17:55 +0000 (12:17 -0700)]
Refine OatFileAssistant.MakeUpToDate failure result.
Avoid misleading log messages if MakeUpToDate fails because we decided
not to compile dex code.
Bug:
27641809
(cherry picked from commit
1e860619cdcc9c0b6a202a247c50cf7633ac7b74)
Change-Id: Iab6f8ff2756393bfe3a7be4643e908be648bd10d
Mathieu Chartier [Thu, 31 Mar 2016 22:05:45 +0000 (15:05 -0700)]
Disable checks for b/
27493510
Disabled for performance now that the bug is fixed. Still enabled
for debug builds.
Bug:
27493510
Change-Id: I4838b63d79163b97b47e13b201349a72c352ff38
Mathieu Chartier [Thu, 31 Mar 2016 18:07:09 +0000 (11:07 -0700)]
Add way to disable resolving for stack walk
Only occurs for walking the inlined frames case.
Bug:
27857910
Change-Id: Idb90254879ebae4c756ee1a3d235999ae589a2a8
Mathieu Chartier [Thu, 31 Mar 2016 19:59:38 +0000 (19:59 +0000)]
Merge "Obtain stack trace outside of critical section" into nyc-dev
Hans Boehm [Thu, 31 Mar 2016 19:25:13 +0000 (19:25 +0000)]
Merge "Only log excessive timeouts if those appear accidental" into nyc-dev
Mathieu Chartier [Tue, 29 Mar 2016 21:02:55 +0000 (14:02 -0700)]
Obtain stack trace outside of critical section
Fixes deadlock if the stack walk does allocations, changed stack
trace format to prevent slowdown.
Added missing GetInterfaceMethodIfProxy to fix a crash in maps.
Bug:
27857910
Change-Id: Iba86b7390a87349c38785297ac76751417b0fc87
Hans Boehm [Mon, 28 Mar 2016 21:36:23 +0000 (14:36 -0700)]
Only log excessive timeouts if those appear accidental
Do not generate a log message even when timeout would cause us to wake
up past the end of Linux time, if the timeout specification looks like
it was meant to wait forever. Avoids log spam.
Bug:
27723547
Change-Id: I98d0fc1b1813a10ad906282957675b85bd933472
(cherry picked from commit
fe76a629e7f9932c8e6a476d25358445273d893d)
Andreas Gampe [Thu, 31 Mar 2016 00:19:48 +0000 (17:19 -0700)]
ART: Add support for DexFile compiler filter function
Add support for getting a non-profile-guided version of a given
compiler filter.
Bug:
27921071
Change-Id: I54735b61732e6a5c9dc62425d04bc740dd365083
Calin Juravle [Thu, 31 Mar 2016 15:57:42 +0000 (15:57 +0000)]
Merge "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""" into nyc-dev
Calin Juravle [Thu, 31 Mar 2016 14:29:54 +0000 (15:29 +0100)]
Fix profile save MaxBaxBackoff time
Bug:
27914456
Bug:
27937568
Change-Id: Icb1de7ff09ed4305dcd247d4653329b3cae0c05e
Calin Juravle [Thu, 31 Mar 2016 14:37:30 +0000 (15:37 +0100)]
Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
This reverts commit
4a8ac9cee4312ac910fabf31c64d28d4c8362836.
Bug:
27939339
Calin Juravle [Thu, 31 Mar 2016 10:56:29 +0000 (11:56 +0100)]
Merge remote-tracking branch 'goog/master' into nyc-dev
Bug:
27616343
Bug:
27851582
Bug:
27693977
Bug:
27690481
Bug:
27799205
Bug:
27683071
Bug:
27625564
Change-Id: I261eb9f3e8144e85233dc4313e674e75f812003c
Serdjuk, Nikolay Y [Thu, 31 Mar 2016 10:18:47 +0000 (10:18 +0000)]
Merge "ART: Save or erase the file even if I/O failed" am:
6656f30 am:
4f4fc1a
am:
09c508b
* commit '
09c508be59e56e040288a4a76b8a14e1f1cd8164':
ART: Save or erase the file even if I/O failed
Change-Id: Iddc6534cd50b9e6122ab4ea9141a205f3f809c7f
Serdjuk, Nikolay Y [Thu, 31 Mar 2016 10:15:46 +0000 (10:15 +0000)]
Merge "ART: Save or erase the file even if I/O failed" am:
6656f30
am:
4f4fc1a
* commit '
4f4fc1a69a24278009a91144d4a05997b02f3a4c':
ART: Save or erase the file even if I/O failed
Change-Id: I1d230538f5be74f9eefe38c8d52153e79c9163b3
Pavel Vyssotski [Thu, 31 Mar 2016 10:13:07 +0000 (10:13 +0000)]
Merge "ART: Fix TypeConversion from long const to float on x86_64" am:
922b88c am:
8584295
am:
c421203
* commit '
c421203f43a6379d6385f26baeaa23080233b4be':
ART: Fix TypeConversion from long const to float on x86_64
Change-Id: I79d66be9e1447dd4b3064ae6ff02f07279a154e6
Serdjuk, Nikolay Y [Thu, 31 Mar 2016 10:13:07 +0000 (10:13 +0000)]
Merge "ART: Save or erase the file even if I/O failed"
am:
6656f30
* commit '
6656f30115c4a6a52ca01f46ca84df125179466a':
ART: Save or erase the file even if I/O failed
Change-Id: I0f4a5c3bf7b6a34a307a7eaf2fcf50c9c8c564f2
Pavel Vyssotski [Thu, 31 Mar 2016 10:10:25 +0000 (10:10 +0000)]
Merge "ART: Fix TypeConversion from long const to float on x86_64" am:
922b88c
am:
8584295
* commit '
858429596e53e1e60978b25274e6130eb81734aa':
ART: Fix TypeConversion from long const to float on x86_64
Change-Id: Ife107276244aa7cbc94f5ad40a51cf31446abc9c
Vladimir Marko [Thu, 31 Mar 2016 10:10:07 +0000 (10:10 +0000)]
Merge "ART: Save or erase the file even if I/O failed"
Pavel Vyssotski [Thu, 31 Mar 2016 10:07:45 +0000 (10:07 +0000)]
Merge "ART: Fix TypeConversion from long const to float on x86_64"
am:
922b88c
* commit '
922b88cd4203482b66ea4bee28e9921717ad2e6a':
ART: Fix TypeConversion from long const to float on x86_64
Change-Id: I6bab607cad3e1d2bc81977c363531d942edbe4cd
David Brazdil [Thu, 31 Mar 2016 10:00:41 +0000 (10:00 +0000)]
Merge "ART: Fix TypeConversion from long const to float on x86_64"
Pavel Vyssotski [Wed, 16 Mar 2016 07:59:53 +0000 (13:59 +0600)]
ART: Fix TypeConversion from long const to float on x86_64
LocationsBuilderX86_64::VisitTypeConversion should load 32-bit
constant for float type.
Change-Id: I24335568af65e6b98bf07d36f90c8696497dd137
Signed-off-by: Pavel Vyssotski <pavel.n.vyssotski@intel.com>
Serdjuk, Nikolay Y [Tue, 22 Mar 2016 04:06:33 +0000 (10:06 +0600)]
ART: Save or erase the file even if I/O failed
It should close the file in any case.
Change-Id: Idb7db15bfecb0ac47839be3544cc2dce91096d7b
Signed-off-by: Serdjuk, Nikolay Y <nikolay.y.serdjuk@intel.com>
Andreas Gampe [Wed, 30 Mar 2016 21:03:43 +0000 (21:03 +0000)]
Merge "ART: Resolve all classes even when verify-profile" into nyc-dev am:
6d1b247
am:
8d96e03
* commit '
8d96e0389a11e60c4ab8fb09d80dc66e4fcccc05':
ART: Resolve all classes even when verify-profile
Change-Id: I8693decc9b801d3c9f47153745ded1fa1f7d10ea
Andreas Gampe [Wed, 30 Mar 2016 20:59:17 +0000 (20:59 +0000)]
Merge "ART: Resolve all classes even when verify-profile" into nyc-dev
am:
6d1b247
* commit '
6d1b2472155335ef4e53af01543f9b208bf98dca':
ART: Resolve all classes even when verify-profile
Change-Id: I9475c85db80c3c7438b9250d047caa8f83c9d95a
Andreas Gampe [Wed, 30 Mar 2016 20:40:15 +0000 (20:40 +0000)]
Merge "ART: Resolve all classes even when verify-profile" into nyc-dev
Andreas Gampe [Wed, 30 Mar 2016 20:28:44 +0000 (13:28 -0700)]
ART: Resolve all classes even when verify-profile
Avoid deadlocks.
Bug:
27924355
Change-Id: I41e194a7b92075884cbc485d89baf32feb6783cb
Aart Bik [Wed, 30 Mar 2016 19:19:48 +0000 (19:19 +0000)]
Merge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64)." am:
20eef17 am:
6461885
am:
34db8d0
* commit '
34db8d0d57f96edc143821e8ef0fa66069301817':
Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64).
Change-Id: I07eb019d1042abca65f52f8489ff57600e89b0d1
Aart Bik [Wed, 30 Mar 2016 19:15:54 +0000 (19:15 +0000)]
Merge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64)." am:
20eef17
am:
6461885
* commit '
64618859ba57957c05001c0be137a2c472e254f3':
Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64).
Change-Id: I2fb7a4c4540d7d10c7059c4a9331cba41609e1d6
Aart Bik [Wed, 30 Mar 2016 19:11:09 +0000 (19:11 +0000)]
Merge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64)."
am:
20eef17
* commit '
20eef176101924d5047895214bad4e73b8ae35ec':
Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64).
Change-Id: I3ed9c6d138c987981dd965d758cbb965c9ad0964
Andreas Gampe [Wed, 30 Mar 2016 19:07:01 +0000 (19:07 +0000)]
Merge "ART: Fix unstarted runtime for Security" am:
13ce07a am:
946c902
am:
1225994
* commit '
1225994f70bbc0fde72ea066ea15bfb62104fce9':
ART: Fix unstarted runtime for Security
Change-Id: Id82dddf5ba575564e5e00312c1c2b3c5d1a12f0c
Bill Buzbee [Wed, 30 Mar 2016 19:07:00 +0000 (19:07 +0000)]
Merge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""" am:
77376a4 am:
fbf9863
am:
38fc3bb
* commit '
38fc3bb93cbbb9434cb3b4484e43600189587d7b':
Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""
Change-Id: Ic7af3943534caa0ac8dfea01d776244ec85ad2a9
Vladimir Marko [Wed, 30 Mar 2016 19:07:00 +0000 (19:07 +0000)]
Merge "Optimizing: Clean up after const-string sharpening." am:
3d8762c am:
2408bd4
am:
c5e5012
* commit '
c5e50121b49e4d13d5498dcbef866a657c7ddf2d':
Optimizing: Clean up after const-string sharpening.
Change-Id: Id03175e2056cc91ba43a3cafd04c1d5449401d82
Richard Uhler [Wed, 30 Mar 2016 19:06:59 +0000 (19:06 +0000)]
Merge "Don\'t return kPatchOatNeeded if there is no patch info." am:
20df4e4 am:
a51239e
am:
208c090
* commit '
208c0907d2355e0e3ebb85f0ee83b8ffbe16425a':
Don't return kPatchOatNeeded if there is no patch info.
Change-Id: Idf8562b889df02a89d3be229c8526f5661279005
Andreas Gampe [Wed, 30 Mar 2016 19:02:56 +0000 (19:02 +0000)]
Merge "ART: Fix unstarted runtime for Security" am:
13ce07a
am:
946c902
* commit '
946c90280f9a699ca88fc59b0da65428bf085eb2':
ART: Fix unstarted runtime for Security
Change-Id: I7bfaf0dc748f6fbfb64db57acaae3949c71230ba
Bill Buzbee [Wed, 30 Mar 2016 19:02:56 +0000 (19:02 +0000)]
Merge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""" am:
77376a4
am:
fbf9863
* commit '
fbf9863fbb24f9c9cc1ee03ad1770962d4c43516':
Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""
Change-Id: I1c8a1b9e9e8be5bee22398c5cc064224d4ac1878
Vladimir Marko [Wed, 30 Mar 2016 19:02:56 +0000 (19:02 +0000)]
Merge "Optimizing: Clean up after const-string sharpening." am:
3d8762c
am:
2408bd4
* commit '
2408bd47b90d2e6d1536083d3f56932e71aadf76':
Optimizing: Clean up after const-string sharpening.
Change-Id: I98dc57984f56ff2108277821570d8118366ea193
Richard Uhler [Wed, 30 Mar 2016 19:02:55 +0000 (19:02 +0000)]
Merge "Don\'t return kPatchOatNeeded if there is no patch info." am:
20df4e4
am:
a51239e
* commit '
a51239e0c30c87e678876696041ef01e2d7f2962':
Don't return kPatchOatNeeded if there is no patch info.
Change-Id: I4a01f2dde0efd37d8c8849a2b6a055cf19992451
Aart Bik [Wed, 30 Mar 2016 18:59:27 +0000 (18:59 +0000)]
Merge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail-before/pass-after test (on arm64)."
Calin Juravle [Wed, 30 Mar 2016 18:41:39 +0000 (18:41 +0000)]
Merge "Fix and tune ProfileSaver" into nyc-dev am:
cbb3251
am:
c49073d
* commit '
c49073d6a4f1d2349666b0b08de3b2dfbe995307':
Fix and tune ProfileSaver
Change-Id: I49844766621d7c9230be6ec584a9ddf6eca5ea24
Calin Juravle [Wed, 30 Mar 2016 18:36:51 +0000 (18:36 +0000)]
Merge "Fix and tune ProfileSaver" into nyc-dev
am:
cbb3251
* commit '
cbb3251dc8f906c33c884380548c24ecd90a7d94':
Fix and tune ProfileSaver
Change-Id: I3fc2d2975b3ad013fede7f8c24d36d9efb2d6a9c
Andreas Gampe [Wed, 30 Mar 2016 18:27:36 +0000 (18:27 +0000)]
Merge "ART: Fix unstarted runtime for Security"
am:
13ce07a
* commit '
13ce07a99ac84ec5819dbb1d872e3eebc087e355':
ART: Fix unstarted runtime for Security
Change-Id: Ib3ec6bf0dc460e5160699f3fae0af1e986ca9e47
Calin Juravle [Wed, 30 Mar 2016 18:27:26 +0000 (18:27 +0000)]
Merge "Fix and tune ProfileSaver" into nyc-dev
Andreas Gampe [Wed, 30 Mar 2016 18:20:01 +0000 (18:20 +0000)]
Merge "ART: Fix unstarted runtime for Security"
Aart Bik [Tue, 29 Mar 2016 20:54:53 +0000 (13:54 -0700)]
Fix arm64 simplifier bug that tries to remove same statement twice.
With fail-before/pass-after test (on arm64).
Rationale:
This visitor removes statement "forward", which is a bit unusual, and
exposes a bug if statement is revisited and qualifies for removal again.
BUG=
27851582
Change-Id: Ia8cddba32b4dfe9fd480852deb358eaa977f0e1f
Bill Buzbee [Wed, 30 Mar 2016 18:10:25 +0000 (18:10 +0000)]
Merge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
am:
77376a4
* commit '
77376a4126f01e04e396ab71383a55be934939b2':
Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""
Change-Id: I735e2459ffac61f6a15d1eba9147dfb224792d2e
Bill Buzbee [Wed, 30 Mar 2016 18:02:22 +0000 (18:02 +0000)]
Merge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
Vladimir Marko [Wed, 30 Mar 2016 17:47:59 +0000 (17:47 +0000)]
Merge "Optimizing: Clean up after const-string sharpening."
am:
3d8762c
* commit '
3d8762ce57f1975eccd7a9dab92974db41535949':
Optimizing: Clean up after const-string sharpening.
Change-Id: I642b53133157e328f5e6425e41c40d7bdb408e75
Calin Juravle [Wed, 30 Mar 2016 17:18:58 +0000 (18:18 +0100)]
Fix and tune ProfileSaver
- the statement to mark the profile saved was not guarded by the right
condition.
- increase the backoff to 2x and maximum period time to 10 minutes.
As part of this change also
- fix typos
- remove uneeded warning
- add more VLOGs for easier debuging in the future
Bug:
27914456
Change-Id: I877c3256aa96d727ac4f443dc6e1f2bdb33c56c6
Vladimir Marko [Wed, 30 Mar 2016 17:29:44 +0000 (17:29 +0000)]
Merge "Optimizing: Clean up after const-string sharpening."
Vladimir Marko [Wed, 30 Mar 2016 15:30:21 +0000 (16:30 +0100)]
Optimizing: Clean up after const-string sharpening.
Do not look up the String for JIT, just check if it's in the
dex cache. Strings on hot paths should already be resolved
and we don't want to unnecessarily increase JIT compile time
to have a chance of improving a cold path.
Also, change the enum LinkerPatchType to be an inner enum
class of LinkerPatch and clean up casts between pointers and
uint64_t.
Change-Id: Ia6e0513af1a84ce94a3b30edac0c592157d374ec