OSDN Git Service

android-x86/art.git
8 years agoMerge "Move debug symbol writing code to elf_writer_debug.cc"
David Srbecky [Wed, 23 Dec 2015 12:14:10 +0000 (04:14 -0800)]
Merge "Move debug symbol writing code to elf_writer_debug.cc"
am: d674bf7ba2

* commit 'd674bf7ba2a209790cea8ef8d935480ef515c9e1':
  Move debug symbol writing code to elf_writer_debug.cc

8 years agoMerge "Move debug symbol writing code to elf_writer_debug.cc"
David Srbecky [Wed, 23 Dec 2015 12:10:14 +0000 (12:10 +0000)]
Merge "Move debug symbol writing code to elf_writer_debug.cc"

8 years agoMerge "Move JIT debugger interface code to its own file."
David Srbecky [Wed, 23 Dec 2015 12:01:50 +0000 (12:01 +0000)]
Merge "Move JIT debugger interface code to its own file."
am: 975dd72796

* commit '975dd7279694f345bd4fc31b04ff3275f3082961':
  Move JIT debugger interface code to its own file.

8 years agoMerge "Move JIT debugger interface code to its own file."
David Srbecky [Wed, 23 Dec 2015 11:57:36 +0000 (11:57 +0000)]
Merge "Move JIT debugger interface code to its own file."

8 years agoMerge "Rewrite HInstruction::Is/As<type>()."
Vladimir Marko [Wed, 23 Dec 2015 10:08:59 +0000 (02:08 -0800)]
Merge "Rewrite HInstruction::Is/As<type>()."
am: e74927c0cd

* commit 'e74927c0cded59b6687020c6480205d4488a69fc':
  Rewrite HInstruction::Is/As<type>().

8 years agoMerge "Rewrite HInstruction::Is/As<type>()."
Vladimir Marko [Wed, 23 Dec 2015 10:06:09 +0000 (10:06 +0000)]
Merge "Rewrite HInstruction::Is/As<type>()."

8 years agoRewrite HInstruction::Is/As<type>().
Vladimir Marko [Mon, 23 Nov 2015 19:49:34 +0000 (19:49 +0000)]
Rewrite HInstruction::Is/As<type>().

Make Is<type>() and As<type>() non-virtual for concrete
instruction types, relying on GetKind(), and mark GetKind()
as PURE to improve optimization opportunities. This reduces
the number of relocations in libart-compiler.so's .rel.dyn
section by ~4K, or ~44%, and in .data.rel.ro by ~18K, or
~65%. The file is 96KiB smaller for Nexus 5, including 8KiB
reduction of the .text section.

Unfortunately, the g++/clang++ __attribute__((pure)) is not
strong enough to avoid duplicated virtual calls and we would
need the C++ [[pure]] attribute proposed in n3744 instead.
To work around this deficiency, we introduce an extra
non-virtual indirection for GetKind(), so that the compiler
can optimize common expressions such as
    instruction->IsAdd() || instruction->IsSub()
or
    instruction->IsAdd() && instruction->AsAdd()->...
which contain two virtual calls to GetKind() after inlining.

Change-Id: I83787de0671a5cb9f5b0a5f4a536cef239d5b401

8 years agoMerge "Ensure Jack server is running before any use"
Yohann Roussel [Tue, 22 Dec 2015 14:04:08 +0000 (14:04 +0000)]
Merge "Ensure Jack server is running before any use"
am: b592885f0b

* commit 'b592885f0b03c6518ccc9df4962c112cc2089131':
  Ensure Jack server is running before any use

8 years agoMerge "Ensure Jack server is running before any use"
Yohann Roussel [Tue, 22 Dec 2015 13:59:49 +0000 (13:59 +0000)]
Merge "Ensure Jack server is running before any use"

8 years agoMerge "Treat thread state kWaitingWeakGcRootRead as kJavaRunnable."
Hiroshi Yamauchi [Mon, 21 Dec 2015 23:29:53 +0000 (23:29 +0000)]
Merge "Treat thread state kWaitingWeakGcRootRead as kJavaRunnable."
am: 1201804d18

* commit '1201804d1813d7db0accead9721d67c40b3de564':
  Treat thread state kWaitingWeakGcRootRead as kJavaRunnable.

8 years agoMerge "Fix multiple image space handing for SS collector"
Mathieu Chartier [Mon, 21 Dec 2015 23:29:45 +0000 (23:29 +0000)]
Merge "Fix multiple image space handing for SS collector"
am: 10e2607281

* commit '10e2607281ae3d6c5fa814b9986bac5f8b47d325':
  Fix multiple image space handing for SS collector

8 years agoMerge "Treat thread state kWaitingWeakGcRootRead as kJavaRunnable."
Hiroshi Yamauchi [Mon, 21 Dec 2015 23:25:23 +0000 (23:25 +0000)]
Merge "Treat thread state kWaitingWeakGcRootRead as kJavaRunnable."

8 years agoMerge "Fix multiple image space handing for SS collector"
Mathieu Chartier [Mon, 21 Dec 2015 23:17:17 +0000 (23:17 +0000)]
Merge "Fix multiple image space handing for SS collector"

8 years agoMerge "Fix lock ordering violation"
Mathieu Chartier [Mon, 21 Dec 2015 23:16:34 +0000 (23:16 +0000)]
Merge "Fix lock ordering violation"
am: adc183c711

* commit 'adc183c711731049800d0798ed35a5bc9a681a61':
  Fix lock ordering violation

8 years agoMerge "Use shared namespaces for bundled apps"
Dimitry Ivanov [Mon, 21 Dec 2015 23:16:20 +0000 (23:16 +0000)]
Merge "Use shared namespaces for bundled apps"
am: aa944b9d4d

* commit 'aa944b9d4d447d2746f13327084a19daebf83ee4':
  Use shared namespaces for bundled apps

8 years agoMerge "Fix lock ordering violation"
Mathieu Chartier [Mon, 21 Dec 2015 23:11:40 +0000 (23:11 +0000)]
Merge "Fix lock ordering violation"

8 years agoMerge "Use shared namespaces for bundled apps"
Dimitry Ivanov [Mon, 21 Dec 2015 23:10:49 +0000 (23:10 +0000)]
Merge "Use shared namespaces for bundled apps"

8 years agoMerge "Do not use 0 in recipe"
Shinichiro Hamaji [Mon, 21 Dec 2015 23:07:09 +0000 (23:07 +0000)]
Merge "Do not use 0 in recipe"
am: d255fe5c11

* commit 'd255fe5c11ff0fa13a2ca9f73c7c43a290dc370e':
  Do not use $? in recipe

8 years agoMerge "Do not use $? in recipe"
Shinichiro Hamaji [Mon, 21 Dec 2015 22:45:44 +0000 (22:45 +0000)]
Merge "Do not use $? in recipe"

8 years agoTreat thread state kWaitingWeakGcRootRead as kJavaRunnable.
Hiroshi Yamauchi [Mon, 21 Dec 2015 22:06:23 +0000 (14:06 -0800)]
Treat thread state kWaitingWeakGcRootRead as kJavaRunnable.

Like kSuspended, kWaitingWeakGcRootRead means temporarily waiting for
GC's purpose rather than the thread is waiting on a monitor.

This may fix some jsr166 test failures.

Bug: 25883050
Bug: 12687968

Change-Id: Ib53e18c0fb2ff95aa0491b1531201e583288684e

8 years agoFix lock ordering violation
Mathieu Chartier [Mon, 21 Dec 2015 21:02:14 +0000 (13:02 -0800)]
Fix lock ordering violation

Move ros alloc lock ordering above transaction lock level.

Bug: 26292262

Change-Id: I55f75bd86b413ce193d4df890a39a9c459bc2034

8 years agoFix multiple image space handing for SS collector
Mathieu Chartier [Wed, 16 Dec 2015 23:56:15 +0000 (15:56 -0800)]
Fix multiple image space handing for SS collector

We need to visit objets that don't have a mod-union table even if
collect_from_space_only_ is false.

Bug: 22858531
Change-Id: I3144ccb84d7f7bcdf0560f6425c5e5292d3a2082

8 years agoMerge "Rename NullHandle to ScopedNullHandle"
Mathieu Chartier [Mon, 21 Dec 2015 20:13:47 +0000 (12:13 -0800)]
Merge "Rename NullHandle to ScopedNullHandle"
am: 76b90e37df

* commit '76b90e37dfe6eecc904017be8046dd208d30ab8b':
  Rename NullHandle to ScopedNullHandle

8 years agoMerge "Rename NullHandle to ScopedNullHandle"
Mathieu Chartier [Mon, 21 Dec 2015 20:09:36 +0000 (20:09 +0000)]
Merge "Rename NullHandle to ScopedNullHandle"

8 years agoRename NullHandle to ScopedNullHandle
Mathieu Chartier [Mon, 21 Dec 2015 17:58:16 +0000 (09:58 -0800)]
Rename NullHandle to ScopedNullHandle

This makes it clearer that is invalid to do things like:
Handle<T> h = ScopedNullHandle<T>();

Bug: 26233305
Change-Id: I6d8f54eae01ec2e901cb7043afa853ea77db79fe

8 years agoDo not use $? in recipe
Shinichiro Hamaji [Fri, 18 Dec 2015 06:51:51 +0000 (15:51 +0900)]
Do not use $? in recipe

Kati cannot support this automatic variable as ninja doesn't
have a feature for this.

Change-Id: Ie9130c31916954454eb201129ae6f49554453586

8 years agoMerge "Pass down to the runtime the application code paths."
Calin Juravle [Mon, 21 Dec 2015 09:48:17 +0000 (09:48 +0000)]
Merge "Pass down to the runtime the application code paths."
am: 115a02b737

* commit '115a02b737dd5f4d485b2f6c359e02988df66b83':
  Pass down to the runtime the application code paths.

8 years agoMerge "Pass down to the runtime the application code paths."
Calin Juravle [Mon, 21 Dec 2015 09:43:09 +0000 (09:43 +0000)]
Merge "Pass down to the runtime the application code paths."

8 years agoUse shared namespaces for bundled apps
Dimitry Ivanov [Tue, 15 Dec 2015 22:08:18 +0000 (14:08 -0800)]
Use shared namespaces for bundled apps

Shared namespaces clone the list of loaded native
libraries from the caller namespace. This allows
classloaders for bundled apps to share already loaded
libraries with default namespace.

Bug: http://b/26165097
Bug: http://b/22548808
Change-Id: Ia90b603a0ca97194618b82fb191d6790a4b1f281
(cherry picked from commit 986f650d8b552e8b7dbebef1f50f015e7850edfc)

8 years agoMerge "art: use -O1 to compile tests with clang for arm64"
Colin Cross [Sat, 19 Dec 2015 01:59:46 +0000 (17:59 -0800)]
Merge "art: use -O1 to compile tests with clang for arm64"
am: 2f125e3c7a

* commit '2f125e3c7ab02cbbbcede533dc53a454a439be13':
  art: use -O1 to compile tests with clang for arm64

8 years agoMerge "art: use -O1 to compile tests with clang for arm64"
Colin Cross [Sat, 19 Dec 2015 01:56:42 +0000 (01:56 +0000)]
Merge "art: use -O1 to compile tests with clang for arm64"

8 years agoart: use -O1 to compile tests with clang for arm64
Colin Cross [Sat, 19 Dec 2015 01:48:50 +0000 (17:48 -0800)]
art: use -O1 to compile tests with clang for arm64

arm64 clang fails to compile art/runtime/arch/stub_test.cc with:
art/runtime/arch/stub_test.cc:178:9: error: inline assembly requires
more registers than available
        "sub sp, sp, #64\n\t"
        ^

Pass -O1 to all art tests compiled with clang for arm64.

Bug: 26275713
Change-Id: Ib1a1c309aef73a2d33d37d720e5e11b8fe7a248e

8 years agoMerge "Re-enable optimization for clang arm64 art builds"
Colin Cross [Sat, 19 Dec 2015 00:21:00 +0000 (00:21 +0000)]
Merge "Re-enable optimization for clang arm64 art builds"
am: 2cd15c35df

* commit '2cd15c35df125955e02d9c3c5178d90c6bb9a3bc':
  Re-enable optimization for clang arm64 art builds

8 years agoMerge "Re-enable optimization for clang arm64 art builds"
Colin Cross [Sat, 19 Dec 2015 00:14:02 +0000 (00:14 +0000)]
Merge "Re-enable optimization for clang arm64 art builds"

8 years agoRe-enable optimization for clang arm64 art builds
Colin Cross [Fri, 18 Dec 2015 23:13:51 +0000 (15:13 -0800)]
Re-enable optimization for clang arm64 art builds

The clang bug is fixed, remove -O1 from clang arm64 art builds.

Bug: 23256622
Change-Id: I3f2f6d1e84c5484fd499a94593f1dd53a4a66fbe

8 years agoMerge "For LSE, further optimize stores for singleton references."
Mingyao Yang [Fri, 18 Dec 2015 23:07:36 +0000 (23:07 +0000)]
Merge "For LSE, further optimize stores for singleton references."
am: f8b69bc89a

* commit 'f8b69bc89aa1c657e5b6232be08535e27d078b9e':
  For LSE, further optimize stores for singleton references.

8 years agoMerge "Make use of new method iterators."
Alex Light [Fri, 18 Dec 2015 23:07:28 +0000 (23:07 +0000)]
Merge "Make use of new method iterators."
am: 045d37ae20

* commit '045d37ae20ae9481f6c967ab5db4240991ff151f':
  Make use of new method iterators.

8 years agoMerge "MIPS64: Fuse long and FP compare & condition in Optimizing."
Roland Levillain [Fri, 18 Dec 2015 23:07:20 +0000 (23:07 +0000)]
Merge "MIPS64: Fuse long and FP compare & condition in Optimizing."
am: 280a65b1ea

* commit '280a65b1ea1f18ab8204a4089630a206dd2d0375':
  MIPS64: Fuse long and FP compare & condition in Optimizing.

8 years agoMerge "Disable jsr166.LinkedTransferQueueTest#testTransfer2 again."
Roland Levillain [Fri, 18 Dec 2015 23:07:12 +0000 (23:07 +0000)]
Merge "Disable jsr166.LinkedTransferQueueTest#testTransfer2 again."
am: 9d9435ff95

* commit '9d9435ff95f31c5467912a6a3eb60070cc6f4199':
  Disable jsr166.LinkedTransferQueueTest#testTransfer2 again.

8 years agoMerge "ART: Fix bug in LSE"
Nicolas Geoffray [Fri, 18 Dec 2015 23:07:03 +0000 (23:07 +0000)]
Merge "ART: Fix bug in LSE"
am: d9493c2d61

* commit 'd9493c2d611601b1f076e5f92a2fe8a9e4ccf78d':
  ART: Fix bug in LSE

8 years agoMerge "Disable the UnsafeCASObject intrinsic with read barriers."
Roland Levillain [Fri, 18 Dec 2015 23:06:54 +0000 (23:06 +0000)]
Merge "Disable the UnsafeCASObject intrinsic with read barriers."
am: 273941131a

* commit '273941131aed5248a8c75b2d3f2952a88c7ab02d':
  Disable the UnsafeCASObject intrinsic with read barriers.

8 years agoMerge "For LSE, further optimize stores for singleton references."
Mingyao Yang [Fri, 18 Dec 2015 23:02:10 +0000 (23:02 +0000)]
Merge "For LSE, further optimize stores for singleton references."

8 years agoFor LSE, further optimize stores for singleton references.
Mingyao Yang [Tue, 1 Dec 2015 20:24:36 +0000 (12:24 -0800)]
For LSE, further optimize stores for singleton references.

Loop side effects shouldn't affect singletons whose fields are never stored into
inside a loop.

Change-Id: If3715d7b7e621bb077ef9481072a56f7fec87f2b

8 years agoMerge "Make use of new method iterators."
Alex Light [Fri, 18 Dec 2015 17:57:40 +0000 (17:57 +0000)]
Merge "Make use of new method iterators."

8 years agoMerge "MIPS64: Fuse long and FP compare & condition in Optimizing."
Roland Levillain [Fri, 18 Dec 2015 17:54:01 +0000 (17:54 +0000)]
Merge "MIPS64: Fuse long and FP compare & condition in Optimizing."

8 years agoMerge "Disable jsr166.LinkedTransferQueueTest#testTransfer2 again."
Roland Levillain [Fri, 18 Dec 2015 17:21:25 +0000 (17:21 +0000)]
Merge "Disable jsr166.LinkedTransferQueueTest#testTransfer2 again."

8 years agoDisable jsr166.LinkedTransferQueueTest#testTransfer2 again.
Roland Levillain [Fri, 18 Dec 2015 16:55:35 +0000 (16:55 +0000)]
Disable jsr166.LinkedTransferQueueTest#testTransfer2 again.

This test is failing (again) on the concurrent collector
configuration.  Disable it while we investigate.

Bug: 25883050
Change-Id: I54e59a43b730c286e370b5ae01bc5713fe816b61

8 years agoMove debug symbol writing code to elf_writer_debug.cc
David Srbecky [Thu, 17 Dec 2015 20:53:07 +0000 (20:53 +0000)]
Move debug symbol writing code to elf_writer_debug.cc

I want to be able to use this code without needing to
reference elf_writer_quick.

Change-Id: I87ccedc540b8f04b53be0fc6344a5947308ffcb6

8 years agoMerge "ART: Fix bug in LSE"
Nicolas Geoffray [Fri, 18 Dec 2015 14:57:19 +0000 (14:57 +0000)]
Merge "ART: Fix bug in LSE"

8 years agoART: Fix bug in LSE
David Brazdil [Mon, 14 Dec 2015 16:58:08 +0000 (16:58 +0000)]
ART: Fix bug in LSE

LSE will not remove a load if the type of the heap value does not
match the type of the load. This was a workaround for b/22538329 but
backfires for integers. For example, 'IntConstant 0' has type int
but can be retrieved from a boolean field. The corresponding store is
removed but not the load, loading uninitialized memory. This fixes the
issue until the workaround is not needed any more.

Change-Id: I2a47783e8d5f93104854e5216b69b6c220832c76

8 years agoMerge "Disable the UnsafeCASObject intrinsic with read barriers."
Roland Levillain [Fri, 18 Dec 2015 12:56:47 +0000 (12:56 +0000)]
Merge "Disable the UnsafeCASObject intrinsic with read barriers."

8 years agoDisable the UnsafeCASObject intrinsic with read barriers.
Roland Levillain [Fri, 18 Dec 2015 11:43:38 +0000 (11:43 +0000)]
Disable the UnsafeCASObject intrinsic with read barriers.

The current implementations of the UnsafeCASObject
intrinsics are missing a read barrier.  Temporarily disable
them when read barriers are enabled.

Also re-enable the jsr166.LinkedTransferQueueTest tests that
were failing on the concurrent collector configuration, as
the UnsafeCASObject JNI implementation now correctly
implements the read barrier which was missing.

Bug: 25883050
Bug: 26205973
Change-Id: Iaf5d515532949662d0ac6702c9452a00aa0a23e6

8 years agoMerge "Revert "Revert "X86: Use locked add rather than mfence"""
Aart Bik [Thu, 17 Dec 2015 23:35:00 +0000 (23:35 +0000)]
Merge "Revert "Revert "X86: Use locked add rather than mfence"""
am: 570a920d0a

* commit '570a920d0a4a01e159a1be46609ff3db4aedc221':
  Revert "Revert "X86: Use locked add rather than mfence""

8 years agoMerge "Revert "Revert "X86: Use locked add rather than mfence"""
Aart Bik [Thu, 17 Dec 2015 23:28:06 +0000 (23:28 +0000)]
Merge "Revert "Revert "X86: Use locked add rather than mfence"""

8 years agoMake use of new method iterators.
Alex Light [Thu, 17 Dec 2015 21:55:59 +0000 (13:55 -0800)]
Make use of new method iterators.

Change-Id: I1f82f17951339b2054a1dac87bde79f9e803fc4a

8 years agoMIPS64: Fuse long and FP compare & condition in Optimizing.
Alexey Frunze [Wed, 9 Dec 2015 00:08:02 +0000 (16:08 -0800)]
MIPS64: Fuse long and FP compare & condition in Optimizing.

Bug: 25559148

Change-Id: I2d14ac75460a76848c71c08cffff6d7a18f5f580

8 years agoMove JIT debugger interface code to its own file.
David Srbecky [Thu, 17 Dec 2015 19:57:44 +0000 (19:57 +0000)]
Move JIT debugger interface code to its own file.

Change-Id: Ie788daa8caf60f2f0f93484681a8a9fcce61c23f

8 years agoMerge "ART: Refactor CommonRuntimeTest::SetUp"
Andreas Gampe [Thu, 17 Dec 2015 19:02:47 +0000 (19:02 +0000)]
Merge "ART: Refactor CommonRuntimeTest::SetUp"
am: fae1db92d8

* commit 'fae1db92d8433d0f75258c190bcf2c940731f036':
  ART: Refactor CommonRuntimeTest::SetUp

8 years agoMerge "ART: Refactor CommonRuntimeTest::SetUp"
Andreas Gampe [Thu, 17 Dec 2015 18:55:58 +0000 (18:55 +0000)]
Merge "ART: Refactor CommonRuntimeTest::SetUp"

8 years agoART: Refactor CommonRuntimeTest::SetUp
Andreas Gampe [Thu, 17 Dec 2015 00:54:35 +0000 (16:54 -0800)]
ART: Refactor CommonRuntimeTest::SetUp

Factor out finishing up the runtime. This code will execute the
interpreter to initialize important classes etc., which is not
necessary for testing RuntimeMethod sizes and trampoline entrypoints,
in fact it may violate pointer-size invariants.

Also add InstructionSet parsing tests to the ParsedOptions test.

Change-Id: I75cd00c6d358e1bc962c8f1845244f6400c1cd6c

8 years agoMerge "ART: Recognize cortex-a53.a57 for ARM features"
Andreas Gampe [Thu, 17 Dec 2015 18:40:12 +0000 (18:40 +0000)]
Merge "ART: Recognize cortex-a53.a57 for ARM features"
am: 5640499750

* commit '5640499750bbc923e42d8cfd0ea9fdcd1c3d1459':
  ART: Recognize cortex-a53.a57 for ARM features

8 years agoMerge "Revert "Revert "Combine direct_methods_ and virtual_methods_ fields of mirror...
Alex Light [Thu, 17 Dec 2015 18:40:04 +0000 (18:40 +0000)]
Merge "Revert "Revert "Combine direct_methods_ and virtual_methods_ fields of mirror::Class"""
am: ec178ee584

* commit 'ec178ee58447ba23e5954eb824265e9b30f95009':
  Revert "Revert "Combine direct_methods_ and virtual_methods_ fields of mirror::Class""

8 years agoMerge "ART: Recognize cortex-a53.a57 for ARM features"
Andreas Gampe [Thu, 17 Dec 2015 18:35:41 +0000 (18:35 +0000)]
Merge "ART: Recognize cortex-a53.a57 for ARM features"

8 years agoMerge "Revert "Revert "Combine direct_methods_ and virtual_methods_ fields of mirror...
Alex Light [Thu, 17 Dec 2015 18:33:57 +0000 (18:33 +0000)]
Merge "Revert "Revert "Combine direct_methods_ and virtual_methods_ fields of mirror::Class"""

8 years agoMerge "Revert "Revert "ART: Reduce the instructions generated by packed switch."""
Vladimir Marko [Thu, 17 Dec 2015 16:52:47 +0000 (16:52 +0000)]
Merge "Revert "Revert "ART: Reduce the instructions generated by packed switch."""
am: 14c4e90f67

* commit '14c4e90f67e71430dade7d4f20920e6352be386e':
  Revert "Revert "ART: Reduce the instructions generated by packed switch.""

8 years agoMerge "Revert "Revert "ART: Reduce the instructions generated by packed switch."""
Vladimir Marko [Thu, 17 Dec 2015 16:46:19 +0000 (16:46 +0000)]
Merge "Revert "Revert "ART: Reduce the instructions generated by packed switch."""

8 years agoMerge "Fix braino in parallel move resolver."
Nicolas Geoffray [Thu, 17 Dec 2015 15:36:35 +0000 (15:36 +0000)]
Merge "Fix braino in parallel move resolver."
am: 6132a3884a

* commit '6132a3884a912a704010f22ea2991f3d9d432af2':
  Fix braino in parallel move resolver.

8 years agoMerge "Revert "Tweak inlining heuristics.""
Nicolas Geoffray [Thu, 17 Dec 2015 15:36:27 +0000 (15:36 +0000)]
Merge "Revert "Tweak inlining heuristics.""
am: 8e00676291

* commit '8e006762917a2ee193e12c74ba24e69a5e1b9144':
  Revert "Tweak inlining heuristics."

8 years agoMerge "Fix braino in parallel move resolver."
Nicolas Geoffray [Thu, 17 Dec 2015 15:27:16 +0000 (15:27 +0000)]
Merge "Fix braino in parallel move resolver."

8 years agoMerge "Revert "Tweak inlining heuristics.""
Nicolas Geoffray [Thu, 17 Dec 2015 15:26:44 +0000 (15:26 +0000)]
Merge "Revert "Tweak inlining heuristics.""

8 years agoRevert "Tweak inlining heuristics."
Nicolas Geoffray [Thu, 17 Dec 2015 15:26:21 +0000 (15:26 +0000)]
Revert "Tweak inlining heuristics."

This reverts commit fcb7613d3aaa9a6802800b6e957aaad51cedf6dc.

Change-Id: Idc0df6a2f68e8b5aa740bb1259f19c2953811510

8 years agoRevert "Revert "ART: Reduce the instructions generated by packed switch.""
Vladimir Marko [Thu, 17 Dec 2015 15:23:13 +0000 (15:23 +0000)]
Revert "Revert "ART: Reduce the instructions generated by packed switch.""

This reverts commit b4c137630fd2226ad07dfd178ab15725374220f1.

The underlying issue was fixed by https://android-review.googlesource.com/188271 .

Bug: 26121945
Change-Id: I58b08eb1a9f0a5c861f8cda93522af64bcf63920

8 years agoMerge "Optimizing/ARM: Fix AddConstant() to adhere to set_cc."
Vladimir Marko [Thu, 17 Dec 2015 15:22:16 +0000 (07:22 -0800)]
Merge "Optimizing/ARM: Fix AddConstant() to adhere to set_cc."
am: 0ac7a8e505

* commit '0ac7a8e505e14e65ff989c483a40348a3d4b6a86':
  Optimizing/ARM: Fix AddConstant() to adhere to set_cc.

8 years agoMerge "Optimizing/ARM: Fix AddConstant() to adhere to set_cc."
Vladimir Marko [Thu, 17 Dec 2015 15:14:59 +0000 (15:14 +0000)]
Merge "Optimizing/ARM: Fix AddConstant() to adhere to set_cc."

8 years agoOptimizing/ARM: Fix AddConstant() to adhere to set_cc.
Vladimir Marko [Thu, 17 Dec 2015 12:08:08 +0000 (12:08 +0000)]
Optimizing/ARM: Fix AddConstant() to adhere to set_cc.

And improve it to use shorter code sequences.

Bug: 26121945

Change-Id: Ia4f1688652c195a7ca19af36d919388a550e2841

8 years agoFix braino in parallel move resolver.
Nicolas Geoffray [Thu, 17 Dec 2015 14:28:35 +0000 (14:28 +0000)]
Fix braino in parallel move resolver.

Reiterating over the moves needs to set i to -1, not 0.

bug:26241132

Change-Id: Iaae7eac5b421b0ee1b1ce89577c8b951b2d4dae8

8 years agoMerge "Tweak inlining heuristics."
Nicolas Geoffray [Thu, 17 Dec 2015 14:06:39 +0000 (14:06 +0000)]
Merge "Tweak inlining heuristics."
am: ff6ab45547

* commit 'ff6ab45547a629b1e237a1bf4b8530a5c99377e5':
  Tweak inlining heuristics.

8 years agoMerge "Tweak inlining heuristics."
Nicolas Geoffray [Thu, 17 Dec 2015 13:59:47 +0000 (13:59 +0000)]
Merge "Tweak inlining heuristics."

8 years agoTweak inlining heuristics.
Nicolas Geoffray [Thu, 17 Dec 2015 12:43:00 +0000 (12:43 +0000)]
Tweak inlining heuristics.

go/lem driven:

Performance:
Richards +41%
CaffeineMethod +43%
ReversiBench: +52%
Towers: +73%
Tak: +85%

Memory use: 7% less memory
CompileTime: 14% increase
CodeSize: 8% increase

Last three measures are now more acceptable given we JIT.

Change-Id: Ic4aa6535d2b76cf3545ef00e9b2ae32330f10745

8 years agoMerge "Change DCHECK into CHECK to diagnose sporadic crash."
Nicolas Geoffray [Thu, 17 Dec 2015 12:09:33 +0000 (12:09 +0000)]
Merge "Change DCHECK into CHECK to diagnose sporadic crash."
am: 2dbab9548b

* commit '2dbab9548b538cdb647e5819f7f93d43ae67116a':
  Change DCHECK into CHECK to diagnose sporadic crash.

8 years agoMerge "Change DCHECK into CHECK to diagnose sporadic crash."
Nicolas Geoffray [Thu, 17 Dec 2015 12:02:19 +0000 (12:02 +0000)]
Merge "Change DCHECK into CHECK to diagnose sporadic crash."

8 years agoChange DCHECK into CHECK to diagnose sporadic crash.
Nicolas Geoffray [Thu, 17 Dec 2015 11:56:01 +0000 (11:56 +0000)]
Change DCHECK into CHECK to diagnose sporadic crash.

bug:26221227
bug:25942183
Change-Id: I1325af40098dd336b6c85df8d4fcb7fe26aeac97

8 years agoMerge "Add some dumping when SIGQUIT for the JIT."
Nicolas Geoffray [Thu, 17 Dec 2015 11:40:51 +0000 (11:40 +0000)]
Merge "Add some dumping when SIGQUIT for the JIT."
am: bdd12e0e04

* commit 'bdd12e0e047245163ddfd7df66c9430ec85624a4':
  Add some dumping when SIGQUIT for the JIT.

8 years agoMerge "Add some dumping when SIGQUIT for the JIT."
Nicolas Geoffray [Thu, 17 Dec 2015 11:34:37 +0000 (11:34 +0000)]
Merge "Add some dumping when SIGQUIT for the JIT."

8 years agoPass down to the runtime the application code paths.
Calin Juravle [Tue, 8 Dec 2015 15:09:10 +0000 (15:09 +0000)]
Pass down to the runtime the application code paths.

When registering the app with the runtime the framework needs to pass
down the list of application code paths. This will be used by JIT to
know what profile info to persist.

This fixes the reliance on OatFileManager::GetPrimaryOatFile which may
produce inconsistent results based on external factors (i.e. class path
order or failing to compile the first dex file from the class path)

Bug: 26080105
Change-Id: Iadcebd2684fcd48569e8f76ef21bd4d117fedc05

8 years agoMerge "Fix (non-intrinsic) UnsafeCASObject for the read barrier config."
Hiroshi Yamauchi [Thu, 17 Dec 2015 08:16:55 +0000 (08:16 +0000)]
Merge "Fix (non-intrinsic) UnsafeCASObject for the read barrier config."
am: fb9f4ad455

* commit 'fb9f4ad455eced3a07bef1d4772ab1fe34ec133b':
  Fix (non-intrinsic) UnsafeCASObject for the read barrier config.

8 years agoMerge "Fix (non-intrinsic) UnsafeCASObject for the read barrier config."
Hiroshi Yamauchi [Thu, 17 Dec 2015 08:08:12 +0000 (08:08 +0000)]
Merge "Fix (non-intrinsic) UnsafeCASObject for the read barrier config."

8 years agoMerge "Ensure that ClassTable has correct alignment in image."
Alex Light [Thu, 17 Dec 2015 07:46:59 +0000 (07:46 +0000)]
Merge "Ensure that ClassTable has correct alignment in image."
am: d16bb3f0dc

* commit 'd16bb3f0dc17d77db7022150d0710fcbb8b6fd9d':
  Ensure that ClassTable has correct alignment in image.

8 years agoART: Recognize cortex-a53.a57 for ARM features
Andreas Gampe [Thu, 17 Dec 2015 01:27:30 +0000 (17:27 -0800)]
ART: Recognize cortex-a53.a57 for ARM features

Add cortex-a53.a57 to the hardware-divide recognized set. Add all
ARMv8 Cortex-A variants to the LPAE list.

Bug: 26221616
Change-Id: I0fd577e84952ce23f8a5577ae5061a841240d602

8 years agoRevert "Revert "X86: Use locked add rather than mfence""
Mark P Mendell [Wed, 16 Dec 2015 19:15:59 +0000 (19:15 +0000)]
Revert "Revert "X86: Use locked add rather than mfence""

This reverts commit 0da3b9117706760e8722029f407da6d0297cc943.

Fix a compilation failure that slipped in somehow.

Change-Id: Ide8681cdc921febb296ea47aa282cc195f154049

8 years agoMerge "Ensure that ClassTable has correct alignment in image."
Alex Light [Thu, 17 Dec 2015 00:10:38 +0000 (00:10 +0000)]
Merge "Ensure that ClassTable has correct alignment in image."

8 years agoEnsure that ClassTable has correct alignment in image.
Alex Light [Wed, 16 Dec 2015 23:52:51 +0000 (15:52 -0800)]
Ensure that ClassTable has correct alignment in image.

Change-Id: I645b44fae1ec129364449af552c745bf32486b1a

8 years agoRevert "Revert "Combine direct_methods_ and virtual_methods_ fields of mirror::Class""
Alex Light [Tue, 15 Dec 2015 23:02:47 +0000 (15:02 -0800)]
Revert "Revert "Combine direct_methods_ and virtual_methods_ fields of mirror::Class""

This reverts commit ae358c1d5cef227b44d6f4971b79e1ab91aa26eb.

Bug: 24618811

Change-Id: I8becf9bae3258450b90cfef5e79589db7c535a4d

8 years agoFix (non-intrinsic) UnsafeCASObject for the read barrier config.
Hiroshi Yamauchi [Fri, 11 Dec 2015 23:51:04 +0000 (15:51 -0800)]
Fix (non-intrinsic) UnsafeCASObject for the read barrier config.

Make sure the field contains a to-space reference before attempting the
CAS with a special read barrier to avoid an incorrect CAS failure.

This is only about the non-intrinsic UnsafeCASObject.

This seems to fix some jsr166 test failures.

Also, remove the unused template parameter kMaybeDuringStartup.

Bug: 25883050
Bug: 12687968

Change-Id: Ia6f0d882fa3d90c42f14968672d547babcdf6309

8 years agoMerge "Revert "X86: Use locked add rather than mfence""
Aart Bik [Wed, 16 Dec 2015 19:21:38 +0000 (19:21 +0000)]
Merge "Revert "X86: Use locked add rather than mfence""
am: 1c70f18dce

* commit '1c70f18dce7705ff70147ddebf65a97f66df8d5c':
  Revert "X86: Use locked add rather than mfence"

8 years agoMerge "Revert "X86: Use locked add rather than mfence""
Aart Bik [Wed, 16 Dec 2015 19:11:38 +0000 (19:11 +0000)]
Merge "Revert "X86: Use locked add rather than mfence""

8 years agoMerge "Remove references to dlmalloc specific functions"
Dimitry Ivanov [Wed, 16 Dec 2015 19:09:26 +0000 (19:09 +0000)]
Merge "Remove references to dlmalloc specific functions"
am: 1f312652e1

* commit '1f312652e138e05328b9c4c738d3ecbab2d09ae9':
  Remove references to dlmalloc specific functions

8 years agoRevert "X86: Use locked add rather than mfence"
Aart Bik [Wed, 16 Dec 2015 19:06:17 +0000 (19:06 +0000)]
Revert "X86: Use locked add rather than mfence"

This reverts commit 7b3e4f99b25c31048a33a08688557b133ad345ab.

Reason: build error on sdk (linux) in git_mirror-aosp-master-with-vendor , please fix first

art/compiler/optimizing/code_generator_x86_64.cc:4032:7: error: use of
undeclared identifier 'codegen_'
      codegen_->MemoryFence();

Change-Id: I91f8542cfd944b7425d1981c35872dcdcb901e18

8 years agoMerge "Remove references to dlmalloc specific functions"
Dimitry Ivanov [Wed, 16 Dec 2015 19:00:55 +0000 (19:00 +0000)]
Merge "Remove references to dlmalloc specific functions"

8 years agoMerge "X86: Use locked add rather than mfence"
Aart Bik [Wed, 16 Dec 2015 18:56:49 +0000 (18:56 +0000)]
Merge "X86: Use locked add rather than mfence"
am: c3ca1e6543

* commit 'c3ca1e6543ef5e717183c059e68ac34597be7022':
  X86: Use locked add rather than mfence