OSDN Git Service

android-x86/art.git
9 years agoART: Refactor unstarted runtime
Andreas Gampe [Mon, 9 Mar 2015 19:57:41 +0000 (12:57 -0700)]
ART: Refactor unstarted runtime

Refactor and clean up unstarted runtime.

Bug: 19542228
Change-Id: Ib3e4b3517e06e8242d4fed32ca59419fef553a47

9 years agoMerge "[MIPS64] Fix GenInlinedPeek and GenInlinedPoke functions."
Andreas Gampe [Tue, 10 Mar 2015 16:09:25 +0000 (16:09 +0000)]
Merge "[MIPS64] Fix GenInlinedPeek and GenInlinedPoke functions."

9 years ago[MIPS64] Fix GenInlinedPeek and GenInlinedPoke functions.
Goran Jakovljevic [Tue, 10 Mar 2015 15:44:08 +0000 (16:44 +0100)]
[MIPS64] Fix GenInlinedPeek and GenInlinedPoke functions.

Change-Id: I4994bb2f9075cb3b6488e5a5b88dbed17b80595a

9 years agoMerge "Turn on logging for oat file assistant tests."
Richard Uhler [Tue, 10 Mar 2015 15:42:14 +0000 (15:42 +0000)]
Merge "Turn on logging for oat file assistant tests."

9 years agoTurn on logging for oat file assistant tests.
Richard Uhler [Tue, 10 Mar 2015 15:38:31 +0000 (08:38 -0700)]
Turn on logging for oat file assistant tests.

Temporary to debug test failure.

Change-Id: Idbfcdbdae5e0aa3544b01f1a1ab0297a81d736d5

9 years agoMerge "Remove ThrowLocation."
Nicolas Geoffray [Tue, 10 Mar 2015 15:08:13 +0000 (15:08 +0000)]
Merge "Remove ThrowLocation."

9 years agoRemove ThrowLocation.
Nicolas Geoffray [Tue, 10 Mar 2015 11:03:29 +0000 (11:03 +0000)]
Remove ThrowLocation.

Note that this is a cleanup change, and has no functionality change.
The ThrowLocation had no use anymore.

Change-Id: I3d2126af1dc673cec3a0453ff3d56a172663a5f6

9 years agoMerge "Create OatFileAssistant class for assisting with oat files."
Richard Uhler [Tue, 10 Mar 2015 14:41:25 +0000 (14:41 +0000)]
Merge "Create OatFileAssistant class for assisting with oat files."

9 years agoMerge "JDWP: allocate DebugInvokeReq only when requested"
Sebastien Hertz [Tue, 10 Mar 2015 08:48:46 +0000 (08:48 +0000)]
Merge "JDWP: allocate DebugInvokeReq only when requested"

9 years agoMerge "Trim arenas for JIT"
Mathieu Chartier [Mon, 9 Mar 2015 22:15:18 +0000 (22:15 +0000)]
Merge "Trim arenas for JIT"

9 years agoCreate OatFileAssistant class for assisting with oat files.
Richard Uhler [Thu, 15 Jan 2015 17:37:19 +0000 (09:37 -0800)]
Create OatFileAssistant class for assisting with oat files.

The oat file assistant is used for determining whether dex2oat or
patchoat is needed, for running dex2oat or patchoat as needed to make
an oat file up to date, and to load dex files associated with a given
dex location.

The introduction of the OatFileAssistant class is meant to clean up and
consolidate code related to the management of oat files that was
duplicated and spread across dalvik_system_DexFile.cc and
class_linker.cc.

Bug: 11301553
Change-Id: I0c16027b9bae4570c2c50faa9c14f581c0cbafb8

9 years agoTrim arenas for JIT
Mathieu Chartier [Mon, 9 Mar 2015 18:30:17 +0000 (11:30 -0700)]
Trim arenas for JIT

Moved arena pool into the runtime. Added arena trimming to arena
pool. When called, this madvises the used memory.

Changed the JIT compiler to trim arenas after compilation. Changed
the arena mmap name to dalvik-LinearAlloc.

Native PSS before:
  80353 kB: Native
  80775 kB: Native
  78116 kB: Native
After:
  73357 kB: Native
  70181 kB: Native
  70306 kB: Native

Bug: 17950037
Bug: 17643507
Bug: 19264997

Change-Id: I63e7a898fd6e909c2c677fa57b5917a7b1398930

9 years agoMerge "ART: Fix init-failure graph tool"
Andreas Gampe [Mon, 9 Mar 2015 21:10:14 +0000 (21:10 +0000)]
Merge "ART: Fix init-failure graph tool"

9 years agoART: Fix init-failure graph tool
Andreas Gampe [Mon, 9 Mar 2015 17:36:54 +0000 (10:36 -0700)]
ART: Fix init-failure graph tool

Fix missing entries when the failed class doesn't appear in the
stack trace.

Add coloring for loadLibrary and getProperty.

Change-Id: I35df917ac8b1ada1f6eb2e418fa6ff9ca6b17048

9 years agoMerge "Use the current Java stack instead of the ThrowLocation."
Nicolas Geoffray [Mon, 9 Mar 2015 17:25:25 +0000 (17:25 +0000)]
Merge "Use the current Java stack instead of the ThrowLocation."

9 years agoUse the current Java stack instead of the ThrowLocation.
Nicolas Geoffray [Mon, 9 Mar 2015 14:56:37 +0000 (14:56 +0000)]
Use the current Java stack instead of the ThrowLocation.

The ThrowLocation contains information we can actually retrieve
from the current stack.

Change-Id: I7e5b2f519f95830c457cb31ea10a581aa9c973ee

9 years agoJDWP: allocate DebugInvokeReq only when requested
Sebastien Hertz [Wed, 25 Feb 2015 14:05:59 +0000 (15:05 +0100)]
JDWP: allocate DebugInvokeReq only when requested

Only allocates thread-local DebugInvokeReq when the debugger requests
a thread to invoke a method. The JDWP thread allocates that structure
then attaches it to the target thread. When the thread is resumed, it
executes the method. Once the invocation completes, the thread
detaches the DebugInvokeReq, signals the JDWP thread then suspends.
Finally, the JDWP thread wakes up, prepares the reply with the invoke
result (or exception) and deallocates the DebugInvokeReq.

Also ensures GC safety for object returned by the invoke. We add the
object to the JDWP object registry right after the invoke. We now
reference that object with a JDWP ObjectID instead of an Object* in
the DebugInvokeReq struct. This prevent from accessing a stale
reference if the GC runs and moves the Object*.

This CL includes the following changes:
- Move former DebugInvokeReq::ready flag to
  Thread::tls_32bit_sized_values::ready_for_debug_invoke. It's needed
  to know whether a thread has been suspended by an event, thus ready
  to invoke a method from the debugger.
- Remove DebugInvokeReq::invoke_needed: we now test if we attached a
  DebugInvokeReq* to the thread.
- Rename misleading FinishMethod function to RequestMethod.

Bug: 19142632
Bug: 18166750
Change-Id: I351fb4eb94bfe69fcafb544d21d55ff35a033000

9 years agoMerge "Fix run-test with JIT enabled"
Sebastien Hertz [Mon, 9 Mar 2015 14:07:15 +0000 (14:07 +0000)]
Merge "Fix run-test with JIT enabled"

9 years agoFix run-test with JIT enabled
Sebastien Hertz [Mon, 9 Mar 2015 13:57:48 +0000 (14:57 +0100)]
Fix run-test with JIT enabled

Uses -Xusejit:true instead of -Xjit.

Bug: 17950037
Change-Id: I8280245e3e2aeced5927ade1632b7a110b040136

9 years agoMerge "Revert "Revert "More Makefile fun for --debuggable."""
Nicolas Geoffray [Mon, 9 Mar 2015 13:57:12 +0000 (13:57 +0000)]
Merge "Revert "Revert "More Makefile fun for --debuggable."""

9 years agoRevert "Revert "More Makefile fun for --debuggable.""
Nicolas Geoffray [Mon, 9 Mar 2015 12:21:26 +0000 (12:21 +0000)]
Revert "Revert "More Makefile fun for --debuggable.""

This reverts commit 9728a930fdf717cca60b48d9c2b715d0eed497fd.

Change-Id: Ieca964a793e58f11931f78f50be47a4a9f0dc21f

9 years agoMerge "Revert "More Makefile fun for --debuggable.""
Nicolas Geoffray [Mon, 9 Mar 2015 12:14:25 +0000 (12:14 +0000)]
Merge "Revert "More Makefile fun for --debuggable.""

9 years agoMerge "Revert "Fix braino in Makefile.""
Nicolas Geoffray [Mon, 9 Mar 2015 12:14:12 +0000 (12:14 +0000)]
Merge "Revert "Fix braino in Makefile.""

9 years agoRevert "Fix braino in Makefile."
Nicolas Geoffray [Mon, 9 Mar 2015 12:14:02 +0000 (12:14 +0000)]
Revert "Fix braino in Makefile."

This reverts commit 64657d2d840e5d4e6b4b71d5df6ee0fcc4a8afab.

Change-Id: I5b778027538a4247cf51eff338220328e741074f

9 years agoRevert "More Makefile fun for --debuggable."
Nicolas Geoffray [Mon, 9 Mar 2015 12:13:43 +0000 (12:13 +0000)]
Revert "More Makefile fun for --debuggable."

This reverts commit bd648cd3aef1ce82aaaa85924b1178a7f499cc29.

Change-Id: I9be508730dc5c25b9d08f914c5628e88bc4aa15b

9 years agoMerge "Fix braino in Makefile."
Nicolas Geoffray [Mon, 9 Mar 2015 11:50:32 +0000 (11:50 +0000)]
Merge "Fix braino in Makefile."

9 years agoFix braino in Makefile.
Nicolas Geoffray [Mon, 9 Mar 2015 11:39:12 +0000 (11:39 +0000)]
Fix braino in Makefile.

They are such a joy to work with.

Change-Id: I1a982c97fb9e2e9f34f921e7f6b481988a57f858

9 years agoMerge "Compute the right catch location for the debugger."
Nicolas Geoffray [Mon, 9 Mar 2015 10:11:03 +0000 (10:11 +0000)]
Merge "Compute the right catch location for the debugger."

9 years agoCompute the right catch location for the debugger.
Nicolas Geoffray [Thu, 5 Mar 2015 10:40:17 +0000 (10:40 +0000)]
Compute the right catch location for the debugger.

Also remove tls ThrowLocation, it is not needed anymore.

Change-Id: I78fddf09ce968ca475e39c17fa76d699c589c8d9

9 years agoMerge "More Makefile fun for --debuggable."
Nicolas Geoffray [Mon, 9 Mar 2015 09:13:26 +0000 (09:13 +0000)]
Merge "More Makefile fun for --debuggable."

9 years agoMerge "ART: Allow arraycopy with int[] in unstarted runtime"
Andreas Gampe [Sat, 7 Mar 2015 01:27:52 +0000 (01:27 +0000)]
Merge "ART: Allow arraycopy with int[] in unstarted runtime"

9 years agoART: Allow arraycopy with int[] in unstarted runtime
Andreas Gampe [Sat, 7 Mar 2015 01:11:47 +0000 (17:11 -0800)]
ART: Allow arraycopy with int[] in unstarted runtime

Overlooked in the condition, the actual code was already there.

Bug: 19542228
Change-Id: I30caf77b345cb9bdb1f54c28bf4d42852c9a3298

9 years agoMerge "Only allocate collectors if we may use them"
Mathieu Chartier [Sat, 7 Mar 2015 01:09:36 +0000 (01:09 +0000)]
Merge "Only allocate collectors if we may use them"

9 years agoOnly allocate collectors if we may use them
Mathieu Chartier [Fri, 6 Mar 2015 23:28:34 +0000 (15:28 -0800)]
Only allocate collectors if we may use them

I believe most of the savings come from not allocating the concurrent
copying 8MB MarkQueue.

Before AOSP hh native PSS:
    72653 kB: Native
    72998 kB: Native
    72882 kB: Native

After AOSP hh native PSS:
    64823 kB: Native
    65986 kB: Native
    64219 kB: Native

Bug: 17643507
Change-Id: Ic5a8e753beca36142c1bf36be6311051f7c78e47

9 years agoMerge "Initial support for quick compiler on MIPS64r6."
Andreas Gampe [Fri, 6 Mar 2015 21:06:59 +0000 (21:06 +0000)]
Merge "Initial support for quick compiler on MIPS64r6."

9 years agoMerge "Fix failing hprof DCHECK"
Mathieu Chartier [Fri, 6 Mar 2015 21:06:26 +0000 (21:06 +0000)]
Merge "Fix failing hprof DCHECK"

9 years agoInitial support for quick compiler on MIPS64r6.
Maja Gagic [Tue, 24 Feb 2015 15:55:04 +0000 (16:55 +0100)]
Initial support for quick compiler on MIPS64r6.

Change-Id: I6f43027b84e4a98ea320cddb972d9cf39bf7c4f8

9 years agoFix failing hprof DCHECK
Mathieu Chartier [Fri, 6 Mar 2015 20:45:44 +0000 (12:45 -0800)]
Fix failing hprof DCHECK

Benign.

Bug: 19627999
Change-Id: I20f3d36ffa1efaf23b40b6290c042df81eca2fea

9 years agoMerge "Fix byte and char Get32"
Mathieu Chartier [Fri, 6 Mar 2015 19:47:13 +0000 (19:47 +0000)]
Merge "Fix byte and char Get32"

9 years agoFix byte and char Get32
Mathieu Chartier [Fri, 6 Mar 2015 19:33:36 +0000 (11:33 -0800)]
Fix byte and char Get32

8 bit and 16 bit fields aren't necessarily 32 bit aligned due to
field packing. This was causing SIGBUS for hprof dumping some apps.

Bug: 19627999

(cherry picked from commit 2ff8da6a4d44bcf6a72dca1b5294a72297c5ce26)

Change-Id: If549412fc4d62c55bb6a46f11658fc60b822a27e

9 years agoMerge "Do not dump memory usage if driver was never created"
Brian Carlstrom [Fri, 6 Mar 2015 17:19:52 +0000 (17:19 +0000)]
Merge "Do not dump memory usage if driver was never created"

9 years agoMore Makefile fun for --debuggable.
Nicolas Geoffray [Fri, 6 Mar 2015 11:43:15 +0000 (11:43 +0000)]
More Makefile fun for --debuggable.

Change-Id: Icd4a4cf53907bf04b0d45211e264c9985045b55c

9 years agoDo not dump memory usage if driver was never created
Brian Carlstrom [Fri, 6 Mar 2015 16:44:45 +0000 (08:44 -0800)]
Do not dump memory usage if driver was never created

Bug: https://code.google.com/p/android/issues/detail?id=158593
Change-Id: I8084f9ac823910aa11f854f3e764240741fbf0d5

9 years agoMerge "Revert "[optimizing] Enable x86 long support.""
Nicolas Geoffray [Fri, 6 Mar 2015 16:10:31 +0000 (16:10 +0000)]
Merge "Revert "[optimizing] Enable x86 long support.""

9 years agoRevert "[optimizing] Enable x86 long support."
Nicolas Geoffray [Fri, 6 Mar 2015 16:10:14 +0000 (16:10 +0000)]
Revert "[optimizing] Enable x86 long support."

Few libcore failures.

This reverts commit b4ba354cf8d22b261205494875cc014f18587b50.

Change-Id: I4a28d853e730dff9b69aec9555505803cf2fcd63

9 years agoMerge "Opt compiler: Clean the use of `virtual` and `OVERRIDE`."
Roland Levillain [Fri, 6 Mar 2015 15:45:24 +0000 (15:45 +0000)]
Merge "Opt compiler: Clean the use of `virtual` and `OVERRIDE`."

9 years agoOpt compiler: Clean the use of `virtual` and `OVERRIDE`.
Alexandre Rames [Fri, 6 Mar 2015 13:55:35 +0000 (13:55 +0000)]
Opt compiler: Clean the use of `virtual` and `OVERRIDE`.

Change-Id: I806ec522b979334cee8f344fc95e8660c019160a

9 years agoMerge "Extend compiler/optimizing/stack_map_test.cc."
Roland Levillain [Fri, 6 Mar 2015 11:47:03 +0000 (11:47 +0000)]
Merge "Extend compiler/optimizing/stack_map_test.cc."

9 years agoMerge "[optimizing] Enable x86 long support."
Nicolas Geoffray [Fri, 6 Mar 2015 11:42:25 +0000 (11:42 +0000)]
Merge "[optimizing] Enable x86 long support."

9 years ago[optimizing] Enable x86 long support.
Nicolas Geoffray [Thu, 5 Mar 2015 11:28:58 +0000 (11:28 +0000)]
[optimizing] Enable x86 long support.

Change-Id: I9006972a65a1f191c45691104a960366747f9d16

9 years agoMerge "ART: Enable the use of relative addresses in the arm64 disassembler."
Roland Levillain [Fri, 6 Mar 2015 10:56:41 +0000 (10:56 +0000)]
Merge "ART: Enable the use of relative addresses in the arm64 disassembler."

9 years agoART: Enable the use of relative addresses in the arm64 disassembler.
Alexandre Rames [Fri, 6 Mar 2015 09:11:12 +0000 (09:11 +0000)]
ART: Enable the use of relative addresses in the arm64 disassembler.

Also, only keep register aliases for the link register 'lr' and the
thread register 'tr' in the arm64 disassembler. Other aliases are not
very important, and this way we don't have to provide aliases
specialised for Quick or Optimizing.

Change-Id: Ie7a04910f0c587710a0cf2648203d7e89eab5d1f

9 years agoMerge "Follow up 137982"
Sebastien Hertz [Fri, 6 Mar 2015 05:32:51 +0000 (05:32 +0000)]
Merge "Follow up 137982"

9 years agoMerge "ART: Add option to abort dex2oat on hard failure"
Andreas Gampe [Fri, 6 Mar 2015 02:53:41 +0000 (02:53 +0000)]
Merge "ART: Add option to abort dex2oat on hard failure"

9 years agoMerge "ART: Fix Cmdline Parser test"
Andreas Gampe [Fri, 6 Mar 2015 02:52:55 +0000 (02:52 +0000)]
Merge "ART: Fix Cmdline Parser test"

9 years agoART: Fix Cmdline Parser test
Andreas Gampe [Fri, 6 Mar 2015 02:48:52 +0000 (18:48 -0800)]
ART: Fix Cmdline Parser test

Follow-up to https://android-review.googlesource.com/138593.

Bug: 17950037
Change-Id: Ie8b796262989bf8374f5cecff15a1f2dad2cb3c1

9 years agoART: Add option to abort dex2oat on hard failure
Andreas Gampe [Thu, 5 Mar 2015 21:08:45 +0000 (13:08 -0800)]
ART: Add option to abort dex2oat on hard failure

Add an option that aborts dex2oat when a hard verifier failure occurs.

Bug: 19606409
Change-Id: I53195284e22fe6207274101e85745af763c06271

9 years agoMerge "Rename -Xjit / -Xnojit options to -Xusejit:<boolean>"
Mathieu Chartier [Fri, 6 Mar 2015 01:29:34 +0000 (01:29 +0000)]
Merge "Rename -Xjit / -Xnojit options to -Xusejit:<boolean>"

9 years agoRename -Xjit / -Xnojit options to -Xusejit:<boolean>
Mathieu Chartier [Fri, 6 Mar 2015 01:12:54 +0000 (17:12 -0800)]
Rename -Xjit / -Xnojit options to -Xusejit:<boolean>

Bug: 17950037
Change-Id: I9182820240c8bbc2fa4767f6361ab3b7f1083a31

9 years agoMerge "Fix some incorrect IsCompiler instead of IsAotCompiler"
Mathieu Chartier [Thu, 5 Mar 2015 21:45:26 +0000 (21:45 +0000)]
Merge "Fix some incorrect IsCompiler instead of IsAotCompiler"

9 years agoFix some incorrect IsCompiler instead of IsAotCompiler
Mathieu Chartier [Thu, 5 Mar 2015 21:20:54 +0000 (13:20 -0800)]
Fix some incorrect IsCompiler instead of IsAotCompiler

Fixes jdwp related issues (DDMS) when JIT is enabled.

Bug: 19623297
Change-Id: I36139c70a97b529135febcf01b227e7ab9affacc

9 years agoMerge "ART: AddVectorReduce should store result in memory carefully"
Bill Buzbee [Thu, 5 Mar 2015 19:28:40 +0000 (19:28 +0000)]
Merge "ART: AddVectorReduce should store result in memory carefully"

9 years agoFollow up 137982
Sebastien Hertz [Wed, 4 Mar 2015 18:03:48 +0000 (19:03 +0100)]
Follow up 137982

Updates comment explaining why we sort types by name in run-test
031-class-attributes.

Bug: 19499481
Change-Id: I1ee425a24dffd55d134effc6857e2c0ca368422a

9 years agoMerge "ART: Fix test breakage"
David Brazdil [Thu, 5 Mar 2015 15:57:42 +0000 (15:57 +0000)]
Merge "ART: Fix test breakage"

9 years agoART: Fix test breakage
David Brazdil [Thu, 5 Mar 2015 15:34:41 +0000 (15:34 +0000)]
ART: Fix test breakage

Recent commit changed the direction of iteration over safepoints in
the register allocator but contained a bug that skipped some of them
at the boundaries of interval siblings. This patch fixes the bug.

Change-Id: Ia7d4892536b5198e01c9bc3034f448227794ff72

9 years agoExtend compiler/optimizing/stack_map_test.cc.
Roland Levillain [Thu, 5 Mar 2015 12:41:42 +0000 (12:41 +0000)]
Extend compiler/optimizing/stack_map_test.cc.

Change-Id: I6f8c3186683210a5162cbf4f15361a4c494495c9

9 years agoMerge "ART: Optimize iteration of safepoints"
David Brazdil [Thu, 5 Mar 2015 14:29:48 +0000 (14:29 +0000)]
Merge "ART: Optimize iteration of safepoints"

9 years agoART: Optimize iteration of safepoints
David Brazdil [Tue, 3 Mar 2015 10:44:24 +0000 (10:44 +0000)]
ART: Optimize iteration of safepoints

The LiveInterval::Covers method is optimized for multiple calls with
non-decreasing positions. This patch reverts the order of iteration
over safepoints in RegisterAllocator::ConnectSiblings to capitalize
on this effect.

Change-Id: Ieb70eb9d5c0a06ee79379aab6c87cb3290c15bf7

9 years agoMerge "[optimizing] Use callee-save registers for x86"
Nicolas Geoffray [Thu, 5 Mar 2015 11:22:00 +0000 (11:22 +0000)]
Merge "[optimizing] Use callee-save registers for x86"

9 years ago[optimizing] Use callee-save registers for x86
Mark Mendell [Wed, 4 Mar 2015 20:42:45 +0000 (15:42 -0500)]
[optimizing] Use callee-save registers for x86

Add ESI, EDI, EBP to available registers for non-baseline mode. Ensure
that they aren't used when byte addressible registers are needed.

Change-Id: Ie7130d4084c2ae9cfcd1e47c26eb3e5dcac1ebd6
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
9 years agoMerge "ART: Fix compile-time-init fail"
Andreas Gampe [Thu, 5 Mar 2015 07:03:27 +0000 (07:03 +0000)]
Merge "ART: Fix compile-time-init fail"

9 years agoART: Fix compile-time-init fail
Andreas Gampe [Thu, 5 Mar 2015 06:46:35 +0000 (22:46 -0800)]
ART: Fix compile-time-init fail

It is possible that a class that isn't itself marked as an image
class and would be skipped for compile-time-initialization by the
compiler driver is initialized when initializing a second class
that is an image class.

If the second class only depended on the first class during
initialization, e.g., to read field values, the compiler driver
may discard the class object (not reachable from image classes),
but record the oat class status as initialized (as it has been).

In that case we miss the initialization when we load the class at
runtime.

Ensure that all initialized classes with a class initializer are
considered image classes and retained.

Bug: 19323020
Change-Id: I4e537f328d9a4ea23ed5ff7166d532b8855f7acd

9 years agoMerge "ART: Report zip opening error"
Andreas Gampe [Wed, 4 Mar 2015 23:45:29 +0000 (23:45 +0000)]
Merge "ART: Report zip opening error"

9 years agoART: Report zip opening error
Andreas Gampe [Wed, 4 Mar 2015 23:38:51 +0000 (15:38 -0800)]
ART: Report zip opening error

Do not swallow the error message from ZipArchive::OpenFromFd.

Bug: 19574093
Change-Id: I14ea771e63b7bc3e8051012a841e66b9e894aa3a

9 years agoMerge "Include what we use."
Dan Albert [Wed, 4 Mar 2015 23:12:02 +0000 (23:12 +0000)]
Merge "Include what we use."

9 years agoInclude what we use.
Dan Albert [Wed, 4 Mar 2015 23:06:16 +0000 (15:06 -0800)]
Include what we use.

Newest libc++ update fixes some of the header cruft.

Change-Id: Ic5019ffcb272274ac3b21627218d65a887074458

9 years agoMerge "ART: Do not produce CFI when not asked for"
Andreas Gampe [Wed, 4 Mar 2015 23:00:18 +0000 (23:00 +0000)]
Merge "ART: Do not produce CFI when not asked for"

9 years agoART: Do not produce CFI when not asked for
Andreas Gampe [Wed, 4 Mar 2015 22:00:56 +0000 (14:00 -0800)]
ART: Do not produce CFI when not asked for

Insignificant time savings on the host, but also reduces native
allocation size.

Change-Id: Iea3d335e5375a0076306059d094e5b994e24b9e6

9 years agoMerge "[optimizing] Improve x86/x86_64 bound check code"
Andreas Gampe [Wed, 4 Mar 2015 22:17:56 +0000 (22:17 +0000)]
Merge "[optimizing] Improve x86/x86_64 bound check code"

9 years agoMerge "ART: Add debuggable compiler flag"
Andreas Gampe [Wed, 4 Mar 2015 21:12:27 +0000 (21:12 +0000)]
Merge "ART: Add debuggable compiler flag"

9 years agoMerge "ART: Fix missing handles"
Andreas Gampe [Wed, 4 Mar 2015 21:05:59 +0000 (21:05 +0000)]
Merge "ART: Fix missing handles"

9 years agoMerge "Fix bce gtest."
Mingyao Yang [Wed, 4 Mar 2015 20:22:26 +0000 (20:22 +0000)]
Merge "Fix bce gtest."

9 years agoART: Add debuggable compiler flag
Andreas Gampe [Mon, 2 Mar 2015 22:07:33 +0000 (14:07 -0800)]
ART: Add debuggable compiler flag

Add a flag to compiler options that shows debuggability.

Change-Id: Id17ec72babe2ee88713a0d274eff86508de30666

9 years agoART: Fix missing handles
Andreas Gampe [Wed, 4 Mar 2015 01:48:39 +0000 (17:48 -0800)]
ART: Fix missing handles

Follow-up to https://android-review.googlesource.com/137010.

Change-Id: Ie97bd01f3cd6eeef9ae38fd189b933b905832d52

9 years ago[optimizing] Improve x86/x86_64 bound check code
Mark Mendell [Wed, 4 Mar 2015 20:12:59 +0000 (15:12 -0500)]
[optimizing] Improve x86/x86_64 bound check code

Don't force a constant index into a register just to compare to the
array size.  Allow a constant, and compare the constant to the size.

Change-Id: I1c5732fbd42e63f7eac5c6219a19e9c431c22664
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
9 years agoFix bce gtest.
Mingyao Yang [Wed, 4 Mar 2015 20:10:34 +0000 (12:10 -0800)]
Fix bce gtest.

Change-Id: I8b974b68bbebef704fa3c8a073f2920f8a78d1fa

9 years agoMerge "Make BCE a no-op if there is no array access."
Mingyao Yang [Wed, 4 Mar 2015 19:30:50 +0000 (19:30 +0000)]
Merge "Make BCE a no-op if there is no array access."

9 years agoMerge "Update run-test 031-class-attributes"
Sebastien Hertz [Wed, 4 Mar 2015 16:55:21 +0000 (16:55 +0000)]
Merge "Update run-test 031-class-attributes"

9 years agoUpdate run-test 031-class-attributes
Sebastien Hertz [Wed, 4 Mar 2015 15:45:31 +0000 (16:45 +0100)]
Update run-test 031-class-attributes

Ensure types are printed in alphabetical order.

Bug: 19499481
Change-Id: Ia14d2529f8031bc4c2bfb8911fdebebf97638dc9

9 years agoMerge "Change how we report exceptions to the debugger."
Nicolas Geoffray [Wed, 4 Mar 2015 11:13:16 +0000 (11:13 +0000)]
Merge "Change how we report exceptions to the debugger."

9 years agoMerge "Fix arm64 build."
Nicolas Geoffray [Wed, 4 Mar 2015 10:29:22 +0000 (10:29 +0000)]
Merge "Fix arm64 build."

9 years agoFix arm64 build.
Nicolas Geoffray [Wed, 4 Mar 2015 10:28:04 +0000 (10:28 +0000)]
Fix arm64 build.

Change-Id: Ib6babc1c6e8f2e78badc93cfcf89950e53f71bbb

9 years agoMerge "Switch from memalign to posix_memalign for Mac build"
Brian Carlstrom [Wed, 4 Mar 2015 05:40:05 +0000 (05:40 +0000)]
Merge "Switch from memalign to posix_memalign for Mac build"

9 years agoSwitch from memalign to posix_memalign for Mac build
Brian Carlstrom [Wed, 4 Mar 2015 05:21:29 +0000 (21:21 -0800)]
Switch from memalign to posix_memalign for Mac build

Change-Id: Id320015ea3999605954f53b5e266f53e968c7065

9 years agoART: AddVectorReduce should store result in memory carefully
Maxim Kazantsev [Tue, 24 Feb 2015 09:07:55 +0000 (15:07 +0600)]
ART: AddVectorReduce should store result in memory carefully

When generating AddVectorReduce, in some cirsumstances we
add value reduced from vector directly to memory. We must
ensure that local LIR optimizations are aware about it.

Change-Id: I8fe19939f67dcd184b08f63026b0da18007d34b8

9 years agoMake BCE a no-op if there is no array access.
Mingyao Yang [Mon, 2 Mar 2015 23:14:13 +0000 (15:14 -0800)]
Make BCE a no-op if there is no array access.

Change-Id: I8456182808c1dbaa0c0ae1b8c2e94bb17baf5f29

9 years agoMerge "Reserve bits in the lock word for read barriers."
Hiroshi Yamauchi [Wed, 4 Mar 2015 01:37:11 +0000 (01:37 +0000)]
Merge "Reserve bits in the lock word for read barriers."

9 years agoReserve bits in the lock word for read barriers.
Hiroshi Yamauchi [Tue, 10 Feb 2015 01:11:42 +0000 (17:11 -0800)]
Reserve bits in the lock word for read barriers.

This prepares for the CC collector to use the standard object header
model by storing the read barrier state in the lock word.

Bug: 19355854
Bug: 12687968
Change-Id: Ia7585662dd2cebf0479a3e74f734afe5059fb70f

9 years agoMerge "Wait for threads to finish unregistering"
Mathieu Chartier [Wed, 4 Mar 2015 00:46:47 +0000 (00:46 +0000)]
Merge "Wait for threads to finish unregistering"

9 years agoWait for threads to finish unregistering
Mathieu Chartier [Tue, 3 Mar 2015 21:51:04 +0000 (13:51 -0800)]
Wait for threads to finish unregistering

There was a race where Thread::join would return before the thread was
unregistered. This caused a problem with Daemons.stop since the thread
list could get deleted before the daemon thread was removed from list_.
This caused occasional "Request to unregister unattached thread"
errors and warnings.

The fix is to wait until threads finish registering before destroying
the thread list. The only threads which can be unregistering at this
point are the daemons we stopped earlier during the runtime shutdown
process. The issue is that thread join finishes before we remove the
thread from the thread list.

Also some cleanup.

Bug: 18713034
Change-Id: I8921122fe8462643a6b814b5f00632481e3831fb