OSDN Git Service

android-x86/art.git
8 years agoMerge "lambda: unit test for lambda expressions at Java Language source level."
Aart Bik [Wed, 11 Nov 2015 18:33:32 +0000 (18:33 +0000)]
Merge "lambda: unit test for lambda expressions at Java Language source level."
am: a828aadd6d

* commit 'a828aadd6dd9a5e73daf9a167b71c88bc2bdfbd7':
  lambda: unit test for lambda expressions at Java Language source level.

8 years agoMerge "lambda: unit test for lambda expressions at Java Language source level."
Aart Bik [Wed, 11 Nov 2015 18:30:36 +0000 (18:30 +0000)]
Merge "lambda: unit test for lambda expressions at Java Language source level."

8 years agolambda: unit test for lambda expressions at Java Language source level.
Aart Bik [Wed, 11 Nov 2015 00:49:45 +0000 (16:49 -0800)]
lambda: unit test for lambda expressions at Java Language source level.

Rationale: having a checkers-flavored unit test will enable testing
           both if the correct HIR is generated using the checker
           as well as the correctness of execution (interpreter for now,
           but native code later).

Change-Id: I588e9955efaaf53e5c5e3398399e009041cd65f0

8 years agoMerge "Correct exception behavior for default methods"
Alex Light [Wed, 11 Nov 2015 18:12:08 +0000 (18:12 +0000)]
Merge "Correct exception behavior for default methods"
am: d15cd44c90

* commit 'd15cd44c905e055d2d60b847ba4b221edda5e119':
  Correct exception behavior for default methods

8 years agoMerge "Correct exception behavior for default methods"
Alex Light [Wed, 11 Nov 2015 18:07:14 +0000 (18:07 +0000)]
Merge "Correct exception behavior for default methods"

8 years agoMerge "Revert "Revert "Run type propagation after inliner only when needed."""
Calin Juravle [Wed, 11 Nov 2015 13:59:20 +0000 (13:59 +0000)]
Merge "Revert "Revert "Run type propagation after inliner only when needed."""
am: 54af9bd45a

* commit '54af9bd45a482376b5fe8d4ac291afb5bc950065':
  Revert "Revert "Run type propagation after inliner only when needed.""

8 years agoMerge "Revert "Revert "Run type propagation after inliner only when needed."""
Calin Juravle [Wed, 11 Nov 2015 13:55:39 +0000 (13:55 +0000)]
Merge "Revert "Revert "Run type propagation after inliner only when needed."""

8 years agoRevert "Revert "Run type propagation after inliner only when needed.""
Calin Juravle [Mon, 26 Oct 2015 14:05:01 +0000 (14:05 +0000)]
Revert "Revert "Run type propagation after inliner only when needed.""

This reverts commit 271743601650308c7ac5c7a3ec35025d8130a298.

Change-Id: I173e27a0a4d7d54f90ca459eb48d280d1d40ab70

8 years agoMerge "Ignore failures of WeakHashMapTest#test_keySet in libcore tests."
Roland Levillain [Wed, 11 Nov 2015 12:44:10 +0000 (12:44 +0000)]
Merge "Ignore failures of WeakHashMapTest#test_keySet in libcore tests."
am: c85f88b4c1

* commit 'c85f88b4c145015401d6849c83d9061bd998861f':
  Ignore failures of WeakHashMapTest#test_keySet in libcore tests.

8 years agoMerge "Ignore failures of WeakHashMapTest#test_keySet in libcore tests."
Roland Levillain [Wed, 11 Nov 2015 12:40:26 +0000 (12:40 +0000)]
Merge "Ignore failures of WeakHashMapTest#test_keySet in libcore tests."

8 years agoIgnore failures of WeakHashMapTest#test_keySet in libcore tests.
Roland Levillain [Wed, 11 Nov 2015 12:16:52 +0000 (12:16 +0000)]
Ignore failures of WeakHashMapTest#test_keySet in libcore tests.

The outcome of this test depends on a weak reference being
collected before a timeout, which sometimes fails.  This
test used to pass, but recent changes have made this
non-determinism more frequent.  Until we rewrite this
properly (if ever), just ignore these failures.

Bug: 25437292
Change-Id: I1f041f6dfc1318026bce966575477486207f5351

8 years agoMerge "Optimizing/ARM: Improve shifts of long values by a constant."
Vladimir Marko [Wed, 11 Nov 2015 11:28:36 +0000 (11:28 +0000)]
Merge "Optimizing/ARM: Improve shifts of long values by a constant."
am: ea30daef25

* commit 'ea30daef253f4b616ec7c9d4c7e134f33454d19d':
  Optimizing/ARM: Improve shifts of long values by a constant.

8 years agoMerge "Optimizing/ARM: Improve shifts of long values by a constant."
Vladimir Marko [Wed, 11 Nov 2015 11:27:03 +0000 (11:27 +0000)]
Merge "Optimizing/ARM: Improve shifts of long values by a constant."

8 years agoOptimizing/ARM: Improve shifts of long values by a constant.
Vladimir Marko [Tue, 10 Nov 2015 19:31:26 +0000 (19:31 +0000)]
Optimizing/ARM: Improve shifts of long values by a constant.

Change-Id: Id66ef8cdb9e64306f2be547370b90cc100a3e086

8 years agoCorrect exception behavior for default methods
Alex Light [Fri, 9 Oct 2015 22:59:48 +0000 (15:59 -0700)]
Correct exception behavior for default methods

Default methods are defined to throw an IncompatibleClassChangeError
(ICCE) when they are called and there is no "best" implementation.
Previously we would simply throw an ICCE during class loading as soon
as we noticed that this would happen if called. This makes us wait
until we actually attempt to execute the method. Furthermore, this
allows us to use other, non-conflicting, methods on the object as
normal.

Furthermore, this makes us correctly throw AbstractMethodErrors in
cases where all default implementations of a method are overridden by
abstract declarations.

Adds 3 tests for this new behavior.

Bug: 24618811

Change-Id: Id891958a81f9b3862b2ce5919636aabef7d3422e

8 years agoMerge "Don\'t use fixed addresses in mem map test"
Mathieu Chartier [Tue, 10 Nov 2015 22:14:40 +0000 (22:14 +0000)]
Merge "Don\'t use fixed addresses in mem map test"
am: d7c76bd7e8

* commit 'd7c76bd7e867b151ac81ef41810614c7b4cc898e':
  Don't use fixed addresses in mem map test

8 years agoMerge "Don't use fixed addresses in mem map test"
Mathieu Chartier [Tue, 10 Nov 2015 22:09:40 +0000 (22:09 +0000)]
Merge "Don't use fixed addresses in mem map test"

8 years agoMerge "ART: Fix leak in Heap"
Andreas Gampe [Tue, 10 Nov 2015 21:58:29 +0000 (21:58 +0000)]
Merge "ART: Fix leak in Heap"
am: 5b1157bf01

* commit '5b1157bf01fa1f9ca3dca57fc874d857d4083aca':
  ART: Fix leak in Heap

8 years agoDon't use fixed addresses in mem map test
Mathieu Chartier [Tue, 10 Nov 2015 18:32:52 +0000 (10:32 -0800)]
Don't use fixed addresses in mem map test

We obtain a valid address instead of assuming there won't be a map
there.

These checks used to be OK when we didn't start the runtime.

Change-Id: Ie636ed3773d2c0c62d87e57623ee4ce380c64db0

8 years agoMerge "ART: Fix leak in Heap"
Andreas Gampe [Tue, 10 Nov 2015 21:55:08 +0000 (21:55 +0000)]
Merge "ART: Fix leak in Heap"

8 years agoART: Fix leak in Heap
Andreas Gampe [Tue, 10 Nov 2015 21:34:17 +0000 (13:34 -0800)]
ART: Fix leak in Heap

Delete a mutex in the destructor.

Change-Id: I7fb8f3f9e7a30baf352f384f38520eb0dd4906eb

8 years agoMerge "Optimizing: Clean up Equal/NotEqual constant folding for nulls."
Vladimir Marko [Tue, 10 Nov 2015 20:05:23 +0000 (20:05 +0000)]
Merge "Optimizing: Clean up Equal/NotEqual constant folding for nulls."
am: 972c5a6205

* commit '972c5a62051ccd4558bc8956262183fe3ec466a4':
  Optimizing: Clean up Equal/NotEqual constant folding for nulls.

8 years agoMerge "Optimizing: Clean up Equal/NotEqual constant folding for nulls."
Vladimir Marko [Tue, 10 Nov 2015 20:04:08 +0000 (20:04 +0000)]
Merge "Optimizing: Clean up Equal/NotEqual constant folding for nulls."

8 years agoMerge "Rosalloc fast path in assembly for x86_64."
Hiroshi Yamauchi [Tue, 10 Nov 2015 19:58:10 +0000 (19:58 +0000)]
Merge "Rosalloc fast path in assembly for x86_64."
am: 688567c06f

* commit '688567c06f9da553eb3c766a13a4cd32ca31ddce':
  Rosalloc fast path in assembly for x86_64.

8 years agoMerge "Rosalloc fast path in assembly for x86_64."
Hiroshi Yamauchi [Tue, 10 Nov 2015 19:55:05 +0000 (19:55 +0000)]
Merge "Rosalloc fast path in assembly for x86_64."

8 years agoOptimizing: Clean up Equal/NotEqual constant folding for nulls.
Vladimir Marko [Tue, 10 Nov 2015 19:53:01 +0000 (19:53 +0000)]
Optimizing: Clean up Equal/NotEqual constant folding for nulls.

Change-Id: I17766395092ec61df61ef0b9ae4c37fd38164a3b

8 years agoMerge "ART: Remove unnecessary helper method from GraphChecker"
David Brazdil [Tue, 10 Nov 2015 19:08:48 +0000 (19:08 +0000)]
Merge "ART: Remove unnecessary helper method from GraphChecker"
am: 5c7c8248e4

* commit '5c7c8248e48857f3a7c98a02d93c6971834d7241':
  ART: Remove unnecessary helper method from GraphChecker

8 years agoMerge "ART: Remove unnecessary helper method from GraphChecker"
David Brazdil [Tue, 10 Nov 2015 19:04:28 +0000 (19:04 +0000)]
Merge "ART: Remove unnecessary helper method from GraphChecker"

8 years agoART: Remove unnecessary helper method from GraphChecker
David Brazdil [Tue, 10 Nov 2015 18:49:28 +0000 (18:49 +0000)]
ART: Remove unnecessary helper method from GraphChecker

Change-Id: I59f50a559da560033f4c9407d83b68fc5d64bd3c

8 years agoMerge "Optimizing: Improve constant folding + DCE for inlining."
Vladimir Marko [Tue, 10 Nov 2015 18:36:31 +0000 (18:36 +0000)]
Merge "Optimizing: Improve constant folding + DCE for inlining."
am: feaf26db63

* commit 'feaf26db63a62bce5a80550f500efa67ff64424f':
  Optimizing: Improve constant folding + DCE for inlining.

8 years agoMerge "ART: Refactor iteration over normal/exceptional successors"
David Brazdil [Tue, 10 Nov 2015 18:36:22 +0000 (18:36 +0000)]
Merge "ART: Refactor iteration over normal/exceptional successors"
am: 9696702985

* commit '969670298516b9316b36270fcc4c21bfcd499595':
  ART: Refactor iteration over normal/exceptional successors

8 years agoMerge "Optimizing: Improve constant folding + DCE for inlining."
Vladimir Marko [Tue, 10 Nov 2015 18:31:55 +0000 (18:31 +0000)]
Merge "Optimizing: Improve constant folding + DCE for inlining."

8 years agoMerge "ART: Refactor iteration over normal/exceptional successors"
David Brazdil [Tue, 10 Nov 2015 18:30:18 +0000 (18:30 +0000)]
Merge "ART: Refactor iteration over normal/exceptional successors"

8 years agoART: Refactor iteration over normal/exceptional successors
David Brazdil [Tue, 10 Nov 2015 11:07:31 +0000 (11:07 +0000)]
ART: Refactor iteration over normal/exceptional successors

Add helper methods on HBasicBlock which return ArrayRef with the
suitable sub-array of the `successors_` list.

Change-Id: I66c83bb56f2984d7550bf77c48110af4087515a8

8 years agoOptimizing: Improve constant folding + DCE for inlining.
Vladimir Marko [Tue, 10 Nov 2015 17:14:35 +0000 (17:14 +0000)]
Optimizing: Improve constant folding + DCE for inlining.

Run constant folding before DCE in inliner to eliminate more
code that can prevent inlining. Improve the constant folding
to evaluate Equals and NotEquals for null inputs.

Change-Id: I876ffb903ef39484370b6c8793f0f8467a977362

8 years agoMerge "ART: Improve comment about inlining into try/catch"
David Brazdil [Tue, 10 Nov 2015 13:12:09 +0000 (13:12 +0000)]
Merge "ART: Improve comment about inlining into try/catch"
am: 8a6463a705

* commit '8a6463a7052ec69e7c0b94a65b26807f570e6359':
  ART: Improve comment about inlining into try/catch

8 years agoMerge "ART: Improve comment about inlining into try/catch"
David Brazdil [Tue, 10 Nov 2015 13:10:08 +0000 (13:10 +0000)]
Merge "ART: Improve comment about inlining into try/catch"

8 years agoART: Improve comment about inlining into try/catch
David Brazdil [Tue, 10 Nov 2015 13:04:30 +0000 (13:04 +0000)]
ART: Improve comment about inlining into try/catch

Change-Id: I66a4fd3206847c8d5bb57b1678d9d3dc94331294

8 years agoMerge "ART: Fix critical edge checks in GraphChecker"
David Brazdil [Tue, 10 Nov 2015 13:06:14 +0000 (13:06 +0000)]
Merge "ART: Fix critical edge checks in GraphChecker"
am: ee57104951

* commit 'ee57104951acf3dc5f6343f1d3022e3cd73016f5':
  ART: Fix critical edge checks in GraphChecker

8 years agoMerge "Revert "Revert "ART: Update DCE to work with try/catch"""
David Brazdil [Tue, 10 Nov 2015 13:06:06 +0000 (13:06 +0000)]
Merge "Revert "Revert "ART: Update DCE to work with try/catch"""
am: 83dcccb96f

* commit '83dcccb96ff8424fb4ab46bcda7c422d59a8c135':
  Revert "Revert "ART: Update DCE to work with try/catch""

8 years agoMerge "ART: Fix critical edge checks in GraphChecker"
David Brazdil [Tue, 10 Nov 2015 13:01:50 +0000 (13:01 +0000)]
Merge "ART: Fix critical edge checks in GraphChecker"

8 years agoMerge "Revert "Revert "ART: Update DCE to work with try/catch"""
David Brazdil [Tue, 10 Nov 2015 13:01:28 +0000 (13:01 +0000)]
Merge "Revert "Revert "ART: Update DCE to work with try/catch"""

8 years agoART: Fix critical edge checks in GraphChecker
David Brazdil [Tue, 10 Nov 2015 10:12:41 +0000 (10:12 +0000)]
ART: Fix critical edge checks in GraphChecker

Previous CL I5a13b8bb74509b48f5d628906f7158af007f99ae fixed logic for
splitting critical edges. The same logic is used in GraphChecker when
testing critical edges weren't introduced by a pass. This patch updates
it too.

Bug: 25493695
Bug: 25454012
Change-Id: I56226c82324ee55ae2fbe7262608dd2868d930f1

8 years agoMerge "ART: Add clarifying comment"
David Brazdil [Tue, 10 Nov 2015 09:48:17 +0000 (09:48 +0000)]
Merge "ART: Add clarifying comment"
am: 1963759e84

* commit '1963759e84664b51b617b00e15728f439895033b':
  ART: Add clarifying comment

8 years agoMerge "ART: Add clarifying comment"
David Brazdil [Tue, 10 Nov 2015 09:46:41 +0000 (09:46 +0000)]
Merge "ART: Add clarifying comment"

8 years agoART: Add clarifying comment
David Brazdil [Tue, 10 Nov 2015 09:43:28 +0000 (09:43 +0000)]
ART: Add clarifying comment

Change-Id: I189ec4cae0aa1a5245a79e86d1ec0592e38eac4a

8 years agoRevert "Revert "ART: Update DCE to work with try/catch""
David Brazdil [Mon, 2 Nov 2015 20:24:55 +0000 (20:24 +0000)]
Revert "Revert "ART: Update DCE to work with try/catch""

The previous CL failed because it did not update inputs of catch phis.
Since phi input indices cannot be easily mapped back to throwing
instructions, this new implementation at least removes catch phi uses
of values defined in the removed blocks to preserve graph consistency.

This reverts commit fb552d7061746f7a90fdd5002696e255e2e15c35.

Change-Id: I63d95915d1ef50e71d3bcf0cd10aaded554035b4

8 years agoMerge "Delete flaky DCHECK"
Mathieu Chartier [Tue, 10 Nov 2015 03:06:40 +0000 (03:06 +0000)]
Merge "Delete flaky DCHECK"
am: 1b87033ed8

* commit '1b87033ed83ba03983b49237da89ce36d319b68e':
  Delete flaky DCHECK

8 years agoMerge "Delete flaky DCHECK"
Mathieu Chartier [Tue, 10 Nov 2015 03:02:58 +0000 (03:02 +0000)]
Merge "Delete flaky DCHECK"

8 years agoDelete flaky DCHECK
Mathieu Chartier [Tue, 10 Nov 2015 03:01:00 +0000 (19:01 -0800)]
Delete flaky DCHECK

Fixes mips build

Change-Id: I738b41f09f3c926f21640e358cf0bd5557167b0e

8 years agoMerge "Fix mac build"
Mathieu Chartier [Tue, 10 Nov 2015 02:54:25 +0000 (02:54 +0000)]
Merge "Fix mac build"
am: a5c3e44663

* commit 'a5c3e44663c3b9c97fe350b4191cec079738fca3':
  Fix mac build

8 years agoMerge "Fix mac build"
Mathieu Chartier [Tue, 10 Nov 2015 02:51:37 +0000 (02:51 +0000)]
Merge "Fix mac build"

8 years agoFix mac build
Mathieu Chartier [Tue, 10 Nov 2015 02:50:49 +0000 (18:50 -0800)]
Fix mac build

Change-Id: I22bf169f15483e54b97d77ff0887cd1fde428af9

8 years agoMerge "Add low_4gb support to MapFile and MapFileAtAddress"
Mathieu Chartier [Tue, 10 Nov 2015 02:31:49 +0000 (02:31 +0000)]
Merge "Add low_4gb support to MapFile and MapFileAtAddress"
am: ff12923229

* commit 'ff12923229e713c27b9a9588a3fdf8d59475d756':
  Add low_4gb support to MapFile and MapFileAtAddress

8 years agoRosalloc fast path in assembly for x86_64.
Hiroshi Yamauchi [Thu, 29 Oct 2015 22:34:54 +0000 (15:34 -0700)]
Rosalloc fast path in assembly for x86_64.

Measurements (host, ms)
    BinaryTrees:   324 ->  360 (+11%)
    BinaryTrees with 64 MB alloc stack + 1 GB heap:
                   299 ->  275  (-8%)
    MemAllocTest:  414 ->  368 (-11%)

Interestingly, BinaryTrees gets slower with default settings due to more
blocking (gc-for-alloc) collections. It seems because allocations are
faster, the allocation stack size and the heap size become the
bottleneck (note both an allocation stack overflow as well as heap
exhaustion cause gc-for-alloc collections). With a larger allocation
stack and heap where no blocking collections are observed, BinaryTrees
gets faster.

Bug: 9986565
Change-Id: I642b9fecd0a583cc133998c2f3932de815c4a757

8 years agoMerge "Add low_4gb support to MapFile and MapFileAtAddress"
Mathieu Chartier [Tue, 10 Nov 2015 02:07:04 +0000 (02:07 +0000)]
Merge "Add low_4gb support to MapFile and MapFileAtAddress"

8 years agoMerge "Some cleanup for tests 960-965 build scripts."
Alex Light [Tue, 10 Nov 2015 01:39:51 +0000 (01:39 +0000)]
Merge "Some cleanup for tests 960-965 build scripts."
am: 02c330f6af

* commit '02c330f6afdb2a528fc5d6c54a5fd683ddaa219f':
  Some cleanup for tests 960-965 build scripts.

8 years agoMerge "Some cleanup for tests 960-965 build scripts."
Alex Light [Tue, 10 Nov 2015 01:36:31 +0000 (01:36 +0000)]
Merge "Some cleanup for tests 960-965 build scripts."

8 years agoAdd low_4gb support to MapFile and MapFileAtAddress
Mathieu Chartier [Mon, 9 Nov 2015 23:16:56 +0000 (15:16 -0800)]
Add low_4gb support to MapFile and MapFileAtAddress

Motivation is to use this for loading app images in low 4GB at a
non fixed address.

Added test.

Bug: 22858531
Change-Id: I0f79a4a7bfbfbdfc112e41b25c8682b1fb932ab7

8 years agoSome cleanup for tests 960-965 build scripts.
Alex Light [Mon, 9 Nov 2015 22:26:35 +0000 (14:26 -0800)]
Some cleanup for tests 960-965 build scripts.

Make all 96* build scripts consistent and update 965 to build and run
with jack.

Change-Id: If27ee9c92880c75307a18b054ba926670877073a

8 years agoMerge "ART: Rerun the verifier for compile-time failures"
Andreas Gampe [Mon, 9 Nov 2015 21:30:04 +0000 (21:30 +0000)]
Merge "ART: Rerun the verifier for compile-time failures"
am: 78232f2482

* commit '78232f2482e71fef255796633da68bb769baa93a':
  ART: Rerun the verifier for compile-time failures

8 years agoMerge "ART: Rerun the verifier for compile-time failures"
Andreas Gampe [Mon, 9 Nov 2015 21:25:47 +0000 (21:25 +0000)]
Merge "ART: Rerun the verifier for compile-time failures"

8 years agoMerge "Class Linker: Implement default interface verification ordering."
Alex Light [Mon, 9 Nov 2015 19:32:21 +0000 (19:32 +0000)]
Merge "Class Linker: Implement default interface verification ordering."
am: f1584a6f52

* commit 'f1584a6f5251892509097c3bb30bd91d36634d0a':
  Class Linker: Implement default interface verification ordering.

8 years agoMerge "Class Linker: Implement default interface verification ordering."
Alex Light [Mon, 9 Nov 2015 19:30:10 +0000 (19:30 +0000)]
Merge "Class Linker: Implement default interface verification ordering."

8 years agoClass Linker: Implement default interface verification ordering.
Alex Light [Wed, 7 Oct 2015 23:08:36 +0000 (16:08 -0700)]
Class Linker: Implement default interface verification ordering.

We ensure that default interface verification failure is propagated to
the implementing class so that the compiler is able to properly handle
verification failures. Furthermore we ensure that default interfaces
are verified at the same time their implementing classes are.

This does not add additional support for default methods to the verifier.

This adds a basic test of this functionality.

Previously assumptions made about the order of verification in our
code could cause a check failure during compilation. Our old code
assumed that all code that would be run during a classes
initialization had been verified before any of it was run. The default
interfaces broke this assumption. Now we will simply verify default
interfaces with any classes that implement them.

Bug: 24618811

Change-Id: Ia11a50a28889dbd7ca22ffa730ef443e39f3cb5b

8 years agoART: Rerun the verifier for compile-time failures
Andreas Gampe [Fri, 6 Nov 2015 04:39:56 +0000 (20:39 -0800)]
ART: Rerun the verifier for compile-time failures

To aid app failure diagnosis, by default re-run the verifier at
runtime to compute a better VerifyError message.

Rewrite the verifier driver code to pass the last actual low-level
verifier message.

Bug: 25432718
Change-Id: Ib8e6dd1ce8121045c0d38f54969100094c3dde6e

8 years agoMerge "Add more image writer comments and clean up"
Mathieu Chartier [Mon, 9 Nov 2015 18:09:43 +0000 (18:09 +0000)]
Merge "Add more image writer comments and clean up"
am: 3c58937626

* commit '3c5893762675d90697d9205b76dc24e2d04e27ca':
  Add more image writer comments and clean up

8 years agoMerge "Add more image writer comments and clean up"
Mathieu Chartier [Mon, 9 Nov 2015 18:07:01 +0000 (18:07 +0000)]
Merge "Add more image writer comments and clean up"

8 years agoAdd more image writer comments and clean up
Mathieu Chartier [Fri, 6 Nov 2015 00:33:15 +0000 (16:33 -0800)]
Add more image writer comments and clean up

Bug: 22858531

Change-Id: Ia3663856a7d9f67d9d9af329a54707ae2dc55a48

8 years agoMerge "Revert "Revert "Revert "Use Jack lang dev version for compiling art tests""""
Nicolas Geoffray [Mon, 9 Nov 2015 14:27:11 +0000 (14:27 +0000)]
Merge "Revert "Revert "Revert "Use Jack lang dev version for compiling art tests""""
am: ce0f43b97f

* commit 'ce0f43b97ffb5e4d14c5df6607d8efb46a5dc9d2':
  Revert "Revert "Revert "Use Jack lang dev version for compiling art tests"""

8 years agoMerge "Revert "Revert "Revert "Use Jack lang dev version for compiling art tests""""
Nicolas Geoffray [Mon, 9 Nov 2015 14:25:19 +0000 (14:25 +0000)]
Merge "Revert "Revert "Revert "Use Jack lang dev version for compiling art tests""""

8 years agoRevert "Revert "Revert "Use Jack lang dev version for compiling art tests"""
Nicolas Geoffray [Mon, 9 Nov 2015 14:00:28 +0000 (14:00 +0000)]
Revert "Revert "Revert "Use Jack lang dev version for compiling art tests"""

Breaks 962 and 963 run-tests.

This reverts commit a6017d8fa6acfa35f6fad8169162f0e5bd034bc4.

Change-Id: I185e803640309f0055e6a3d767da201527b523e2

8 years agoMerge "Optimizing: Rewrite search for common dominators."
Vladimir Marko [Mon, 9 Nov 2015 13:59:29 +0000 (13:59 +0000)]
Merge "Optimizing: Rewrite search for common dominators."
am: 31f1584b6b

* commit '31f1584b6bc3fc39dfb396edb24ec42f193f587c':
  Optimizing: Rewrite search for common dominators.

8 years agoMerge "Optimizing: Rewrite search for common dominators."
Vladimir Marko [Mon, 9 Nov 2015 13:53:13 +0000 (13:53 +0000)]
Merge "Optimizing: Rewrite search for common dominators."

8 years agoOptimizing: Rewrite search for common dominators.
Vladimir Marko [Fri, 6 Nov 2015 11:02:08 +0000 (11:02 +0000)]
Optimizing: Rewrite search for common dominators.

Provide a utility class that can be used to quickly search
for common dominators of two or more blocks. Change the
algorithm to avoid memory allocations.

Change-Id: Id72c975fc42377cb7622902f87c4262ea7b3cc38

8 years agoMerge "Fix mip64 build: hide current method input only if it exists."
Vladimir Marko [Mon, 9 Nov 2015 13:36:56 +0000 (13:36 +0000)]
Merge "Fix mip64 build: hide current method input only if it exists."
am: 934ea11065

* commit '934ea11065c0806d3f57a632fac9032707afbfc6':
  Fix mip64 build: hide current method input only if it exists.

8 years agoMerge "Fix mip64 build: hide current method input only if it exists."
Vladimir Marko [Mon, 9 Nov 2015 13:32:35 +0000 (13:32 +0000)]
Merge "Fix mip64 build: hide current method input only if it exists."

8 years agoFix mip64 build: hide current method input only if it exists.
Vladimir Marko [Mon, 9 Nov 2015 12:54:16 +0000 (12:54 +0000)]
Fix mip64 build: hide current method input only if it exists.

Change-Id: I7d3cb34843d421babfb1f93469e770c05ee8d5a9

8 years agoMerge "ART: Fix critical edge splitting under try/catch"
David Brazdil [Mon, 9 Nov 2015 12:49:26 +0000 (12:49 +0000)]
Merge "ART: Fix critical edge splitting under try/catch"
am: f11f5ebe32

* commit 'f11f5ebe321fde9f6efb49d75b861606391b6502':
  ART: Fix critical edge splitting under try/catch

8 years agoMerge "ART: Fix critical edge splitting under try/catch"
David Brazdil [Mon, 9 Nov 2015 12:47:19 +0000 (12:47 +0000)]
Merge "ART: Fix critical edge splitting under try/catch"

8 years agoMerge "Revert "Revert "Use Jack lang dev version for compiling art tests"""
Nicolas Geoffray [Mon, 9 Nov 2015 12:45:50 +0000 (12:45 +0000)]
Merge "Revert "Revert "Use Jack lang dev version for compiling art tests"""
am: df7029f225

* commit 'df7029f2254f67230362c4bdfaddac00c342e660':
  Revert "Revert "Use Jack lang dev version for compiling art tests""

8 years agoMerge "Revert "Revert "Use Jack lang dev version for compiling art tests"""
Nicolas Geoffray [Mon, 9 Nov 2015 12:44:51 +0000 (12:44 +0000)]
Merge "Revert "Revert "Use Jack lang dev version for compiling art tests"""

8 years agoMerge "Fix build: lint error in elf_builder.h"
David Srbecky [Mon, 9 Nov 2015 12:00:22 +0000 (12:00 +0000)]
Merge "Fix build: lint error in elf_builder.h"
am: 44612873bb

* commit '44612873bb02be8a59e16aa50f61cce9e9cc9547':
  Fix build: lint error in elf_builder.h

8 years agoMerge "Fix build: lint error in elf_builder.h"
David Srbecky [Mon, 9 Nov 2015 11:58:43 +0000 (11:58 +0000)]
Merge "Fix build: lint error in elf_builder.h"

8 years agoFix build: lint error in elf_builder.h
David Srbecky [Mon, 9 Nov 2015 11:56:52 +0000 (11:56 +0000)]
Fix build: lint error in elf_builder.h

Change-Id: I862bfe6c9a9f6ec3c16af2a720ce2ca75492e574

8 years agoMerge "Rewrite ElfBuilder to make streaming directly to file easier."
David Srbecky [Mon, 9 Nov 2015 11:32:30 +0000 (11:32 +0000)]
Merge "Rewrite ElfBuilder to make streaming directly to file easier."
am: 03771d84e8

* commit '03771d84e83738313e5ccc0ce64bfccb1febd1b4':
  Rewrite ElfBuilder to make streaming directly to file easier.

8 years agoMerge "Rewrite ElfBuilder to make streaming directly to file easier."
David Srbecky [Mon, 9 Nov 2015 11:30:31 +0000 (11:30 +0000)]
Merge "Rewrite ElfBuilder to make streaming directly to file easier."

8 years agoART: Fix critical edge splitting under try/catch
David Brazdil [Fri, 6 Nov 2015 01:36:20 +0000 (01:36 +0000)]
ART: Fix critical edge splitting under try/catch

A critical edge would not be split if the predecessor ends with
TryBoundary. This would eventually trip liveness analysis because
a back edge block would have smaller liveness position than a nested
loop.

Another implication of this change is that an edge between a loop's
pre-header ending with TryBoundary and the header will be split,
guaranteeing that a pre-header always has just one successor.

Bug: 25493695
Bug: 25454012
Change-Id: I5a13b8bb74509b48f5d628906f7158af007f99ae

8 years agoMerge "Optimizing: Remove unused ArtMethod* input from HInvokeStaticOrDirect."
Vladimir Marko [Mon, 9 Nov 2015 10:16:23 +0000 (10:16 +0000)]
Merge "Optimizing: Remove unused ArtMethod* input from HInvokeStaticOrDirect."
am: 3e5b3c982a

* commit '3e5b3c982a5837384829ffd6726c5a30714cbfcb':
  Optimizing: Remove unused ArtMethod* input from HInvokeStaticOrDirect.

8 years agoMerge "Optimizing: Remove unused ArtMethod* input from HInvokeStaticOrDirect."
Vladimir Marko [Mon, 9 Nov 2015 10:14:35 +0000 (10:14 +0000)]
Merge "Optimizing: Remove unused ArtMethod* input from HInvokeStaticOrDirect."

8 years agoMerge "Remove unused variable."
Nicolas Geoffray [Mon, 9 Nov 2015 09:19:54 +0000 (09:19 +0000)]
Merge "Remove unused variable."
am: 2649cba0fb

* commit '2649cba0fb7cdbd8fa60cb4f2fb320fb2b18ee37':
  Remove unused variable.

8 years agoMerge "Remove unused variable."
Nicolas Geoffray [Mon, 9 Nov 2015 09:19:05 +0000 (09:19 +0000)]
Merge "Remove unused variable."

8 years agoRemove unused variable.
Nicolas Geoffray [Mon, 9 Nov 2015 09:15:15 +0000 (09:15 +0000)]
Remove unused variable.

Change-Id: I29d80004eba897b72304ec83fe89ed1071a24024

8 years agoMerge "Fix interaction between JIT and instrumentation."
Nicolas Geoffray [Mon, 9 Nov 2015 08:59:12 +0000 (08:59 +0000)]
Merge "Fix interaction between JIT and instrumentation."
am: dc18417745

* commit 'dc184177452ed438718befccd9d984cc93de51cc':
  Fix interaction between JIT and instrumentation.

8 years agoMerge "Fix interaction between JIT and instrumentation."
Nicolas Geoffray [Mon, 9 Nov 2015 08:57:28 +0000 (08:57 +0000)]
Merge "Fix interaction between JIT and instrumentation."

8 years agoRewrite ElfBuilder to make streaming directly to file easier.
David Srbecky [Mon, 26 Oct 2015 10:57:09 +0000 (10:57 +0000)]
Rewrite ElfBuilder to make streaming directly to file easier.

The previous design required knowing all the sections and their
sizes before even the first byte of the file was written.

The new design allows sections to be written one by one without
any knowledge of later sections.  Furthermore, as soon as
section is started, its virtual memory address is known,
which removes the need for the various patching passes.

The new ElfBuilder essentially tries to be a thin wrapper
around OutputStream which keeps track where the various
sections start/end and then writes their ELF headers.

Change-Id: I817e7f3b41882e4e4b9b442cfe56e4ef2e26babd

8 years agoMerge "MIPS64: small improvements in code generation"
Nicolas Geoffray [Sat, 7 Nov 2015 14:18:18 +0000 (14:18 +0000)]
Merge "MIPS64: small improvements in code generation"
am: 2264f624e4

* commit '2264f624e41acf09b17c3961bd52966e43f2b58f':
  MIPS64: small improvements in code generation

8 years agoMerge "MIPS64: small improvements in code generation"
Nicolas Geoffray [Sat, 7 Nov 2015 14:15:46 +0000 (14:15 +0000)]
Merge "MIPS64: small improvements in code generation"

8 years agoMerge "MIPS64: Improve integer division by constants"
Nicolas Geoffray [Sat, 7 Nov 2015 14:15:46 +0000 (14:15 +0000)]
Merge "MIPS64: Improve integer division by constants"
am: 4202a2ff49

* commit '4202a2ff49d77eda813052d091675bf53c46cb0f':
  MIPS64: Improve integer division by constants

8 years agoMerge "MIPS64: Improve integer division by constants"
Nicolas Geoffray [Sat, 7 Nov 2015 14:13:58 +0000 (14:13 +0000)]
Merge "MIPS64: Improve integer division by constants"