OSDN Git Service

android-x86/art.git
8 years agoART: Do not use vixld - workaround to fix dex2oatds.
Vladimir Marko [Thu, 10 Mar 2016 17:25:50 +0000 (17:25 +0000)]
ART: Do not use vixld - workaround to fix dex2oatds.

This is a quick workaround for ODR violations caused
by linking libvixl.a compiled without VIXL_DEBUG with
the libartd-compiler.a compiled with VIXL_DEBUG.

Bug: 27588884
Change-Id: Ib1af165f177f125f03cdd99777dff4c2912f6405

8 years agoMerge "Add Mips abiflags section to the oatfile."
Vladimir Marko [Thu, 10 Mar 2016 17:11:44 +0000 (17:11 +0000)]
Merge "Add Mips abiflags section to the oatfile."

8 years agoMerge "MIPS32: java.lang.Thread, and java.lang.String intrinsics:"
Roland Levillain [Thu, 10 Mar 2016 17:09:37 +0000 (17:09 +0000)]
Merge "MIPS32: java.lang.Thread, and java.lang.String intrinsics:"

8 years agoMerge "Disable some image_test cases with concurrent collector."
Roland Levillain [Thu, 10 Mar 2016 15:28:34 +0000 (15:28 +0000)]
Merge "Disable some image_test cases with concurrent collector."

8 years agoMerge "Tweak JIT hotness threshold."
Nicolas Geoffray [Thu, 10 Mar 2016 15:25:02 +0000 (15:25 +0000)]
Merge "Tweak JIT hotness threshold."

8 years agoDisable some image_test cases with concurrent collector.
Roland Levillain [Thu, 10 Mar 2016 15:16:31 +0000 (15:16 +0000)]
Disable some image_test cases with concurrent collector.

The following image_test cases sometimes fail on ART Builbot's
x86 concurrent collector configuration:
- ImageTest.WriteReadUncompressed
- ImageTest.WriteReadLZ4
- ImageTest.WriteReadLZ4HC
Disable them to make the build turn green again, while we
investigate the failures.

Bug: 27578460
Change-Id: I46126e4690e6300e3bfa771c1b6a560272ecb1da

8 years agoTweak JIT hotness threshold.
Nicolas Geoffray [Tue, 8 Mar 2016 16:50:21 +0000 (16:50 +0000)]
Tweak JIT hotness threshold.

bug:23128949
bug:27398183

Change-Id: Iffde6ba064e54546827cb8fc2a670baedf2e2409

8 years agoMerge "MIPS32: Fix test 082-inline-execute"
Nicolas Geoffray [Thu, 10 Mar 2016 14:23:35 +0000 (14:23 +0000)]
Merge "MIPS32: Fix test 082-inline-execute"

8 years agoMerge "Fix and enable java.lang.StringFactory intrinsics."
Roland Levillain [Thu, 10 Mar 2016 14:21:40 +0000 (14:21 +0000)]
Merge "Fix and enable java.lang.StringFactory intrinsics."

8 years agoMIPS32: Fix test 082-inline-execute
Goran Jakovljevic [Tue, 8 Mar 2016 14:26:51 +0000 (15:26 +0100)]
MIPS32: Fix test 082-inline-execute

This is fixing the test when run with --debuggable flag.

Change-Id: Ifd11c28a77f1c6f6fe5951c5c27309187b29d3ee

8 years agoMerge "Clear inline caches at each full GC."
Nicolas Geoffray [Thu, 10 Mar 2016 10:47:57 +0000 (10:47 +0000)]
Merge "Clear inline caches at each full GC."

8 years agoMerge "ART: Fix assumption in class profile collection"
Andreas Gampe [Thu, 10 Mar 2016 01:44:24 +0000 (01:44 +0000)]
Merge "ART: Fix assumption in class profile collection"

8 years agoMerge "Use PwriteFully and write image header last"
Mathieu Chartier [Thu, 10 Mar 2016 00:51:40 +0000 (00:51 +0000)]
Merge "Use PwriteFully and write image header last"

8 years agoUse PwriteFully and write image header last
Mathieu Chartier [Wed, 9 Mar 2016 19:14:50 +0000 (11:14 -0800)]
Use PwriteFully and write image header last

Prevent corrupted images if dex2oat gets killed or if the image
writer is interrupted during writing.

Bug: 22858531
Bug: 27561308

(cherry picked from commit dba5a70977da0a28cec2bfc8261d52a177738477)

Change-Id: If4f2c43bcc3cf918b5d2780f1709225b5a4ce116

8 years agoMerge "Use per character suffix for multi image"
Mathieu Chartier [Thu, 10 Mar 2016 00:34:23 +0000 (00:34 +0000)]
Merge "Use per character suffix for multi image"

8 years agoART: Fix assumption in class profile collection
Andreas Gampe [Wed, 9 Mar 2016 23:52:21 +0000 (15:52 -0800)]
ART: Fix assumption in class profile collection

The dex cache may contain erroneous classes. Filter, instead of
DCHECK.

Bug: 27500691

(cherry picked from commit 4309f6129795ade42591b872e44a33cec95f4e79)

Change-Id: Ic99bca3a7e54a5e7893c801ec5ac92cbf690cd67

8 years agoUse per character suffix for multi image
Mathieu Chartier [Wed, 9 Mar 2016 00:50:20 +0000 (16:50 -0800)]
Use per character suffix for multi image

E.g. if you pull the oat files from the device, you get oat files
with the following names:
system@framework@boot.art

But the name stored in the image header is:
boot.art

So we need to append system@framework@ as a file name prefix to each
image file to get the actual one.

Required for adding oatdump support for app images.

Bug: 22858531
Bug: 27408512

(cherry picked from commit 05752398db7f25d7892b62cb39615eee468f1db8)

Change-Id: Ia6fb34b137c5e285818d39c3b9794cd4ce6c3219

8 years agoMerge "ART: Enable native stack dumping on timeout"
Andreas Gampe [Wed, 9 Mar 2016 17:30:50 +0000 (17:30 +0000)]
Merge "ART: Enable native stack dumping on timeout"

8 years agoMerge "ART: Use optimizing compiler in image_test"
Andreas Gampe [Wed, 9 Mar 2016 17:30:18 +0000 (17:30 +0000)]
Merge "ART: Use optimizing compiler in image_test"

8 years agoClear inline caches at each full GC.
Nicolas Geoffray [Mon, 7 Mar 2016 14:29:04 +0000 (14:29 +0000)]
Clear inline caches at each full GC.

This fixes occasional failures of 141-class-unload.

Also fix a bug where clearing inline caches also cleared the dex
pc associated with it.

bug:26846185
bug:23128949
Change-Id: I77bf1dee229d7764c3cc21440829c7fba7b37001

8 years agoART: Use optimizing compiler in image_test
Andreas Gampe [Fri, 19 Feb 2016 00:53:41 +0000 (16:53 -0800)]
ART: Use optimizing compiler in image_test

Expose some compiler options so we can run the image test with
the optimizing compiler without running into a stack overflow.

Also allow a variable amount of threads in CreateCompilerDriver.
Use 16 as a middle ground on the host to speed up the otherwise
now slowed-down test.

Bug: 27240085
Bug: 27552475
Change-Id: I8db5055d32ae722c8f430903244faa9166cc4886

8 years agoMerge "Implement the 1.8 unsafe memory fences directly in HIR."
Aart Bik [Wed, 9 Mar 2016 17:13:34 +0000 (17:13 +0000)]
Merge "Implement the 1.8 unsafe memory fences directly in HIR."

8 years agoMerge "ART: Fix missing include"
Andreas Gampe [Wed, 9 Mar 2016 16:23:41 +0000 (16:23 +0000)]
Merge "ART: Fix missing include"

8 years agoMerge "ART: Write bit fields together in ComputeSpecialAccessorInfo()."
Vladimir Marko [Wed, 9 Mar 2016 16:16:49 +0000 (16:16 +0000)]
Merge "ART: Write bit fields together in ComputeSpecialAccessorInfo()."

8 years agoFix and enable java.lang.StringFactory intrinsics.
Roland Levillain [Wed, 9 Mar 2016 16:14:00 +0000 (16:14 +0000)]
Fix and enable java.lang.StringFactory intrinsics.

The following intrinsics were not considered by the
intrinsics recognizer:
- StringNewStringFromBytes
- StringNewStringFromChars
- StringNewStringFromString
This CL enables them and add tests for them.

This CL also:
- Fixes the locations of the ARM64 & MIPS64
  StringNewStringFromString intrinsics.
- Fixes the definitions of the FOUR_ARG_DOWNCALL macros on
  ARM and x86, which are used to implement the
  art_quick_alloc_string_from_bytes* runtime entry points.
- Fixes PC info (stack maps) recording in the
  StringNewStringFromBytes, StringNewStringFromChars and
  StringNewStringFromString ARM, ARM64 & MIPS64 intrinsics.

Bug: 27425743
Change-Id: I38c00d3f0b2e6b64f7d3fe9146743493bef9e45c

8 years agoMerge "Stop oat loading spam on host."
Nicolas Geoffray [Wed, 9 Mar 2016 15:46:58 +0000 (15:46 +0000)]
Merge "Stop oat loading spam on host."

8 years agoStop oat loading spam on host.
Nicolas Geoffray [Wed, 9 Mar 2016 15:36:23 +0000 (15:36 +0000)]
Stop oat loading spam on host.

Change-Id: I336669f49bfbfc76bb5e9d3b4f1738709e070b27

8 years agoMerge "Mark DWARF lines in non-debuggable methods as "not a statement"."
David Srbecky [Wed, 9 Mar 2016 15:05:50 +0000 (15:05 +0000)]
Merge "Mark DWARF lines in non-debuggable methods as "not a statement"."

8 years agoART: Write bit fields together in ComputeSpecialAccessorInfo().
Vladimir Marko [Wed, 9 Mar 2016 13:45:39 +0000 (13:45 +0000)]
ART: Write bit fields together in ComputeSpecialAccessorInfo().

Avoid function calls between storing individual bit fields
to allow the compiler (gcc/clang) to merge those writes
together. Valgrind then marks the memory as "defined" while
individual bit field writes would leave it "undefined" and
later trigger the valgrind error:
  Conditional jump or move depends on uninitialised value(s)
on DCHECK()s using the bit fields.

Bug: 27552451
Change-Id: If6de5cbe231f99da0f974a0fc9a36c14e3dc071e

8 years agoMerge "Handle unexpected cases in profile saver"
Calin Juravle [Wed, 9 Mar 2016 11:57:54 +0000 (11:57 +0000)]
Merge "Handle unexpected cases in profile saver"

8 years agoMerge "Update GetDexOptNeeded to handle different levels of compilation"
Calin Juravle [Wed, 9 Mar 2016 11:57:36 +0000 (11:57 +0000)]
Merge "Update GetDexOptNeeded to handle different levels of compilation"

8 years agoMerge "Record foreign dex files loaded by the app in the profile"
Calin Juravle [Wed, 9 Mar 2016 11:57:23 +0000 (11:57 +0000)]
Merge "Record foreign dex files loaded by the app in the profile"

8 years agoMerge "Ignore 145-alloc-tracking-stress failures with JIT and CC."
Roland Levillain [Wed, 9 Mar 2016 11:24:33 +0000 (11:24 +0000)]
Merge "Ignore 145-alloc-tracking-stress failures with JIT and CC."

8 years agoIgnore 145-alloc-tracking-stress failures with JIT and CC.
Roland Levillain [Wed, 9 Mar 2016 11:18:02 +0000 (11:18 +0000)]
Ignore 145-alloc-tracking-stress failures with JIT and CC.

This run-test fails also with JIT compiling on the
concurrent collector configuration; disable it for now.

Bug: 27467554
Change-Id: I551008ff5b70c83706287039092f5c9e26584227

8 years agoART: Enable native stack dumping on timeout
Andreas Gampe [Wed, 9 Mar 2016 04:29:49 +0000 (20:29 -0800)]
ART: Enable native stack dumping on timeout

To better investigate timeout in tests, allow dumping of native
stacks.

Bug: 27508829
Change-Id: Icf5420cde386cd80a1f45400c86545c89b1e2cc2

8 years agoART: Fix missing include
Andreas Gampe [Wed, 9 Mar 2016 00:00:41 +0000 (16:00 -0800)]
ART: Fix missing include

The SwitchTable needs a function from an inl file.

Change-Id: I624d71e0c0efc0c87150d7ef3be71e0b4506c75a

8 years agoMerge "Fix valgrind errors with MemMap::Sync()."
Hiroshi Yamauchi [Tue, 8 Mar 2016 23:59:49 +0000 (23:59 +0000)]
Merge "Fix valgrind errors with MemMap::Sync()."

8 years agoFix valgrind errors with MemMap::Sync().
Hiroshi Yamauchi [Tue, 8 Mar 2016 23:17:21 +0000 (15:17 -0800)]
Fix valgrind errors with MemMap::Sync().

This fixes valgrind-test-art-host-gtest-oat_test and one error in
valgrind-test-art-host-gtest-image_test32.

Valgrind doesn't like it if an address range that contains noaccess or
uninitialized memory is passed to msync(). Temporarily lift the noaccess
protection of the lower-end redzone because msync accepts a page-aligned
base address only and exclude the higher-end noaccess redzone from the
range.

Bug: 27552451
Bug: 27384445
Change-Id: I8ccbd04c62eb30f6c6d5c732f1eb254fa09a417a

8 years agoImplement the 1.8 unsafe memory fences directly in HIR.
Aart Bik [Tue, 8 Mar 2016 20:42:25 +0000 (12:42 -0800)]
Implement the 1.8 unsafe memory fences directly in HIR.

Rationale:
More efficient since it exposes full semantics to
all operations on the graph and allows for proper
code generation for all architectures.

bug=26264765

Change-Id: Ic435886cf0645927a101a8502f0623fa573989ff

8 years agoMIPS32: java.lang.Thread, and java.lang.String intrinsics:
Chris Larsen [Wed, 20 Jan 2016 00:45:35 +0000 (16:45 -0800)]
MIPS32: java.lang.Thread, and java.lang.String intrinsics:

- Thread java.lang.Thread.currentThread()
- int java.lang.String.compareTo(String anotherString)
- int java.lang.String.indexOf(int ch)
- int java.lang.String.indexOf(int ch, int fromIndex)
- java.lang.StringFactory.newStringFromBytes(byte[] data,
                                             int high,
                                             int offset,
                                             int byteCount)
- java.lang.StringFactory.newStringFromChars(int offset,
                                             int charCount,
                                             char[] data)
- java.lang.StringFactory.newStringFromString(String toCopy)

Change-Id: I96a06ff81e1e3bf18d45760282356854efaf4945

8 years agoMerge "ART: Use the right ElfBuilder for oatdump symbolizer"
Andreas Gampe [Tue, 8 Mar 2016 18:26:02 +0000 (18:26 +0000)]
Merge "ART: Use the right ElfBuilder for oatdump symbolizer"
am: 2f6ad55a3b

* commit '2f6ad55a3bfa16867146233e1eb8b822b1daab4b':
  ART: Use the right ElfBuilder for oatdump symbolizer

8 years agoMerge "ART: Use the right ElfBuilder for oatdump symbolizer"
David Srbecky [Tue, 8 Mar 2016 18:15:20 +0000 (18:15 +0000)]
Merge "ART: Use the right ElfBuilder for oatdump symbolizer"

8 years agoHandle unexpected cases in profile saver
Calin Juravle [Tue, 8 Mar 2016 12:52:52 +0000 (12:52 +0000)]
Handle unexpected cases in profile saver

There are some unexpected cases that should not occur in a normal run.
Log warnings but avoid crashing if:
- dex location is empty
- we cannot figure the real paths of the locations.

Bug: 27532729

(cherry picked from commit 1fae45f7d777e3971b916dda531c8648304866c8)

Change-Id: I9e8f4fc2da49f47dab113795ac264c6db9b691de

8 years agoUpdate GetDexOptNeeded to handle different levels of compilation
Calin Juravle [Thu, 18 Feb 2016 18:47:37 +0000 (18:47 +0000)]
Update GetDexOptNeeded to handle different levels of compilation

extract-only or profile-guide oat files are considered up to date from
runtime perspective as they don't necessary need (re)compilation or
relocation. However, it is useful to return a more refined code to the
caller so that they can decide whether or not that's good enough.

For example, the package manager might decide to still compile a
previous extract-only and during profile guide compilation we should
always recompile even if we have an oat file.

Note that dex files compiled via ClassLoaders will still be fully
compiled.

This change introduces:
- a new key in the oat header kCompilationType to capture what type of
compilation has been made. Note tha the key might be missing. The
distinction is needed in order to avoid recompilation of a previous
fully compiled file during profile guide compilation analysis.
- a new argument to GetDexOptNeeded which tells the runtime to cast its
opinion whether or not the oat file is up to date relative to the
desired target type of compilation.

Bug: 27189430

(cherry picked from commit d91b8a2464b99625efe03caf7d30c8372bc378ed)

Change-Id: I6ce450350f388451f7bab7d285c1846d539a4b13

8 years agoMark DWARF lines in non-debuggable methods as "not a statement".
David Srbecky [Mon, 7 Mar 2016 16:13:58 +0000 (16:13 +0000)]
Mark DWARF lines in non-debuggable methods as "not a statement".

This is a hint to the debugger that breakpoints and stepping
might not function as intended (since we have limited information).

Change-Id: I23c4a816182cc7548fcd69fbd00112225e7b1710

8 years agoART: Use the right ElfBuilder for oatdump symbolizer
Andreas Gampe [Tue, 8 Mar 2016 00:31:34 +0000 (16:31 -0800)]
ART: Use the right ElfBuilder for oatdump symbolizer

We should not unconditionally output 32-bit ELF files.

Bug: 27293423
Change-Id: Ibbb74a7807b24c46cb23d7b5867936569424e8fe

8 years agoMerge "Propagate InstructionSetFeatures to ElfBuilder."
David Srbecky [Tue, 8 Mar 2016 15:01:47 +0000 (15:01 +0000)]
Merge "Propagate InstructionSetFeatures to ElfBuilder."
am: ce51701b06

* commit 'ce51701b0621754a81125df3ed62e07c0497cafd':
  Propagate InstructionSetFeatures to ElfBuilder.

8 years agoMerge "Propagate InstructionSetFeatures to ElfBuilder."
David Srbecky [Tue, 8 Mar 2016 14:58:40 +0000 (14:58 +0000)]
Merge "Propagate InstructionSetFeatures to ElfBuilder."

8 years agoMerge "Revert "Suppress ArrayDequeTest#testForEachRemaining temporarily.""
Narayan Kamath [Tue, 8 Mar 2016 13:54:15 +0000 (13:54 +0000)]
Merge "Revert "Suppress ArrayDequeTest#testForEachRemaining temporarily.""
am: 60a765f678

* commit '60a765f6781a59d782ebcf99691aa614b6e610d3':
  Revert "Suppress ArrayDequeTest#testForEachRemaining temporarily."

8 years agoMerge "Revert "Suppress ArrayDequeTest#testForEachRemaining temporarily.""
Narayan Kamath [Tue, 8 Mar 2016 13:50:37 +0000 (13:50 +0000)]
Merge "Revert "Suppress ArrayDequeTest#testForEachRemaining temporarily.""

8 years agoRevert "Suppress ArrayDequeTest#testForEachRemaining temporarily."
Narayan Kamath [Mon, 7 Mar 2016 10:57:34 +0000 (10:57 +0000)]
Revert "Suppress ArrayDequeTest#testForEachRemaining temporarily."

This reverts commit 98c38e34357a73c46ad7a735dd23da0ba29a2963.

Fixed by commit 3de87b847fa94cce9beaf5b225404c1bc7ec475f.

Change-Id: If38f1e67dd8504055236bb8a9703d8c2eb61d16c

8 years agoAdd Mips abiflags section to the oatfile.
Douglas Leung [Thu, 17 Sep 2015 22:26:25 +0000 (15:26 -0700)]
Add Mips abiflags section to the oatfile.

Once this patch is merged, then the workaround patch:
0acb15ead6a554a6879b29fd90726b9ea8fd98c4
in bionic can be removed.

Change-Id: Ie06a3c4e384a23a77db7d04a2508edbf3a6d3933

8 years agoPropagate InstructionSetFeatures to ElfBuilder.
David Srbecky [Tue, 8 Mar 2016 13:21:22 +0000 (13:21 +0000)]
Propagate InstructionSetFeatures to ElfBuilder.

This is subset of CL171665 and it separates it into two.
It will be needed to generate .MIPS.abiflags ELF section.

Change-Id: I5557e7cb98d0fa1dc57c85cf6161e119c6d50a1a

8 years agoMerge "Re-enable test that was causing TimeoutExceptions on ARM64."
Roland Levillain [Tue, 8 Mar 2016 11:46:47 +0000 (11:46 +0000)]
Merge "Re-enable test that was causing TimeoutExceptions on ARM64."
am: dddb767f59

* commit 'dddb767f59bd67bb9c3d4c38916f64a71f060e40':
  Re-enable test that was causing TimeoutExceptions on ARM64.

8 years agoMerge "Re-enable test that was causing TimeoutExceptions on ARM64."
Roland Levillain [Tue, 8 Mar 2016 11:42:24 +0000 (11:42 +0000)]
Merge "Re-enable test that was causing TimeoutExceptions on ARM64."

8 years agoRe-enable test that was causing TimeoutExceptions on ARM64.
Roland Levillain [Tue, 8 Mar 2016 11:22:02 +0000 (11:22 +0000)]
Re-enable test that was causing TimeoutExceptions on ARM64.

The libcore test libcore.java.lang.OldSystemTest#test_gc has
been failing with a java.util.concurrent.TimeoutException on
ART Builbot's ARM64 concurrent collector configuration.  No
longer ignore this failure to see whether recent changes
(namely https://android-review.googlesource.com/#/c/204125)
fixed the issue.

Bug: 26155567
Change-Id: I5cd3c3956cfd510bab1cb9d3b9479560f9703e6d

8 years agoMerge "Fix lock order violation"
Mathieu Chartier [Tue, 8 Mar 2016 02:52:01 +0000 (02:52 +0000)]
Merge "Fix lock order violation"
am: 943a70f416

* commit '943a70f416ba19b0b05265ecca526311a6ae330c':
  Fix lock order violation

8 years agoMerge "Fix lock order violation"
Mathieu Chartier [Tue, 8 Mar 2016 02:47:28 +0000 (02:47 +0000)]
Merge "Fix lock order violation"

8 years agoFix lock order violation
Mathieu Chartier [Tue, 8 Mar 2016 01:41:39 +0000 (17:41 -0800)]
Fix lock order violation

Release class linker lock before acquiring heap bitmap lock.

Bug: 27493510

(cherry picked from commit 064e9d401c49d3789b5deeeb6b423a4f551e4206)

Change-Id: I7809e0f591513b85d295d43e639152ce92984f9c

8 years agoMerge "Try to reenable some libcore tests with CC."
Hiroshi Yamauchi [Tue, 8 Mar 2016 01:04:04 +0000 (01:04 +0000)]
Merge "Try to reenable some libcore tests with CC."
am: 4015a34900

* commit '4015a3490066c493424ff8c57d6b814cdc49f40c':
  Try to reenable some libcore tests with CC.

8 years agoMerge "Try to reenable some libcore tests with CC."
Hiroshi Yamauchi [Tue, 8 Mar 2016 00:52:55 +0000 (00:52 +0000)]
Merge "Try to reenable some libcore tests with CC."

8 years agoTry to reenable some libcore tests with CC.
Hiroshi Yamauchi [Tue, 8 Mar 2016 00:46:23 +0000 (16:46 -0800)]
Try to reenable some libcore tests with CC.

CL 204125 may have fixed them.

Bug: 26711853
Change-Id: I8c8052520982f80d8466922f3de6d3805073ae26

8 years agoMerge "Unsafe: Recognize intrinsics for 1.8 java.util.concurrent With unit test."
Aart Bik [Tue, 8 Mar 2016 00:05:02 +0000 (00:05 +0000)]
Merge "Unsafe: Recognize intrinsics for 1.8 java.util.concurrent With unit test."
am: 0310fb0279

* commit '0310fb0279d283439633b7c32801f2bb9443dbe1':
  Unsafe: Recognize intrinsics for 1.8 java.util.concurrent With unit test.

8 years agoMerge "Unsafe: Recognize intrinsics for 1.8 java.util.concurrent With unit test."
Aart Bik [Mon, 7 Mar 2016 23:51:12 +0000 (23:51 +0000)]
Merge "Unsafe: Recognize intrinsics for 1.8 java.util.concurrent With unit test."

8 years agoMerge "Add systrace logging to ScopedCodeCacheWrite"
Mathieu Chartier [Mon, 7 Mar 2016 22:47:21 +0000 (22:47 +0000)]
Merge "Add systrace logging to ScopedCodeCacheWrite"
am: 9dd26b2e68

* commit '9dd26b2e68ce2b153fc7c5c6b0ad6458a60ea6f5':
  Add systrace logging to ScopedCodeCacheWrite

8 years agoMerge "runtime: Add CAS and fences to sun.misc.Unsafe"
Igor Murashkin [Mon, 7 Mar 2016 22:45:32 +0000 (22:45 +0000)]
Merge "runtime: Add CAS and fences to sun.misc.Unsafe"
am: 83537c6e2f

* commit '83537c6e2fe6518e0581a8466ef41e90ea7b5516':
  runtime: Add CAS and fences to sun.misc.Unsafe

8 years agoMerge "Add systrace logging to ScopedCodeCacheWrite"
Mathieu Chartier [Mon, 7 Mar 2016 22:45:04 +0000 (22:45 +0000)]
Merge "Add systrace logging to ScopedCodeCacheWrite"

8 years agoAdd systrace logging to ScopedCodeCacheWrite
Mathieu Chartier [Mon, 7 Mar 2016 21:48:08 +0000 (13:48 -0800)]
Add systrace logging to ScopedCodeCacheWrite

Shows if we are taking a long time to mprotect.

Bug: 27502458

(cherry picked from commit 462cd2cfa8c5fbb6548419eb8f27b448a12aca11)

Change-Id: Ic0f24641f5856b13f3b949dcd53dc01ec952d171

8 years agoMerge "runtime: Add CAS and fences to sun.misc.Unsafe"
Igor Murashkin [Mon, 7 Mar 2016 22:37:43 +0000 (22:37 +0000)]
Merge "runtime: Add CAS and fences to sun.misc.Unsafe"

8 years agoMerge changes I70f61fe3,I00376b02
Hiroshi Yamauchi [Mon, 7 Mar 2016 22:29:42 +0000 (22:29 +0000)]
Merge changes I70f61fe3,I00376b02
am: f81f596c58

* commit 'f81f596c586dd0de32d336468e22e6fef8257f9b':
  Revert "ProfilingInfo roots should be visited by the declaring class."
  Revert "Query declaring class before querying IsNative."

8 years agoUnsafe: Recognize intrinsics for 1.8 java.util.concurrent
Aart Bik [Fri, 4 Mar 2016 20:08:31 +0000 (12:08 -0800)]
Unsafe: Recognize intrinsics for 1.8 java.util.concurrent
With unit test.

Rationale:
Recognizing the 1.8 methods as intrinsics is the first step
towards providing efficient implementation on all architectures.
Where not implemented (everywhere for now), the methods fall back
to the JNI native or reference implementation.

NOTE: needs iam's CL first!

bug=26264765

Change-Id: Ife65e81689821a16cbcdd2bb2d35641c6de6aeb6

8 years agoMerge changes I70f61fe3,I00376b02
Hiroshi Yamauchi [Mon, 7 Mar 2016 22:25:09 +0000 (22:25 +0000)]
Merge changes I70f61fe3,I00376b02

* changes:
  Revert "ProfilingInfo roots should be visited by the declaring class."
  Revert "Query declaring class before querying IsNative."

8 years agoRevert "ProfilingInfo roots should be visited by the declaring class."
Hiroshi Yamauchi [Mon, 7 Mar 2016 21:56:33 +0000 (13:56 -0800)]
Revert "ProfilingInfo roots should be visited by the declaring class."

This reverts commit 9a3be989d0aee1a6998e33813c7f70906d27f89a.

Superceded by CL 206308.

Bug: 27435111

8 years agoRevert "Query declaring class before querying IsNative."
Hiroshi Yamauchi [Mon, 7 Mar 2016 21:55:31 +0000 (13:55 -0800)]
Revert "Query declaring class before querying IsNative."

This reverts commit 26329cd578efe9cd7e60c46fef1bfb549062a283.

Superceded by CL 206308.

Bug: 27435111

8 years agoMerge "Increase kDumpWaitTimeout 10x for target builds"
Mathieu Chartier [Mon, 7 Mar 2016 21:32:36 +0000 (21:32 +0000)]
Merge "Increase kDumpWaitTimeout 10x for target builds"
am: 35e0cbce51

* commit '35e0cbce516db91aaa77bfc39f797d9848a091c0':
  Increase kDumpWaitTimeout 10x for target builds

8 years agoMerge "Don\'t use ScopedObjectAccess in Heap::DumpSpaces"
Mathieu Chartier [Mon, 7 Mar 2016 21:32:26 +0000 (21:32 +0000)]
Merge "Don\'t use ScopedObjectAccess in Heap::DumpSpaces"
am: e88430786e

* commit 'e88430786ebad58be2eda97905849c1b8ffd8ed4':
  Don't use ScopedObjectAccess in Heap::DumpSpaces

8 years agoMerge "Increase kDumpWaitTimeout 10x for target builds"
Mathieu Chartier [Mon, 7 Mar 2016 21:29:32 +0000 (21:29 +0000)]
Merge "Increase kDumpWaitTimeout 10x for target builds"

8 years agoMerge "Don't use ScopedObjectAccess in Heap::DumpSpaces"
Mathieu Chartier [Mon, 7 Mar 2016 21:29:15 +0000 (21:29 +0000)]
Merge "Don't use ScopedObjectAccess in Heap::DumpSpaces"

8 years agoIncrease kDumpWaitTimeout 10x for target builds
Mathieu Chartier [Mon, 7 Mar 2016 19:59:01 +0000 (11:59 -0800)]
Increase kDumpWaitTimeout 10x for target builds

New timeout is 100s, the old one was occasionally hit by overloaded
device. This caused a confusing crash in the barrier destructor
since not all the threads had went through the barrier yet.

Bug: 27334917

(cherry picked from commit 74bdab0b14c592053ff71654ab51a0f116114a42)

Change-Id: I24cf6eb6858ad93a47446aa6bbc18942a71b191e

8 years agoDon't use ScopedObjectAccess in Heap::DumpSpaces
Mathieu Chartier [Mon, 7 Mar 2016 18:25:04 +0000 (10:25 -0800)]
Don't use ScopedObjectAccess in Heap::DumpSpaces

ScopedObjectAccess does not work well if the mutator lock is
excusively held while in a suspend thread state. This caused
deadlocks and DCHECK failures.

Bug: 27493316

(cherry picked from commit 03d21bc5bed887243ff6ce3531179185ffd3532c)

Change-Id: I5d67f74fc7082761e45dc1d7778b0ea7fceaaf8f

8 years agoruntime: Add CAS and fences to sun.misc.Unsafe
Igor Murashkin [Fri, 19 Feb 2016 22:56:43 +0000 (14:56 -0800)]
runtime: Add CAS and fences to sun.misc.Unsafe

Bug: 26264765
Change-Id: I68b482e5f9a0a26419af5e58a8d67c8c8a8e01a9

8 years agoMerge "ART: Fix RegTypeCache::FromUnresolvedMerge()."
Vladimir Marko [Mon, 7 Mar 2016 18:38:59 +0000 (18:38 +0000)]
Merge "ART: Fix RegTypeCache::FromUnresolvedMerge()."
am: 810ef37680

* commit '810ef3768021b5fc7b47e663e037e49c46f8c916':
  ART: Fix RegTypeCache::FromUnresolvedMerge().

8 years agoMerge "ART: Fix RegTypeCache::FromUnresolvedMerge()."
Vladimir Marko [Mon, 7 Mar 2016 17:50:17 +0000 (17:50 +0000)]
Merge "ART: Fix RegTypeCache::FromUnresolvedMerge()."

8 years agoMerge "Typo in comment in MIPS32 mterp."
Roland Levillain [Mon, 7 Mar 2016 16:54:56 +0000 (16:54 +0000)]
Merge "Typo in comment in MIPS32 mterp."
am: 03e31fc04a

* commit '03e31fc04a5cf642963ec16311f62071c7d99f21':
  Typo in comment in MIPS32 mterp.

8 years agoMerge "ART: Enable JitProfiling for MIPS64 Mterp"
Alexey Frunze [Mon, 7 Mar 2016 16:54:38 +0000 (16:54 +0000)]
Merge "ART: Enable JitProfiling for MIPS64 Mterp"
am: 6589d4523d

* commit '6589d4523d7a6f408eec36b02bac04437bf56f39':
  ART: Enable JitProfiling for MIPS64 Mterp

8 years agoMerge "Add some debugging for zygote crash."
Nicolas Geoffray [Mon, 7 Mar 2016 16:54:28 +0000 (16:54 +0000)]
Merge "Add some debugging for zygote crash."
am: 93e83d34fd

* commit '93e83d34fd5dad284d561c4180c366b325980f57':
  Add some debugging for zygote crash.

8 years agoMerge "Workaround for broken \'ps\' command on M."
Nicolas Geoffray [Mon, 7 Mar 2016 16:54:17 +0000 (16:54 +0000)]
Merge "Workaround for broken \'ps\' command on M."
am: b5d31327b2

* commit 'b5d31327b2fa96918a255f78a930f64759fa3130':
  Workaround for broken 'ps' command on M.

8 years agoMerge "Support multidex run-test with Jack"
Sebastien Hertz [Mon, 7 Mar 2016 16:54:06 +0000 (16:54 +0000)]
Merge "Support multidex run-test with Jack"
am: 5521889254

* commit '5521889254742401128d3eaa5057d2127a1debe7':
  Support multidex run-test with Jack

8 years agoMerge "Remove useless map in SwapAllocator"
Jean-Philippe Halimi [Mon, 7 Mar 2016 16:53:52 +0000 (16:53 +0000)]
Merge "Remove useless map in SwapAllocator"
am: 8a8c84114b

* commit '8a8c84114b16b8971bc2d3c5c7e0e31470d1a68b':
  Remove useless map in SwapAllocator

8 years agoMerge "Typo in comment in MIPS32 mterp."
Roland Levillain [Mon, 7 Mar 2016 16:50:27 +0000 (16:50 +0000)]
Merge "Typo in comment in MIPS32 mterp."

8 years agoMerge "ART: Enable JitProfiling for MIPS64 Mterp"
Bill Buzbee [Mon, 7 Mar 2016 15:59:30 +0000 (15:59 +0000)]
Merge "ART: Enable JitProfiling for MIPS64 Mterp"

8 years agoMerge "Add some debugging for zygote crash."
Nicolas Geoffray [Mon, 7 Mar 2016 15:52:48 +0000 (15:52 +0000)]
Merge "Add some debugging for zygote crash."

8 years agoAdd some debugging for zygote crash.
Nicolas Geoffray [Mon, 7 Mar 2016 15:44:08 +0000 (15:44 +0000)]
Add some debugging for zygote crash.

bug:27340451
Change-Id: I212567b18959ab4dc7f1dbde2e6d4ff60fe7bed2

8 years agoMerge "Workaround for broken 'ps' command on M."
Nicolas Geoffray [Mon, 7 Mar 2016 14:09:04 +0000 (14:09 +0000)]
Merge "Workaround for broken 'ps' command on M."

8 years agoMerge "Support multidex run-test with Jack"
Sebastien Hertz [Mon, 7 Mar 2016 13:57:09 +0000 (13:57 +0000)]
Merge "Support multidex run-test with Jack"

8 years agoWorkaround for broken 'ps' command on M.
Nicolas Geoffray [Mon, 7 Mar 2016 13:33:37 +0000 (13:33 +0000)]
Workaround for broken 'ps' command on M.

Change-Id: Ifabc6bb2b0e3780306e8a3ad45531c50c7627ed1

8 years agoART: Fix RegTypeCache::FromUnresolvedMerge().
Vladimir Marko [Mon, 7 Mar 2016 12:32:05 +0000 (12:32 +0000)]
ART: Fix RegTypeCache::FromUnresolvedMerge().

Do not assume that the BitVector memory is zero-initialized.

Also fix reg_type_test memory leaks reported by valgrind by
constructing ArenaStack and ScopedArenaAllocator in each
individual test.

Bug: 27500678
Change-Id: Ic6b2b6ebeab2c5c6e993a0232c5d4a0159aabea3

8 years agoMerge "Remove useless map in SwapAllocator"
Vladimir Marko [Mon, 7 Mar 2016 11:32:53 +0000 (11:32 +0000)]
Merge "Remove useless map in SwapAllocator"

8 years agoSupport multidex run-test with Jack
Sebastien Hertz [Thu, 3 Mar 2016 17:08:17 +0000 (18:08 +0100)]
Support multidex run-test with Jack

Updates default-build script to compile multidex run-tests with
Jack. Such test needs a 'multidex.jpp' file specifying how to
partition classes in the output dex files (mainly how to stick some
classes in the classes.dex file and others in a classes2.dex file).

Bug: 19467889
Change-Id: I2500967ba951218c5b03166b3586a576d6dc8749

8 years agoMerge "MIPS64: Implement isInfinite intrinsics."
Chris Larsen [Sat, 5 Mar 2016 03:24:49 +0000 (03:24 +0000)]
Merge "MIPS64: Implement isInfinite intrinsics."
am: e61f01bdc5

* commit 'e61f01bdc5a25cf37d0e43689dd4ed43932556dc':
  MIPS64: Implement isInfinite intrinsics.