OSDN Git Service

android-x86/art.git
8 years agoMerge "MIPS32: sun.misc.Unsafe get/put intrinsics."
Roland Levillain [Mon, 21 Mar 2016 15:18:43 +0000 (15:18 +0000)]
Merge "MIPS32: sun.misc.Unsafe get/put intrinsics."

8 years agoMerge "Pacify g++ about a set-but-unused variable."
Roland Levillain [Mon, 21 Mar 2016 15:13:15 +0000 (15:13 +0000)]
Merge "Pacify g++ about a set-but-unused variable."

8 years agoMerge "Code cleanup between debugger and jit."
Nicolas Geoffray [Mon, 21 Mar 2016 14:53:09 +0000 (14:53 +0000)]
Merge "Code cleanup between debugger and jit."

8 years agoCode cleanup between debugger and jit.
Nicolas Geoffray [Fri, 18 Mar 2016 09:40:17 +0000 (09:40 +0000)]
Code cleanup between debugger and jit.

This is to allow secondary dex files to be fully compiled.

- No need to do full deopt anymore for breakpoints: code in boot.oat
  is deoptimized as soon as the debugger attaches (and we decided that
  existing frames could not be debugged), and application being
  debugged is compiled debuggable.

- jit should only call UpdateMethodsCode if exit stubs are not
  installed due to lock violation otherwise (the lock level of the
  jit code cache is lower than the deoptimization lock).
  This part needs an overall cleanup beyond the scope of this change.

Change-Id: I38d85dcb270db746c1d6b0ceb7893a1aad8c9655

8 years agoPacify g++ about a set-but-unused variable.
Roland Levillain [Mon, 21 Mar 2016 14:09:54 +0000 (14:09 +0000)]
Pacify g++ about a set-but-unused variable.

This fixes the MIPS32 build.

Change-Id: Ic1e6d4627d69a3701c2f3e8fdd784d97a4e41ba5

8 years agoMerge "Check if the type of an instruction is erroneous before inlining."
Nicolas Geoffray [Mon, 21 Mar 2016 11:38:27 +0000 (11:38 +0000)]
Merge "Check if the type of an instruction is erroneous before inlining."

8 years agoMerge "Call HuntForOriginalReference to get to the null."
Nicolas Geoffray [Mon, 21 Mar 2016 11:27:10 +0000 (11:27 +0000)]
Merge "Call HuntForOriginalReference to get to the null."

8 years agoCheck if the type of an instruction is erroneous before inlining.
Nicolas Geoffray [Fri, 18 Mar 2016 11:36:20 +0000 (11:36 +0000)]
Check if the type of an instruction is erroneous before inlining.

We can get HInstructions typed with a class that is in an error state.
For such classes, we cannot look at the vtable or imt table as they
are not cleanly populated.

bug:27683927

Change-Id: I0d64ca470e1cb6cf9b40e9f02bb9b0bb12c2bac1

8 years agoCall HuntForOriginalReference to get to the null.
Nicolas Geoffray [Fri, 18 Mar 2016 16:25:38 +0000 (16:25 +0000)]
Call HuntForOriginalReference to get to the null.

The null constant might be hiding under a HBoundType
(which we could clean up in instruction simplifier, but
that is orthogonal).

bug:27683874
Change-Id: Ide8ec5bcd439ec0fca5e54175ebeedc5a9f679a3

8 years agoMerge "Fix mising "."
Nicolas Geoffray [Sat, 19 Mar 2016 11:37:04 +0000 (11:37 +0000)]
Merge "Fix mising "."

8 years agoFix mising ".
Nicolas Geoffray [Sat, 19 Mar 2016 10:25:41 +0000 (10:25 +0000)]
Fix mising ".

Change-Id: I2116d97162b8ab6d01fa633650532e190959cad4

8 years agoMerge "Add patchoat check that input oat file has patch section."
Jeff Hao [Fri, 18 Mar 2016 23:23:40 +0000 (23:23 +0000)]
Merge "Add patchoat check that input oat file has patch section."

8 years agoMerge changes from topic 'verify-profile'
Mathieu Chartier [Fri, 18 Mar 2016 22:54:42 +0000 (22:54 +0000)]
Merge changes from topic 'verify-profile'

* changes:
  Fix incorrect dex2oat check
  Add verify-profile compiler filter

8 years agoFix incorrect dex2oat check
Mathieu Chartier [Fri, 18 Mar 2016 22:29:16 +0000 (15:29 -0700)]
Fix incorrect dex2oat check

Should have been VerifyOnlyProfile.

Bug: 27688727

(cherry picked from commit 821dad8f384f8c520f062a317b3b66c78aa12b47)

Change-Id: I451ce8264115283132bc9e34708331a5c62817bf

8 years agoAdd patchoat check that input oat file has patch section.
Jeff Hao [Fri, 18 Mar 2016 04:32:45 +0000 (21:32 -0700)]
Add patchoat check that input oat file has patch section.

Do this check before opening the output file in case this could be
causing the file to become truncated.

Bug: 27723864

(cherry-picked from commit 99503b9805def2ed7d4fe4bf285c6fdd8ddce6ed)

Change-Id: Icf71016adae5404e4f8588f2f5e23da6405ef2e7

8 years agoAdd verify-profile compiler filter
Mathieu Chartier [Thu, 17 Mar 2016 02:08:31 +0000 (19:08 -0700)]
Add verify-profile compiler filter

Only verifies and dex2dex compiles classes in the profile. Goal
is to reduce application launch time.

~2x faster than interpret-only for Facebook.

Bug: 27688727

(cherry picked from commit a079e3aa62cceb76c1c1811e6e09bcaf75e20289)

Change-Id: Iad5aa1adee3aa6c2408820e8cbbab2d4412021b8

8 years agoMerge "ART: Speed up stack guard page install"
Andreas Gampe [Fri, 18 Mar 2016 20:03:50 +0000 (20:03 +0000)]
Merge "ART: Speed up stack guard page install"

8 years agoART: Speed up stack guard page install
Andreas Gampe [Fri, 18 Mar 2016 04:27:19 +0000 (21:27 -0700)]
ART: Speed up stack guard page install

Only the main thread doesn't have its stack mapped in under normal
conditions. Reading each page is a lot of overhead and we should
try to avoid it.

Rewrite to first try a (non-fatal) protect. If the outcome is a
success, finish. Otherwise do the stack mapping, and try again.

Bug: 27718174
Change-Id: I16b214567585ed2f09970f618ccdec7eed219fd3

8 years agoMerge "Ensure art::HRor support boolean, byte, short and char inputs."
Roland Levillain [Fri, 18 Mar 2016 16:16:41 +0000 (16:16 +0000)]
Merge "Ensure art::HRor support boolean, byte, short and char inputs."

8 years agoMerge "Disable jsr166.Collection8Test tests from running."
Przemyslaw Szczepaniak [Fri, 18 Mar 2016 16:05:02 +0000 (16:05 +0000)]
Merge "Disable jsr166.Collection8Test tests from running."

8 years agoDisable jsr166.Collection8Test tests from running.
Przemyslaw Szczepaniak [Fri, 18 Mar 2016 15:38:14 +0000 (15:38 +0000)]
Disable jsr166.Collection8Test tests from running.

This class shouldn't be run on its own, it's made to
be extended.

Bug: 27673907
Change-Id: If224104736344697947f9549b5e8a0bb513416dc

8 years agoEnsure art::HRor support boolean, byte, short and char inputs.
Roland Levillain [Fri, 18 Mar 2016 14:04:28 +0000 (14:04 +0000)]
Ensure art::HRor support boolean, byte, short and char inputs.

Also extend tests covering the IntegerRotateLeft,
LongRotateLeft, IntegerRotateRight and LongRotateRight
intrinsics and their translation into an art::HRor
instruction.

Bug: 27682579
Change-Id: I89f6ea6a7315659a172482bf09875cfb7e7422a1

8 years agoMerge "Generate native debug stackmaps before calls as well."
David Srbecky [Fri, 18 Mar 2016 12:37:03 +0000 (12:37 +0000)]
Merge "Generate native debug stackmaps before calls as well."

8 years agoMerge "Remove TEMP_FAILURE_RETRY for unlink"
Dimitry Ivanov [Fri, 18 Mar 2016 00:20:44 +0000 (00:20 +0000)]
Merge "Remove TEMP_FAILURE_RETRY for unlink"

8 years agoMerge changes Ib979b2a4,I35b3fed2,I356acd03
Hiroshi Yamauchi [Thu, 17 Mar 2016 23:17:23 +0000 (23:17 +0000)]
Merge changes Ib979b2a4,I35b3fed2,I356acd03

* changes:
  Revert "Ignore 145-alloc-tracking-stress run-test failures with CC."
  Revert "Ignore 145-alloc-tracking-stress failures in interpreter with CC."
  Revert "Ignore 145-alloc-tracking-stress failures with JIT and CC."

8 years agoRemove TEMP_FAILURE_RETRY for unlink
Dimitry Ivanov [Thu, 17 Mar 2016 22:59:38 +0000 (15:59 -0700)]
Remove TEMP_FAILURE_RETRY for unlink

unlink(2) does not generate EINTR error

Change-Id: I546b00a61b8ffcbd43b01f5ae6ff31f335be00ab

8 years agoMerge "Complete the 1.8 unsafe memory fences tests."
Aart Bik [Thu, 17 Mar 2016 22:52:06 +0000 (22:52 +0000)]
Merge "Complete the 1.8 unsafe memory fences tests."

8 years agoRevert "Ignore 145-alloc-tracking-stress run-test failures with CC."
Hiroshi Yamauchi [Thu, 17 Mar 2016 21:58:20 +0000 (14:58 -0700)]
Revert "Ignore 145-alloc-tracking-stress run-test failures with CC."

This reverts commit eeed32cd6b9d6949dd1e0ebbea6ea897e58bb2b8.

Bug: 27467554

8 years agoRevert "Ignore 145-alloc-tracking-stress failures in interpreter with CC."
Hiroshi Yamauchi [Thu, 17 Mar 2016 21:57:58 +0000 (14:57 -0700)]
Revert "Ignore 145-alloc-tracking-stress failures in interpreter with CC."

This reverts commit fee85561670331f38e0676baadc9be422d3d079c.

Bug: 27467554

8 years agoRevert "Ignore 145-alloc-tracking-stress failures with JIT and CC."
Hiroshi Yamauchi [Thu, 17 Mar 2016 21:57:25 +0000 (14:57 -0700)]
Revert "Ignore 145-alloc-tracking-stress failures with JIT and CC."

This reverts commit 3296585f5879a9563214f178f97ee689fc651758.

Bug: 27467554
Change-Id: I356acd036f55605a782a83ab971d9808f10d0ed8

8 years agoMerge "Do not JIT boot image during native-debugging (keep AOT code instead)."
David Srbecky [Thu, 17 Mar 2016 20:24:29 +0000 (20:24 +0000)]
Merge "Do not JIT boot image during native-debugging (keep AOT code instead)."

8 years agoComplete the 1.8 unsafe memory fences tests.
Aart Bik [Fri, 11 Mar 2016 23:37:58 +0000 (15:37 -0800)]
Complete the 1.8 unsafe memory fences tests.

Rationale:
The tests for the fences were still TODO, and this
change list completes them. Java does not quite allow
for a weak memory order on just the signal, but this
is as close as a real unit test as I can think of.
Also added a test suggested by Hans.

BUG=26264765

Change-Id: I2dcb9b02fa63f72daf4c39b3744ff2010888713e

8 years agoMerge "Revert "Revert "Fix issue with proxy invocation on default methods"""
Alex Light [Thu, 17 Mar 2016 18:02:06 +0000 (18:02 +0000)]
Merge "Revert "Revert "Fix issue with proxy invocation on default methods"""

8 years agoMerge "Make run-test give extra time when doing gc-stress runs."
Alex Light [Thu, 17 Mar 2016 17:53:47 +0000 (17:53 +0000)]
Merge "Make run-test give extra time when doing gc-stress runs."

8 years agoMerge "Revert "Revert "Assembly TLAB allocation fast path for arm64."""
Hiroshi Yamauchi [Thu, 17 Mar 2016 17:27:11 +0000 (17:27 +0000)]
Merge "Revert "Revert "Assembly TLAB allocation fast path for arm64."""

8 years agoMake run-test give extra time when doing gc-stress runs.
Alex Light [Thu, 17 Mar 2016 16:59:38 +0000 (09:59 -0700)]
Make run-test give extra time when doing gc-stress runs.

Some tests (such as 968-default-partial-compile-generated) are running
up against the current timeout when run with gcstress. This increases
the timeout to allow the tests to run fully.

Change-Id: I89ada3affefd09d07c770a83d849f280293cc8ed

8 years agoGenerate native debug stackmaps before calls as well.
David Srbecky [Mon, 14 Mar 2016 17:14:24 +0000 (17:14 +0000)]
Generate native debug stackmaps before calls as well.

The debugger looks up PC of the call instruction, so the runtime's
stackmap is not sufficient since it is at PC after the instruction.

Change-Id: I0dd06c0b52e8079ea5d064ea10beb12c93584092

8 years agoMerge "Fix bug where verification could crash on unresolved types."
Alex Light [Thu, 17 Mar 2016 16:32:40 +0000 (16:32 +0000)]
Merge "Fix bug where verification could crash on unresolved types."

8 years agoRevert "Revert "Fix issue with proxy invocation on default methods""
Alex Light [Wed, 16 Mar 2016 23:09:45 +0000 (16:09 -0700)]
Revert "Revert "Fix issue with proxy invocation on default methods""

This reverts commit daf58c80d42f024aae0cb94ebd2c0bd61ebbf240.

Bug: 27621360
Change-Id: I56fccf19ae80451be4c316ba14911c667cbe9e47

8 years agoMerge "Dump oat file information as part of DumpForSigQuit."
Nicolas Geoffray [Thu, 17 Mar 2016 14:39:13 +0000 (14:39 +0000)]
Merge "Dump oat file information as part of DumpForSigQuit."

8 years agoMerge "Fix load store elimination bug in the presence of null[i]."
Nicolas Geoffray [Thu, 17 Mar 2016 14:20:58 +0000 (14:20 +0000)]
Merge "Fix load store elimination bug in the presence of null[i]."

8 years agoDump oat file information as part of DumpForSigQuit.
Nicolas Geoffray [Thu, 17 Mar 2016 11:56:54 +0000 (11:56 +0000)]
Dump oat file information as part of DumpForSigQuit.

Change-Id: Ie8d256d8fa16565105cfe5c39cc96826983469da

8 years agoFix load store elimination bug in the presence of null[i].
Nicolas Geoffray [Thu, 17 Mar 2016 10:44:24 +0000 (10:44 +0000)]
Fix load store elimination bug in the presence of null[i].

Due to the dex specification, we can be in a state where
two array get with the same dex register inputs are typed
differently.

bug:27683874

Change-Id: Ia821fd32e86c306093372249e7686332a7584263

8 years agoDo not JIT boot image during native-debugging (keep AOT code instead).
David Srbecky [Wed, 16 Mar 2016 00:06:24 +0000 (00:06 +0000)]
Do not JIT boot image during native-debugging (keep AOT code instead).

The performance impact is currently significant and being able
to debug framework is not our primary goal for native debugging.

Change-Id: I3366c2a6317004f9dd16700b271a6c9b974f1c6e

8 years agoMerge "Check GetDumpNativeStackOnSigQuit() for daemons."
Nicolas Geoffray [Thu, 17 Mar 2016 10:50:11 +0000 (10:50 +0000)]
Merge "Check GetDumpNativeStackOnSigQuit() for daemons."

8 years agoCheck GetDumpNativeStackOnSigQuit() for daemons.
Nicolas Geoffray [Thu, 17 Mar 2016 09:35:04 +0000 (09:35 +0000)]
Check GetDumpNativeStackOnSigQuit() for daemons.

The flag is passed by run-test to avoid libunwind crash flakiness,
so we should check it when dumping threads.

Change-Id: I3a3fcfd80ab254a315d58d629c81161fea9900dc

8 years agoMerge "ART: Remember whether the cache was pruned"
Andreas Gampe [Thu, 17 Mar 2016 01:03:54 +0000 (01:03 +0000)]
Merge "ART: Remember whether the cache was pruned"

8 years agoMIPS32: sun.misc.Unsafe get/put intrinsics.
Chris Larsen [Mon, 14 Dec 2015 21:26:14 +0000 (13:26 -0800)]
MIPS32: sun.misc.Unsafe get/put intrinsics.

- int sun.misc.Unsafe.getInt(Object o, long offset)
- int sun.misc.Unsafe.getIntVolatile(Object o, long offset)
- long sun.misc.Unsafe.getLong(Object o, long offset)
- long sun.misc.Unsafe.getLongVolatile(Object o, long offset)
- Object sun.misc.Unsafe.getObject(Object o, long offset)
- Object sun.misc.Unsafe.getObjectVolatile(Object o, long offset)
- void sun.misc.Unsafe.putInt(Object o, long offset, int x)
- void sun.misc.Unsafe.putOrderedInt(Object o, long offset, int x)
- void sun.misc.Unsafe.putIntVolatile(Object o, long offset, int x)
- void sun.misc.Unsafe.putObject(Object o, long offset, Object x)
- void sun.misc.Unsafe.putOrderedObject(Object o, long offset, Object x)
- void sun.misc.Unsafe.putObjectVolatile(Object o, long offset, Object x)
- void sun.misc.Unsafe.putLong(Object o, long offset, long x)
- void sun.misc.Unsafe.putOrderedLong(Object o, long offset, long x)
- void sun.misc.Unsafe.putLongVolatile(Object o, long offset, long x)

Change-Id: I89c07a443ee81a5573a083e871b82f446416b71f

8 years agoMerge "ART: Mterp arm64 2-operand double rem fix"
Bill Buzbee [Wed, 16 Mar 2016 23:06:01 +0000 (23:06 +0000)]
Merge "ART: Mterp arm64 2-operand double rem fix"

8 years agoMerge "Revert "Fix issue with proxy invocation on default methods""
Alex Light [Wed, 16 Mar 2016 23:02:59 +0000 (23:02 +0000)]
Merge "Revert "Fix issue with proxy invocation on default methods""

8 years agoRevert "Fix issue with proxy invocation on default methods"
Alex Light [Wed, 16 Mar 2016 23:00:49 +0000 (23:00 +0000)]
Revert "Fix issue with proxy invocation on default methods"

This reverts commit ec3b7ab8f008f36f1072d4ba03da204229b95976.

Change-Id: Idfb2c63c246cc5dae7670503e70ad3f62bb1e1eb

8 years agoMerge "Fix valgrind-test-art-host to run both 32-bit and 64-bit tests."
Hiroshi Yamauchi [Wed, 16 Mar 2016 22:55:50 +0000 (22:55 +0000)]
Merge "Fix valgrind-test-art-host to run both 32-bit and 64-bit tests."

8 years agoMerge "Add verify-art-runtime usage to dex2oat"
Mathieu Chartier [Wed, 16 Mar 2016 22:02:20 +0000 (22:02 +0000)]
Merge "Add verify-art-runtime usage to dex2oat"

8 years agoAdd verify-art-runtime usage to dex2oat
Mathieu Chartier [Wed, 16 Mar 2016 21:29:17 +0000 (14:29 -0700)]
Add verify-art-runtime usage to dex2oat

Bug: 27688793

(cherry picked from commit c6068709a482065d6f5426640f1c9316797508e3)

Change-Id: Idcf6b8023a15c816168ce42456d2bd7b463d0951

8 years agoART: Mterp arm64 2-operand double rem fix
buzbee [Wed, 16 Mar 2016 21:39:50 +0000 (14:39 -0700)]
ART: Mterp arm64 2-operand double rem fix

An instruction ordering bug caused 2-operand double-precision
rem operations to be performed incorrectly on the arm64 fast
interpreter.  Also, fixes the existing omnibus-opcodes smoke test
to better catch 2-operand float and double operation problems
(the problem was masked in the existing test).

Bug: 27604215
Change-Id: I9fac1e61d9defe7d623c611406c35921abb65b04

8 years agoFix bug where verification could crash on unresolved types.
Alex Light [Tue, 15 Mar 2016 16:50:26 +0000 (09:50 -0700)]
Fix bug where verification could crash on unresolved types.

Bug: 27626708

Change-Id: I708ee18215dccadc00ff3daa1e01c2830475ccae

8 years agoMerge "Fix race in AllocEntrypointsInstrumented"
Mathieu Chartier [Wed, 16 Mar 2016 21:07:31 +0000 (21:07 +0000)]
Merge "Fix race in AllocEntrypointsInstrumented"

8 years agoRevert "Revert "Assembly TLAB allocation fast path for arm64.""
Hiroshi Yamauchi [Wed, 16 Mar 2016 18:23:10 +0000 (11:23 -0700)]
Revert "Revert "Assembly TLAB allocation fast path for arm64.""

This reverts commit 52fa2c698b995c21940f366cf3a44204ddf4f8e9.

Fix the mvn instructions.

Bug: 9986565
Change-Id: Ib7b2023cd54c57131442e1de85c64f40b818313d

8 years agoMerge "Fix issue with proxy invocation on default methods"
Alex Light [Wed, 16 Mar 2016 20:39:54 +0000 (20:39 +0000)]
Merge "Fix issue with proxy invocation on default methods"

8 years agoFix race in AllocEntrypointsInstrumented
Mathieu Chartier [Wed, 16 Mar 2016 18:25:29 +0000 (11:25 -0700)]
Fix race in AllocEntrypointsInstrumented

We were using the quick_alloc_entry_points_instrumentation_counter_,
this counter is updated before the threads are suspended. The
allocator could come out of a suspend point, see that threads are
supposedly still no instrumented, continue the allocation, then
suddenly quick_alloc_entry_points_instrumentation_counter_ becomes
1 and alloc_tracking_enabled_ becomes true resulting in a failing
DCHECK.

The fix is to add a boolean that is updated only when the threads
are suspended.

Bug: 27506909

(cherry picked from commit 77d993107773b7b9bd7f07ce08d0aaac1631bf84)

Change-Id: Id12983ef77c4fddb0394e4439ce0829777f1a70b

8 years agoFix valgrind-test-art-host to run both 32-bit and 64-bit tests.
Hiroshi Yamauchi [Wed, 16 Mar 2016 18:39:33 +0000 (11:39 -0700)]
Fix valgrind-test-art-host to run both 32-bit and 64-bit tests.

Bug: 27156726
Change-Id: Ie93405d6238f7cc5eba351cfb6c5b0f5d8348908

8 years agoMerge "Remove --native-debuggable compiler option."
David Srbecky [Wed, 16 Mar 2016 17:54:52 +0000 (17:54 +0000)]
Merge "Remove --native-debuggable compiler option."

8 years agoMerge "Make art::HCompare support boolean, byte, short and char inputs."
Roland Levillain [Wed, 16 Mar 2016 17:54:34 +0000 (17:54 +0000)]
Merge "Make art::HCompare support boolean, byte, short and char inputs."

8 years agoRemove --native-debuggable compiler option.
David Srbecky [Sun, 13 Mar 2016 22:00:07 +0000 (22:00 +0000)]
Remove --native-debuggable compiler option.

Check if both --debuggable and --generate-debug-info are set instead.

History: I have recently added the --native-debuggable flag to control
whether extra stack maps are generated in order to produce accurate
native line number mapping of all generated code. I didn't want to
include it into --debuggable since we compile boot.oat as debuggable
and so it would be affected.

On second thought, it would have been reasonable to generate the extra
stackmaps only if both --debuggable and --generate-debug-info are set,
instead of introducing another compiler flag. This means we do not
affect boot.oat but we still get the extra stack maps if DWARF debug
information is explicitly requested.

Change-Id: I7e5e557e4850a88b3b6f86178d2cb645fb1e1110

8 years agoMerge "Forgot space."
Nicolas Geoffray [Wed, 16 Mar 2016 17:10:40 +0000 (17:10 +0000)]
Merge "Forgot space."

8 years agoMerge "runtime: delete native/java_lang_Runtime.h."
Narayan Kamath [Wed, 16 Mar 2016 17:04:52 +0000 (17:04 +0000)]
Merge "runtime: delete native/java_lang_Runtime.h."

8 years agoForgot space.
Nicolas Geoffray [Wed, 16 Mar 2016 17:01:39 +0000 (17:01 +0000)]
Forgot space.

Change-Id: If9eced6d5bd6d8d0248bad0e7b12095fb5a84d26

8 years agoMerge "Fix inliner crash related to type propagation."
Nicolas Geoffray [Wed, 16 Mar 2016 16:58:22 +0000 (16:58 +0000)]
Merge "Fix inliner crash related to type propagation."

8 years agoMake art::HCompare support boolean, byte, short and char inputs.
Roland Levillain [Tue, 15 Mar 2016 15:02:50 +0000 (15:02 +0000)]
Make art::HCompare support boolean, byte, short and char inputs.

Also extend tests covering the IntegerSignum, LongSignum,
IntegerCompare and LongCompare intrinsics and their
translation into an art::HCompare instruction.

Bug: 27629913
Change-Id: I0afc75ee6e82602b01ec348bbb36a08e8abb8bb8

8 years agoMerge "Re-enable checker tests 536 and 537"
Sebastien Hertz [Wed, 16 Mar 2016 16:16:41 +0000 (16:16 +0000)]
Merge "Re-enable checker tests 536 and 537"

8 years agoRe-enable checker tests 536 and 537
Sebastien Hertz [Wed, 16 Mar 2016 15:20:10 +0000 (16:20 +0100)]
Re-enable checker tests 536 and 537

They were disabled due to a bug in Jack that is fixed now.

Bug: 25635944
Change-Id: Id68824a8b4abbb6710e61897ffb3ed5daf839413

8 years agoFix inliner crash related to type propagation.
Nicolas Geoffray [Wed, 16 Mar 2016 15:16:06 +0000 (15:16 +0000)]
Fix inliner crash related to type propagation.

- Do not agressively try to resolve a return type.
- Deal with unresolved return type.

bug:25492619

Change-Id: Idc9c96a0b376fe5ee86b411c02ce7078c7f48c84

8 years agoruntime: delete native/java_lang_Runtime.h.
Narayan Kamath [Wed, 16 Mar 2016 15:11:15 +0000 (15:11 +0000)]
runtime: delete native/java_lang_Runtime.h.

Now unused, except for an unnecessary include.

bug: 27387202
Change-Id: Ie77dc0da156a64e8ea03af1878b44d20c16c5ae5

8 years agoMerge "Clean up NullCheck generation and record stats about it."
Calin Juravle [Wed, 16 Mar 2016 14:40:08 +0000 (14:40 +0000)]
Merge "Clean up NullCheck generation and record stats about it."

8 years agoMerge "Improve compiler stats"
Calin Juravle [Wed, 16 Mar 2016 14:39:49 +0000 (14:39 +0000)]
Merge "Improve compiler stats"

8 years agoMerge "Add more statistics for memory use of the JIT."
Nicolas Geoffray [Wed, 16 Mar 2016 14:39:16 +0000 (14:39 +0000)]
Merge "Add more statistics for memory use of the JIT."

8 years agoAdd more statistics for memory use of the JIT.
Nicolas Geoffray [Wed, 16 Mar 2016 14:20:06 +0000 (14:20 +0000)]
Add more statistics for memory use of the JIT.

Collect data for stack maps, profiling info, and compiled code.

bug:27520994

Change-Id: Ic87361230c96ce0090027a37d750e948d806c597

8 years agoMerge "Call __jit_debug_register_code() indirectly via global variable."
David Srbecky [Wed, 16 Mar 2016 14:13:02 +0000 (14:13 +0000)]
Merge "Call __jit_debug_register_code() indirectly via global variable."

8 years agoClean up NullCheck generation and record stats about it.
Calin Juravle [Wed, 16 Mar 2016 14:05:09 +0000 (14:05 +0000)]
Clean up NullCheck generation and record stats about it.

This removes redundant code from the generators and allows for easier
stat recording.

Change-Id: Iccd4368f9e9d87a6fecb863dee4e2145c97851c4

8 years agoImprove compiler stats
Calin Juravle [Wed, 16 Mar 2016 11:53:41 +0000 (11:53 +0000)]
Improve compiler stats

- report the max size of arena alloc
- report how many virtual or interface invokes were inlined

Change-Id: I82f154a8e25b5e3890181a1aa11346cdc3f93e37

8 years agoMerge "Set USE_JACK to true."
Nicolas Geoffray [Wed, 16 Mar 2016 13:55:51 +0000 (13:55 +0000)]
Merge "Set USE_JACK to true."

8 years agoSet USE_JACK to true.
Nicolas Geoffray [Wed, 16 Mar 2016 10:55:57 +0000 (10:55 +0000)]
Set USE_JACK to true.

This fixes running checker when just doing art/test/run-test.

Change-Id: Icfac5896cdfd64eb16b0127d5f16f552b93ad03e

8 years agoMerge "Move specific build rule of 529 into the default script."
Nicolas Geoffray [Wed, 16 Mar 2016 12:52:06 +0000 (12:52 +0000)]
Merge "Move specific build rule of 529 into the default script."

8 years agoMove specific build rule of 529 into the default script.
Nicolas Geoffray [Wed, 16 Mar 2016 12:39:17 +0000 (12:39 +0000)]
Move specific build rule of 529 into the default script.

Change-Id: I90ff4b4c64a4e077b360bbec7a8e21b52139f395

8 years agoMerge "Collect memory use for the JIT."
Nicolas Geoffray [Wed, 16 Mar 2016 11:19:18 +0000 (11:19 +0000)]
Merge "Collect memory use for the JIT."

8 years agoCollect memory use for the JIT.
Nicolas Geoffray [Tue, 8 Mar 2016 16:57:48 +0000 (16:57 +0000)]
Collect memory use for the JIT.

bug:27520994

Change-Id: I67b0c5b822001bfde8738a988c1ade69f1a26e3f

8 years agoMerge "Accept boolean as an input of HDivZeroCheck."
Nicolas Geoffray [Wed, 16 Mar 2016 11:15:43 +0000 (11:15 +0000)]
Merge "Accept boolean as an input of HDivZeroCheck."

8 years agoAccept boolean as an input of HDivZeroCheck.
Nicolas Geoffray [Wed, 16 Mar 2016 11:03:54 +0000 (11:03 +0000)]
Accept boolean as an input of HDivZeroCheck.

All our arithmetic operations accept it.

bug:27624718
Change-Id: I1f6bb95dc77ecb3fb2fcabb35a93b31c524bfa0a

8 years agoMerge "Fix checker test."
Nicolas Geoffray [Wed, 16 Mar 2016 10:54:51 +0000 (10:54 +0000)]
Merge "Fix checker test."

8 years agoFix checker test.
Nicolas Geoffray [Wed, 16 Mar 2016 10:41:53 +0000 (10:41 +0000)]
Fix checker test.

Change-Id: I1388868ca69c9f964f2019ff79d5c7aa0f00d57c

8 years agoMerge "Revert "Assembly TLAB allocation fast path for arm64.""
Nicolas Geoffray [Wed, 16 Mar 2016 10:23:43 +0000 (10:23 +0000)]
Merge "Revert "Assembly TLAB allocation fast path for arm64.""

8 years agoRevert "Assembly TLAB allocation fast path for arm64."
Nicolas Geoffray [Wed, 16 Mar 2016 10:23:03 +0000 (10:23 +0000)]
Revert "Assembly TLAB allocation fast path for arm64."

Assembly code does not compile
Bug: 9986565

This reverts commit b7e52b02a82c69e59c88f06945fb21672dfe9923.

Change-Id: I80de1bcd6270e2d76f79cb708811a41c039ea5bb

8 years agoMerge "Revert "Tentative fix for build breakage with read barriers.""
Nicolas Geoffray [Wed, 16 Mar 2016 10:23:20 +0000 (10:23 +0000)]
Merge "Revert "Tentative fix for build breakage with read barriers.""

8 years agoRevert "Tentative fix for build breakage with read barriers."
Nicolas Geoffray [Wed, 16 Mar 2016 10:22:09 +0000 (10:22 +0000)]
Revert "Tentative fix for build breakage with read barriers."

This reverts commit 448f21e2c1cb43b193736598719979ebd2aed0b0.

Change-Id: Id821effa06697b1464581bcd9c8f34cd0ea69896

8 years agoMerge "Optimizing: Fix arm64 shifter operand test."
Vladimir Marko [Wed, 16 Mar 2016 10:13:48 +0000 (10:13 +0000)]
Merge "Optimizing: Fix arm64 shifter operand test."

8 years agoMerge "Make art::HCompare side effect free."
Roland Levillain [Wed, 16 Mar 2016 10:12:39 +0000 (10:12 +0000)]
Merge "Make art::HCompare side effect free."

8 years agoOptimizing: Fix arm64 shifter operand test.
Vladimir Marko [Wed, 16 Mar 2016 10:02:39 +0000 (10:02 +0000)]
Optimizing: Fix arm64 shifter operand test.

Generic simplifier removes 3 shifts from the test since
    https://android-review.googlesource.com/208199
and then the arm64-specific shifter operands don't apply.

Bug: 27638111
Change-Id: Ie6c6ec1f40ec263f3e40e8129f29e0191fd9de50

8 years agoMerge "ART: Fix ignoring duplicate fields."
Vladimir Marko [Wed, 16 Mar 2016 09:56:14 +0000 (09:56 +0000)]
Merge "ART: Fix ignoring duplicate fields."

8 years agoMerge "Tentative fix for build breakage with read barriers."
Nicolas Geoffray [Wed, 16 Mar 2016 09:37:52 +0000 (09:37 +0000)]
Merge "Tentative fix for build breakage with read barriers."

8 years agoTentative fix for build breakage with read barriers.
Nicolas Geoffray [Wed, 16 Mar 2016 09:36:35 +0000 (09:36 +0000)]
Tentative fix for build breakage with read barriers.

Change-Id: I490821357525bdeb19c330f350635bd645f8ab53