OSDN Git Service

android-x86/art.git
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 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 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

9 years agoMerge "Add a change that should be part of "enhance gvn for commutative ops.""
Mingyao Yang [Wed, 4 Mar 2015 00:19:59 +0000 (00:19 +0000)]
Merge "Add a change that should be part of "enhance gvn for commutative ops.""

9 years agoAdd a change that should be part of "enhance gvn for commutative ops."
Mingyao Yang [Wed, 4 Mar 2015 00:15:23 +0000 (16:15 -0800)]
Add a change that should be part of "enhance gvn for commutative ops."

Change-Id: Id1a30afb095b2c7e27a4ef8a1ef7293022c1aaed

9 years agoMerge "Remove old build options from .gitignore"
Brian Carlstrom [Wed, 4 Mar 2015 00:05:52 +0000 (00:05 +0000)]
Merge "Remove old build options from .gitignore"

9 years agoRemove old build options from .gitignore
Brian Carlstrom [Tue, 3 Mar 2015 23:31:15 +0000 (15:31 -0800)]
Remove old build options from .gitignore

Change-Id: I1f1eaef57e3a3b4109cc6b312ecfa429d7797b92

9 years agoMerge "Opt compiler: enhance gvn for commutative ops."
Mingyao Yang [Tue, 3 Mar 2015 23:37:31 +0000 (23:37 +0000)]
Merge "Opt compiler: enhance gvn for commutative ops."

9 years agoMerge "Remove ART_SMALL_MODE ifdefs."
Jeff Hao [Tue, 3 Mar 2015 23:32:31 +0000 (23:32 +0000)]
Merge "Remove ART_SMALL_MODE ifdefs."

9 years agoOpt compiler: enhance gvn for commutative ops.
Mingyao Yang [Wed, 25 Feb 2015 19:28:05 +0000 (11:28 -0800)]
Opt compiler: enhance gvn for commutative ops.

Change-Id: I415b50d58b30cab4ec38077be22373eb9598ec40

9 years agoMerge "Fix build lint issue."
Brian Carlstrom [Tue, 3 Mar 2015 21:05:14 +0000 (21:05 +0000)]
Merge "Fix build lint issue."

9 years agoFix build lint issue.
Brian Carlstrom [Tue, 3 Mar 2015 20:53:49 +0000 (12:53 -0800)]
Fix build lint issue.

Change-Id: I53d5bdefdf79b376f99dfaa17591a0d2103921d5

9 years agoMerge "bce: add support to narrow two MonotonicValueRange's at the same time."
Mingyao Yang [Tue, 3 Mar 2015 19:53:14 +0000 (19:53 +0000)]
Merge "bce: add support to narrow two MonotonicValueRange's at the same time."

9 years agoChange how we report exceptions to the debugger.
Nicolas Geoffray [Thu, 26 Feb 2015 10:56:09 +0000 (10:56 +0000)]
Change how we report exceptions to the debugger.

This is only a refactoring/cleanup. Bug fixes with respect
to catch location, and more cleanups will follow.

Change-Id: I30d3c6260b0c8f8115a811621397225b88f2063a

9 years agoMerge "Fix generic JNI stubs to not discard the Java native frame."
Nicolas Geoffray [Tue, 3 Mar 2015 17:28:05 +0000 (17:28 +0000)]
Merge "Fix generic JNI stubs to not discard the Java native frame."

9 years agoFix generic JNI stubs to not discard the Java native frame.
Nicolas Geoffray [Tue, 3 Mar 2015 14:28:35 +0000 (14:28 +0000)]
Fix generic JNI stubs to not discard the Java native frame.

Change-Id: Ic856b442fdde5ce91673fc5856eb0dfc84c75d28

9 years agoMerge "Follow-up 128393"
Sebastien Hertz [Tue, 3 Mar 2015 13:39:30 +0000 (13:39 +0000)]
Merge "Follow-up 128393"

9 years agoFollow-up 128393
Sebastien Hertz [Tue, 3 Mar 2015 11:16:13 +0000 (12:16 +0100)]
Follow-up 128393

Avoids false warning when initializing the exception's class by
marking the transaction aborted after throwing the InternalError
exception.

Also uses VLOG(compiler) to print the warning since it's only useful
when investigating ahead-of-time class initialization.

Bug: 19202032
Change-Id: I3c53639cbb888086ad345d668d1e5b73c5aaf861

9 years agoMerge "Tests use libarttest.so, so does not work on ndebug."
Nicolas Geoffray [Tue, 3 Mar 2015 12:52:54 +0000 (12:52 +0000)]
Merge "Tests use libarttest.so, so does not work on ndebug."

9 years agoMerge "Revert GetThisObject change."
Nicolas Geoffray [Tue, 3 Mar 2015 12:51:37 +0000 (12:51 +0000)]
Merge "Revert GetThisObject change."

9 years agoRevert GetThisObject change.
Nicolas Geoffray [Tue, 3 Mar 2015 12:44:53 +0000 (12:44 +0000)]
Revert GetThisObject change.

Code was changed to use sizeof(void*) instead of the runtime
instruction set pointer size, which caused host compilation crashes.

Change-Id: I3e59897620d6e55b43d6d76b5a0d6d0487b8081a

9 years agoTests use libarttest.so, so does not work on ndebug.
Nicolas Geoffray [Tue, 3 Mar 2015 12:43:45 +0000 (12:43 +0000)]
Tests use libarttest.so, so does not work on ndebug.

Change-Id: I0435e0a62592bd0f449bb52517efa9ac55ec8913

9 years agoMerge "Stack support for Optimizing compiler"
Nicolas Geoffray [Tue, 3 Mar 2015 11:25:38 +0000 (11:25 +0000)]
Merge "Stack support for Optimizing compiler"

9 years agoStack support for Optimizing compiler
Sebastien Hertz [Tue, 20 Jan 2015 15:06:43 +0000 (16:06 +0100)]
Stack support for Optimizing compiler

Allows to read/write DEX registers from physical register or stack
location when the method is compiled with the Optimizing compiler.

Required fixing arm and arm64 JNI compiler by saving floating
point registers.

Bug: 18547544
Change-Id: I401579f251d1c0a130f6cf4a93a960cdcd7518f5

9 years agoMerge "[optimizing compiler] x86 goodness"
Nicolas Geoffray [Tue, 3 Mar 2015 10:46:42 +0000 (10:46 +0000)]
Merge "[optimizing compiler] x86 goodness"

9 years agoRemove ART_SMALL_MODE ifdefs.
Jeff Hao [Mon, 23 Feb 2015 23:32:43 +0000 (15:32 -0800)]
Remove ART_SMALL_MODE ifdefs.

WITH_ART_SMART_MODE now sets --compiler-filter options instead.
Has a corresponding change to /build

Bug: 19460766
Change-Id: I295ebbd49caa5341834141f7c2bbf8df830131ed

9 years agoMerge "bce: handle a pattern for circular buffer"
Mingyao Yang [Tue, 3 Mar 2015 00:02:26 +0000 (00:02 +0000)]
Merge "bce: handle a pattern for circular buffer"

9 years agobce: handle a pattern for circular buffer
Mingyao Yang [Fri, 27 Feb 2015 22:43:53 +0000 (14:43 -0800)]
bce: handle a pattern for circular buffer

Change-Id: Ie54bdd7c044af58deea0d0addaaa8186cabf3532

9 years agoMerge "ART: Cache last returned range in LiveInterval::Covers"
David Brazdil [Mon, 2 Mar 2015 23:16:24 +0000 (23:16 +0000)]
Merge "ART: Cache last returned range in LiveInterval::Covers"

9 years agoMerge "Fix AddCurrentRuntimeFeaturesAsDex2OatArguments jit handling"
Mathieu Chartier [Mon, 2 Mar 2015 21:10:09 +0000 (21:10 +0000)]
Merge "Fix AddCurrentRuntimeFeaturesAsDex2OatArguments jit handling"

9 years agoMerge "Fix bad variable expansion"
Mathieu Chartier [Mon, 2 Mar 2015 21:09:57 +0000 (21:09 +0000)]
Merge "Fix bad variable expansion"

9 years agoFix bad variable expansion
Mathieu Chartier [Mon, 2 Mar 2015 19:53:08 +0000 (11:53 -0800)]
Fix bad variable expansion

Bug: 19524713
Change-Id: I6537bc650e2690e5902576fd0e5a55142d91182a

9 years agoMerge "ART: Move DexFile vector to Java array"
Andreas Gampe [Mon, 2 Mar 2015 20:57:47 +0000 (20:57 +0000)]
Merge "ART: Move DexFile vector to Java array"

9 years agoMerge "Add support for .bss section in oat files."
Vladimir Marko [Mon, 2 Mar 2015 20:10:51 +0000 (20:10 +0000)]
Merge "Add support for .bss section in oat files."

9 years agoFix AddCurrentRuntimeFeaturesAsDex2OatArguments jit handling
Mathieu Chartier [Mon, 2 Mar 2015 19:49:22 +0000 (11:49 -0800)]
Fix AddCurrentRuntimeFeaturesAsDex2OatArguments jit handling

Now jit passes interpret filter to dex2oat.

Bug: 19550422
Change-Id: I932c7d1084acbb9d356ad0f5534a270e2ca2d6ec

9 years agoMerge "ART: Allow more operations in unstarted Runtime"
Andreas Gampe [Mon, 2 Mar 2015 18:18:04 +0000 (18:18 +0000)]
Merge "ART: Allow more operations in unstarted Runtime"

9 years agoART: Allow more operations in unstarted Runtime
Andreas Gampe [Sat, 28 Feb 2015 04:08:34 +0000 (20:08 -0800)]
ART: Allow more operations in unstarted Runtime

To compile-time initialize more classes, have more dedicated code
for special methods.

Bug: 19542228
Bug: 19548084
Change-Id: Iad37c1c58302b04fa3a5a904a923da388a079cd7

9 years agoAdd support for .bss section in oat files.
Vladimir Marko [Wed, 25 Feb 2015 12:02:49 +0000 (12:02 +0000)]
Add support for .bss section in oat files.

Change-Id: I779b80b8139d9afdc28373f8c68edff5df7726ce

9 years agoMerge "Opt Compiler: ARM64: Enable explicit memory barriers over acquire/release"
Nicolas Geoffray [Mon, 2 Mar 2015 18:04:15 +0000 (18:04 +0000)]
Merge "Opt Compiler: ARM64: Enable explicit memory barriers over acquire/release"

9 years agoMerge "ART: Fix off-by-two whitespace"
Andreas Gampe [Mon, 2 Mar 2015 16:32:15 +0000 (16:32 +0000)]
Merge "ART: Fix off-by-two whitespace"

9 years ago[optimizing compiler] x86 goodness
Mark Mendell [Fri, 13 Feb 2015 22:48:38 +0000 (17:48 -0500)]
[optimizing compiler] x86 goodness

Implement the x86 version of
https://android-review.googlesource.com/#/c/129560/, which made some
enhancements to x86_64 code.
- Use leal to implement 3 operand adds
- Use testl rather than cmpl to 0 for registers
- Use leaq for x86_64 for adds with constant in int32_t range

Note:
- The range and register allocator tests seem quite fragile.  I had to
  change ADD_INT_LIT8 to XOR_INT_LIT8 for the register allocator test to
  get the code to run.  It seems like this is a bit hard-coded to
  expected code generation sequences.  I also changes BuildTwoAdds to
  BuildTwoSubs for the same reason.
- For the live range test, I just changed the expected output, as the
  Locations were different.

Change-Id: I402f2e95ddc8be4eb0befb3dae1b29feadfa29ab
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
9 years agoART: Cache last returned range in LiveInterval::Covers
David Brazdil [Wed, 25 Feb 2015 16:17:05 +0000 (16:17 +0000)]
ART: Cache last returned range in LiveInterval::Covers

Optimizing spends ~10% of compilation time in the register allocator.
One of the frequently called methods is LiveInterval::Covers which
has linear complexity w.r.t. the number of gaps in liveness intervals.
This patch leverages the fact that the register allocator calls Covers
with non-decreasing position values and caches the last returned
result to start the iteration closer to the result the next time the
method is invoked. Stats from compiling the framework show that this
optimization reduces the average number of iterations needed to find
the result by 40%.

Change-Id: I4dd26b900879d5e1d03818ebc1e117cc6a53053c

9 years agoMerge "Don't require three-character extensions for dex locations."
Richard Uhler [Mon, 2 Mar 2015 15:50:08 +0000 (15:50 +0000)]
Merge "Don't require three-character extensions for dex locations."

9 years agoOpt Compiler: ARM64: Enable explicit memory barriers over acquire/release
Serban Constantinescu [Sun, 22 Feb 2015 20:51:33 +0000 (20:51 +0000)]
Opt Compiler: ARM64: Enable explicit memory barriers over acquire/release

Implement remaining explicit memory barrier code paths and temporarily
enable the use of explicit memory barriers for testing.

This CL also enables the use of instruction set features in the ARM64
backend. kUseAcquireRelease has been replaced with PreferAcquireRelease(),
which for now is statically set to false (prefer explicit memory barriers).

Please note that we still prefer acquire-release for the ARM64 Optimizing
Compiler, but we would like to exercise the explicit memory barrier code
path too.

Change-Id: I84e047ecd43b6fbefc5b82cf532e3f5c59076458
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
9 years agoART: Fix off-by-two whitespace
Andreas Gampe [Sat, 28 Feb 2015 06:16:14 +0000 (22:16 -0800)]
ART: Fix off-by-two whitespace

Follow-up to change 134380. Fix the whitespace to be printed. Fix
style. It's surprising the linter did not complain.

Change-Id: I3abcde3f401fa1fd4d7a847ff1f071fba23ce6a7

9 years agoMerge "Revert "Revert "Re-enable one thread dumping the native stack of another."""
Andreas Gampe [Sat, 28 Feb 2015 05:37:17 +0000 (05:37 +0000)]
Merge "Revert "Revert "Re-enable one thread dumping the native stack of another."""

9 years agoMerge "ART: Allow dex2oat for apps only with image"
Andreas Gampe [Sat, 28 Feb 2015 04:17:23 +0000 (04:17 +0000)]
Merge "ART: Allow dex2oat for apps only with image"

9 years agoART: Allow dex2oat for apps only with image
Andreas Gampe [Sat, 28 Feb 2015 03:35:46 +0000 (19:35 -0800)]
ART: Allow dex2oat for apps only with image

Do not allow a runtime without image when compiling an app. This
avoids the current abort when we then try to run out of the (missing)
boot classpath.

Bug: 19100590
Change-Id: Ic269dc2fa807d003215ea134cb42fe4c4d78124e

9 years agoRevert "Revert "Re-enable one thread dumping the native stack of another.""
Andreas Gampe [Fri, 27 Feb 2015 21:35:39 +0000 (13:35 -0800)]
Revert "Revert "Re-enable one thread dumping the native stack of another.""

This reverts commit edfdaf37d5520a3c3a858b6b3fba4f759c60dadc.

Tests seem to succeed. Might be helpful to understand some deadlock/timeout
situations.

Bug: 15446488
Bug: 18713034
Change-Id: I5be225363f698556221576b5827d9501e26799f3

9 years agoMerge "ART: Fix Mips disassembler for some floating point instructions."
Andreas Gampe [Sat, 28 Feb 2015 00:12:02 +0000 (00:12 +0000)]
Merge "ART: Fix Mips disassembler for some floating point instructions."

9 years agoART: Fix Mips disassembler for some floating point instructions.
Douglas Leung [Sat, 14 Feb 2015 00:55:57 +0000 (16:55 -0800)]
ART: Fix Mips disassembler for some floating point instructions.

Change-Id: I2b661a8dae4cd924c081df85f570007cf645769c

9 years agoMerge "Change JIT to not use PIC"
Mathieu Chartier [Sat, 28 Feb 2015 00:07:07 +0000 (00:07 +0000)]
Merge "Change JIT to not use PIC"

9 years agoChange JIT to not use PIC
Mathieu Chartier [Fri, 27 Feb 2015 22:24:37 +0000 (14:24 -0800)]
Change JIT to not use PIC

Motivation: PIC is currenly slower and disables a lot of JIT
friendly optimizations.

EvaluateAndApplyChanges N5 eng interpreter + jit:
Before: 2540ms
After: 2350ms

Bug: 17950037

Change-Id: I3de3e7bcccfc53e49cb78370443c514248ec78d7

9 years agoMerge "Change JIT tests to use interpreter image"
Mathieu Chartier [Fri, 27 Feb 2015 22:33:30 +0000 (22:33 +0000)]
Merge "Change JIT tests to use interpreter image"

9 years agoChange JIT tests to use interpreter image
Mathieu Chartier [Fri, 27 Feb 2015 21:21:15 +0000 (13:21 -0800)]
Change JIT tests to use interpreter image

Bug: 19528920
Change-Id: I079cfcca7bb57e492c82a44f104e41228cb33b4f

9 years agoMerge "Handle another untyped dex CONST issue"
buzbee [Fri, 27 Feb 2015 21:29:54 +0000 (21:29 +0000)]
Merge "Handle another untyped dex CONST issue"

9 years agoMerge "Fix jit tests"
Mathieu Chartier [Fri, 27 Feb 2015 20:55:16 +0000 (20:55 +0000)]
Merge "Fix jit tests"

9 years agoFix jit tests
Mathieu Chartier [Fri, 27 Feb 2015 18:39:48 +0000 (10:39 -0800)]
Fix jit tests

Missing image suffix was missing causing tests to fail.
Also added missing phony targets.

Bug: 19524713
Change-Id: Ib40d39b1fc16e1adfdc01744a199ae9b0b562664

9 years agoMerge "Fix JIT direct call to interpreter bridge"
Mathieu Chartier [Fri, 27 Feb 2015 02:58:48 +0000 (02:58 +0000)]
Merge "Fix JIT direct call to interpreter bridge"

9 years agoFix JIT direct call to interpreter bridge
Mathieu Chartier [Fri, 27 Feb 2015 02:28:07 +0000 (18:28 -0800)]
Fix JIT direct call to interpreter bridge

FormulaEvaluationActions.EvaluateAndApplyChanges on hammerhead eng:
Before: 3550ms
After: 2540

Bug: 17950037
Change-Id: If7acaea20d4adb5418d00ef13192e2d4c29032af

9 years agoMerge "Change card cache mod-union table to use bitmaps"
Mathieu Chartier [Thu, 26 Feb 2015 23:04:02 +0000 (23:04 +0000)]
Merge "Change card cache mod-union table to use bitmaps"

9 years agoChange card cache mod-union table to use bitmaps
Mathieu Chartier [Fri, 23 Jan 2015 21:18:53 +0000 (13:18 -0800)]
Change card cache mod-union table to use bitmaps

Previously used card sets, using bitmaps saves memory and slightly
increases performance.

Added mod union table test.

Performance EvaluateAndApplyChanges (minimal changes):

Before (card cache image mu table):
UpdateAndMarkImageModUnionTable: Avg: 524.320us
ImageModUnionClearCards: Avg: 54.580us
Native PSS: ~67500kB

After (card cache image mu table):
UpdateAndMarkImageModUnionTable: Avg: 515.600us
ImageModUnionClearCards: Avg: 53.780us
Native PSS: ~66014kB

Native PSS was higher before since the mod_union_table->SetCards()
which happens pre zygote fork was allocating a large amount of
std::nodes.

Bug: 11859910

Change-Id: I956b7e51d5572feec1393ffa618b7b7d8c147b28

9 years agoMerge "Add standard gc log for transition collections."
Hiroshi Yamauchi [Thu, 26 Feb 2015 21:12:25 +0000 (21:12 +0000)]
Merge "Add standard gc log for transition collections."

9 years agoAdd standard gc log for transition collections.
Hiroshi Yamauchi [Thu, 26 Feb 2015 20:53:45 +0000 (12:53 -0800)]
Add standard gc log for transition collections.

Factor out the gc log logic into a function.

Note we still don't log in background as before but do for things like
OOME compactions in foreground.

Change-Id: Ifd35a796cf26aba2fba83bf07e72902357d91f8b

9 years agoMerge "Add missing JIT stuff in make files"
Mathieu Chartier [Thu, 26 Feb 2015 19:30:35 +0000 (19:30 +0000)]
Merge "Add missing JIT stuff in make files"