OSDN Git Service

android-x86/art.git
8 years agoMerge "ART: Don't attempt write flock if not zygote" into nyc-dev
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

8 years agoFix issued with non-public interface methods.
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

8 years agoART: Don't attempt write flock if not zygote
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

8 years agoMerge "ART: Return native debuggable status of the app." into nyc-dev
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

8 years agoMerge changes I56b0a4dd,I85aa52cc 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

8 years agoART: Return native debuggable status of the app.
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

8 years agoMerge "ART: Dump less maps" into nyc-dev
Andreas Gampe [Mon, 4 Apr 2016 21:22:13 +0000 (21:22 +0000)]
Merge "ART: Dump less maps" into nyc-dev

8 years agoMark array classes as verification attempted
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

8 years agoART: Dump less maps
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

8 years agoMerge "Dump different fields in imgdiag" into nyc-dev
Mathieu Chartier [Fri, 1 Apr 2016 23:09:19 +0000 (23:09 +0000)]
Merge "Dump different fields in imgdiag" into nyc-dev

8 years agoDump different fields in imgdiag
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

8 years agoMerge changes from topic 'bad-classpath' into nyc-dev
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

8 years agoMake test 146 run with secondary dex file in classpath.
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

8 years agoMerge "ART: Better support for arraycopy in unstarted runtime" into nyc-dev
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

8 years agoART: Better support for arraycopy in unstarted runtime
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

8 years agoMake InvokeInterfaceTrampoline check methods
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

8 years agoMerge "Refine OatFileAssistant.MakeUpToDate failure result." into nyc-dev
Richard Uhler [Fri, 1 Apr 2016 17:26:18 +0000 (17:26 +0000)]
Merge "Refine OatFileAssistant.MakeUpToDate failure result." into nyc-dev

8 years agounstarted_runtime: Update references to decimal format classes.
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

8 years agounstarted_runtime: Add additional cutouts
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

8 years agoMerge "Revert "ART: Resolve all classes even when verify-profile"" into nyc-dev
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

8 years agoMerge "ART: Do not run verification under lock" 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

8 years agoRevert "ART: Resolve all classes even when verify-profile"
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

8 years agoART: Do not run verification under lock
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

8 years agoRefine OatFileAssistant.MakeUpToDate failure result.
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

8 years agoDisable checks for b/27493510
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

8 years agoAdd way to disable resolving for stack walk
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

8 years agoMerge "Obtain stack trace outside of critical section" into nyc-dev
Mathieu Chartier [Thu, 31 Mar 2016 19:59:38 +0000 (19:59 +0000)]
Merge "Obtain stack trace outside of critical section" into nyc-dev

8 years agoMerge "Only log excessive timeouts if those appear accidental" 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

8 years agoObtain stack trace outside of critical section
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

8 years agoOnly log excessive timeouts if those appear accidental
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)

8 years agoART: Add support for DexFile compiler filter function
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

8 years agoMerge "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""...
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

8 years agoFix profile save MaxBaxBackoff time
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

8 years agoRevert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
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

8 years agoMerge remote-tracking branch 'goog/master' into nyc-dev
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

8 years agoMerge "ART: Save or erase the file even if I/O failed" am: 6656f30 am: 4f4fc1a
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

8 years agoMerge "ART: Save or erase the file even if I/O failed" am: 6656f30
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

8 years agoMerge "ART: Fix TypeConversion from long const to float on x86_64" am: 922b88c am...
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

8 years agoMerge "ART: Save or erase the file even if I/O failed"
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

8 years agoMerge "ART: Fix TypeConversion from long const to float on x86_64" am: 922b88c
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

8 years agoMerge "ART: Save or erase the file even if I/O failed"
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"

8 years agoMerge "ART: Fix TypeConversion from long const to float on x86_64"
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

8 years agoMerge "ART: Fix TypeConversion from long const to float on x86_64"
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"

8 years agoART: 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>
8 years agoART: Save or erase the file even if I/O failed
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>
8 years agoMerge "ART: Resolve all classes even when verify-profile" into nyc-dev am: 6d1b247
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

8 years agoMerge "ART: Resolve all classes even when verify-profile" into nyc-dev
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

8 years agoMerge "ART: Resolve all classes even when verify-profile" into nyc-dev
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

8 years agoART: Resolve all classes even when verify-profile
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

8 years agoMerge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail...
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

8 years agoMerge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail...
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

8 years agoMerge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail...
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

8 years agoMerge "ART: Fix unstarted runtime for Security" am: 13ce07a am: 946c902
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

8 years agoMerge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""" am: 77376a4...
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

8 years agoMerge "Optimizing: Clean up after const-string sharpening." am: 3d8762c am: 2408bd4
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

8 years agoMerge "Don\'t return kPatchOatNeeded if there is no patch info." am: 20df4e4 am:...
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

8 years agoMerge "ART: Fix unstarted runtime for Security" am: 13ce07a
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

8 years agoMerge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""" am: 77376a4
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

8 years agoMerge "Optimizing: Clean up after const-string sharpening." am: 3d8762c
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

8 years agoMerge "Don\'t return kPatchOatNeeded if there is no patch info." am: 20df4e4
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

8 years agoMerge "Fix arm64 simplifier bug that tries to remove same statement twice. With fail...
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)."

8 years agoMerge "Fix and tune ProfileSaver" into nyc-dev am: cbb3251
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

8 years agoMerge "Fix and tune ProfileSaver" into nyc-dev
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

8 years agoMerge "ART: Fix unstarted runtime for Security"
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

8 years agoMerge "Fix and tune ProfileSaver" into nyc-dev
Calin Juravle [Wed, 30 Mar 2016 18:27:26 +0000 (18:27 +0000)]
Merge "Fix and tune ProfileSaver" into nyc-dev

8 years agoMerge "ART: Fix unstarted runtime for Security"
Andreas Gampe [Wed, 30 Mar 2016 18:20:01 +0000 (18:20 +0000)]
Merge "ART: Fix unstarted runtime for Security"

8 years agoFix arm64 simplifier bug that tries to remove same statement twice.
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

8 years agoMerge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
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

8 years agoMerge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""
Bill Buzbee [Wed, 30 Mar 2016 18:02:22 +0000 (18:02 +0000)]
Merge "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""

8 years agoMerge "Optimizing: Clean up after const-string sharpening."
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

8 years agoFix and tune ProfileSaver
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

8 years agoMerge "Optimizing: Clean up after const-string sharpening."
Vladimir Marko [Wed, 30 Mar 2016 17:29:44 +0000 (17:29 +0000)]
Merge "Optimizing: Clean up after const-string sharpening."

8 years agoOptimizing: 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

8 years agoMerge "Don\'t return kPatchOatNeeded if there is no patch info." into nyc-dev am...
Richard Uhler [Wed, 30 Mar 2016 16:06:49 +0000 (16:06 +0000)]
Merge "Don\'t return kPatchOatNeeded if there is no patch info." into nyc-dev am: f7a9ff9
am: ca4ddaf

* commit 'ca4ddaf22677c32a20229a2c1410544c450ec75d':
  Don't return kPatchOatNeeded if there is no patch info.

Change-Id: I3762c921b9f4bc4f858c081ee5b34f150c1bd07c

8 years agoMerge "Optimizing: Improve const-string code generation." am: 085055f am: 0b92b73
Vladimir Marko [Wed, 30 Mar 2016 16:06:48 +0000 (16:06 +0000)]
Merge "Optimizing: Improve const-string code generation." am: 085055f am: 0b92b73
am: a1357a8

* commit 'a1357a82251881f69060bc33bb7c9256f70cda7b':
  Optimizing: Improve const-string code generation.

Change-Id: Ib0de96c301ab2e900430b50415fe435bd4c78abc

8 years agoMerge "Take into account the change in classes when analysing profiles" into nyc...
Calin Juravle [Wed, 30 Mar 2016 16:06:47 +0000 (16:06 +0000)]
Merge "Take into account the change in classes when analysing profiles" into nyc-dev am: c736384
am: 86d57b8

* commit '86d57b8972c40efdb3a744cf02a055801f689430':
  Take into account the change in classes when analysing profiles

Change-Id: Ie70ea4c0ca9eea39d9401e7fe7b5bd96a665d71f

8 years agoMerge "X86_64: Replace x86_64 xchg instruction use" am: a1eff4f am: 01098af
Mark Mendell [Wed, 30 Mar 2016 16:06:46 +0000 (16:06 +0000)]
Merge "X86_64: Replace x86_64 xchg instruction use" am: a1eff4f am: 01098af
am: 540d0a1

* commit '540d0a16691b8c5c296c55f301438452d6ed2113':
  X86_64: Replace x86_64 xchg instruction use

Change-Id: I2a42d461bcbe2ee2a2750f30bcc69d4f70d96beb

8 years agoMerge "ART: Flush ostream less frequently in GraphVisualizer" am: 15a605e am: 9049d07
David Brazdil [Wed, 30 Mar 2016 16:06:45 +0000 (16:06 +0000)]
Merge "ART: Flush ostream less frequently in GraphVisualizer" am: 15a605e am: 9049d07
am: 3c3a933

* commit '3c3a93307f98b91c1abda266b79bc093deef043a':
  ART: Flush ostream less frequently in GraphVisualizer

Change-Id: I26dae4e2e6f2f4d4487d59ca5cec18f5f62dd34d

8 years agoMerge "Don\'t return kPatchOatNeeded if there is no patch info."
Richard Uhler [Wed, 30 Mar 2016 15:29:13 +0000 (15:29 +0000)]
Merge "Don\'t return kPatchOatNeeded if there is no patch info."
am: 20df4e4

* commit '20df4e408e9d285920558e6afc8442a412df3ac4':
  Don't return kPatchOatNeeded if there is no patch info.

Change-Id: I916b37e140ac3296d1dc9046ae41993e9db79758

8 years agoMerge "Don\'t return kPatchOatNeeded if there is no patch info." into nyc-dev
Richard Uhler [Wed, 30 Mar 2016 15:29:13 +0000 (15:29 +0000)]
Merge "Don\'t return kPatchOatNeeded if there is no patch info." into nyc-dev
am: f7a9ff9

* commit 'f7a9ff9b6474d0cbebefa45149ed3827ed4e1048':
  Don't return kPatchOatNeeded if there is no patch info.

Change-Id: I5eb28e0eb19f7484e652405f6df025f3e68aee54

8 years agoMerge "Don't return kPatchOatNeeded if there is no patch info." into nyc-dev
Richard Uhler [Wed, 30 Mar 2016 15:21:57 +0000 (15:21 +0000)]
Merge "Don't return kPatchOatNeeded if there is no patch info." into nyc-dev

8 years agoMerge "Don't return kPatchOatNeeded if there is no patch info."
Richard Uhler [Wed, 30 Mar 2016 15:19:11 +0000 (15:19 +0000)]
Merge "Don't return kPatchOatNeeded if there is no patch info."

8 years agoMerge "Optimizing: Improve const-string code generation." am: 085055f
Vladimir Marko [Wed, 30 Mar 2016 14:05:33 +0000 (14:05 +0000)]
Merge "Optimizing: Improve const-string code generation." am: 085055f
am: 0b92b73

* commit '0b92b73c62ab4cc13ca040d4233fa69d182971cc':
  Optimizing: Improve const-string code generation.

Change-Id: I2246aca0c0b1b12b537479ee47c293bb3079081c

8 years agoMerge "Optimizing: Improve const-string code generation."
Vladimir Marko [Wed, 30 Mar 2016 14:01:24 +0000 (14:01 +0000)]
Merge "Optimizing: Improve const-string code generation."
am: 085055f

* commit '085055f933d76579c32586488951a4497ffcf10e':
  Optimizing: Improve const-string code generation.

Change-Id: Idd5a215e18abba1e2161f1848cb08aefb4719cf0

8 years agoMerge "Optimizing: Improve const-string code generation."
Vladimir Marko [Wed, 30 Mar 2016 13:47:59 +0000 (13:47 +0000)]
Merge "Optimizing: Improve const-string code generation."

8 years agoMerge "Take into account the change in classes when analysing profiles" into nyc-dev
Calin Juravle [Wed, 30 Mar 2016 12:42:49 +0000 (12:42 +0000)]
Merge "Take into account the change in classes when analysing profiles" into nyc-dev
am: c736384

* commit 'c736384b7e6f92d479c90811939f7619a97bf3fc':
  Take into account the change in classes when analysing profiles

Change-Id: I2c06df94b5973756cf9c743ae7a81fa6a3226f9a

8 years agoMerge "Take into account the change in classes when analysing profiles" into nyc-dev
Calin Juravle [Wed, 30 Mar 2016 12:32:15 +0000 (12:32 +0000)]
Merge "Take into account the change in classes when analysing profiles" into nyc-dev

8 years agoMerge "X86_64: Replace x86_64 xchg instruction use" am: a1eff4f
Mark Mendell [Wed, 30 Mar 2016 10:12:21 +0000 (10:12 +0000)]
Merge "X86_64: Replace x86_64 xchg instruction use" am: a1eff4f
am: 01098af

* commit '01098af7a530ca65dcf5a40b3799c5147e49bd64':
  X86_64: Replace x86_64 xchg instruction use

Change-Id: Ifbc573d474fe34e6892ee323d53fc93c95c53dba

8 years agoMerge "X86_64: Replace x86_64 xchg instruction use"
Mark Mendell [Wed, 30 Mar 2016 10:08:25 +0000 (10:08 +0000)]
Merge "X86_64: Replace x86_64 xchg instruction use"
am: a1eff4f

* commit 'a1eff4f279253bbc90d2697d7c15390bcab65d1e':
  X86_64: Replace x86_64 xchg instruction use

Change-Id: I3a95d8b662a424f0f218acf31894fdf86b4bbca2

8 years agoMerge "ART: Flush ostream less frequently in GraphVisualizer" am: 15a605e
David Brazdil [Wed, 30 Mar 2016 10:00:28 +0000 (10:00 +0000)]
Merge "ART: Flush ostream less frequently in GraphVisualizer" am: 15a605e
am: 9049d07

* commit '9049d072d9d815c8056d80d700cffa4b97971ecd':
  ART: Flush ostream less frequently in GraphVisualizer

Change-Id: Ib0a084edf89452e9ec52002b905bcd2997b71135

8 years agoMerge "X86_64: Replace x86_64 xchg instruction use"
Vladimir Marko [Wed, 30 Mar 2016 09:58:54 +0000 (09:58 +0000)]
Merge "X86_64: Replace x86_64 xchg instruction use"

8 years agoMerge "ART: Flush ostream less frequently in GraphVisualizer"
David Brazdil [Wed, 30 Mar 2016 09:56:32 +0000 (09:56 +0000)]
Merge "ART: Flush ostream less frequently in GraphVisualizer"
am: 15a605e

* commit '15a605e8fba716297cef70b8396ffe011c420f94':
  ART: Flush ostream less frequently in GraphVisualizer

Change-Id: Iae7e60ede55207aab504de596170a0bf7615e787

8 years agoMerge "ART: Flush ostream less frequently in GraphVisualizer"
David Brazdil [Wed, 30 Mar 2016 09:46:14 +0000 (09:46 +0000)]
Merge "ART: Flush ostream less frequently in GraphVisualizer"

8 years agoART: Flush ostream less frequently in GraphVisualizer
David Brazdil [Wed, 30 Mar 2016 08:41:02 +0000 (09:41 +0100)]
ART: Flush ostream less frequently in GraphVisualizer

We have seen Checker tests timing out on debug-GC configurations after
having switched to Optimizing because its GraphVisualizer makes too
many syscalls which the configuration keeps track of.

This patch replaces std::endl with "\n" across GraphVisualizer so as
to not flush the stream after every line of output.

Bug: 27826765
Change-Id: I5e3f1e92f8a84f36d324d56945e2d420b2d36a5d

8 years agoART: Fix unstarted runtime for Security
Andreas Gampe [Wed, 30 Mar 2016 02:33:56 +0000 (19:33 -0700)]
ART: Fix unstarted runtime for Security

Derive the path for the libcore jar from the boot classpath string
instead of from the dex file location.

Bug: 27899446
Change-Id: I22a9be76303edb2ec72f4cf2e7a4b3bfed37d9c7

8 years agoMerge "ART: Postpone interface-related dex failure to version 37" am: a923025 am...
Andreas Gampe [Wed, 30 Mar 2016 01:08:26 +0000 (01:08 +0000)]
Merge "ART: Postpone interface-related dex failure to version 37" am: a923025 am: 94eae20
am: d95cc47

* commit 'd95cc47afd21d2c22fc93583981b9853d91dced2':
  ART: Postpone interface-related dex failure to version 37

Change-Id: If075e3b5eba2fa868bd284b55a0af512f6ddb4f8

8 years agoMerge "ART: Postpone interface-related dex failure to version 37" am: a923025
Andreas Gampe [Wed, 30 Mar 2016 01:00:37 +0000 (01:00 +0000)]
Merge "ART: Postpone interface-related dex failure to version 37" am: a923025
am: 94eae20

* commit '94eae2002dd31d1b4a828120dc724cdcb3fe68a0':
  ART: Postpone interface-related dex failure to version 37

Change-Id: I051fb6b72f3c8650e5af51fcce65aa8a21512886

8 years agoMerge "ART: Postpone interface-related dex failure to version 37"
Andreas Gampe [Wed, 30 Mar 2016 00:56:54 +0000 (00:56 +0000)]
Merge "ART: Postpone interface-related dex failure to version 37"
am: a923025

* commit 'a923025e08e61fd2ff26e3d60c26e9db29637736':
  ART: Postpone interface-related dex failure to version 37

Change-Id: Ifa0aa5b79843957efd2c17a298bb052ac1c13800

8 years agoMerge "ART: Postpone interface-related dex failure to version 37"
Andreas Gampe [Wed, 30 Mar 2016 00:47:15 +0000 (00:47 +0000)]
Merge "ART: Postpone interface-related dex failure to version 37"

8 years agoART: Postpone interface-related dex failure to version 37
Andreas Gampe [Tue, 29 Mar 2016 01:31:29 +0000 (18:31 -0700)]
ART: Postpone interface-related dex failure to version 37

For app compat, at least for now make the check for public-final-static
of interface members not fail on dex file versions less than 37. This
may be changed in future releases.

Bug: 27831184
Change-Id: If8ee50321298b951d4a78062c8eb583fec27394f