OSDN Git Service

android-x86/art.git
8 years agoMerge "Disable test for now."
Nicolas Geoffray [Tue, 22 Mar 2016 21:50:13 +0000 (21:50 +0000)]
Merge "Disable test for now."

8 years agoDisable test for now.
Nicolas Geoffray [Tue, 22 Mar 2016 21:47:16 +0000 (21:47 +0000)]
Disable test for now.

bug:27794971
Change-Id: I31e1b2472271c6f54c9e0b7bf75fbdf7ebeba73d

8 years agoMerge "Optimizing: Reduce GraphChecker memory usage."
Vladimir Marko [Tue, 22 Mar 2016 19:02:00 +0000 (19:02 +0000)]
Merge "Optimizing: Reduce GraphChecker memory usage."

8 years agoMerge "ART: Clean up arena allocation memory tracking."
Vladimir Marko [Tue, 22 Mar 2016 18:38:46 +0000 (18:38 +0000)]
Merge "ART: Clean up arena allocation memory tracking."

8 years agoOptimizing: Reduce GraphChecker memory usage.
Vladimir Marko [Tue, 22 Mar 2016 17:51:29 +0000 (17:51 +0000)]
Optimizing: Reduce GraphChecker memory usage.

Bug: 27690481
Change-Id: I15ce5524d94fc1780da02e6471bede66b3a1b82a

8 years agoMerge "Tighten art::HNeg type constraints on its input."
Roland Levillain [Tue, 22 Mar 2016 16:38:18 +0000 (16:38 +0000)]
Merge "Tighten art::HNeg type constraints on its input."

8 years agoART: Clean up arena allocation memory tracking.
Vladimir Marko [Tue, 22 Mar 2016 16:26:33 +0000 (16:26 +0000)]
ART: Clean up arena allocation memory tracking.

Remove unused allocation types, mostly from removed Quick.
Move logging one level up to capture memory used by stack
maps during AOT compilation. Raise the reporting threshold
to 8MiB to limit the output to the worst offenders.

Change-Id: I8c7a01bfa90bc8ec5eab66187eb6850a022f3543

8 years agoMerge "MIPS32: Implement UnsafeCASInt and UnsafeCASObject intrinsics."
Roland Levillain [Tue, 22 Mar 2016 16:19:02 +0000 (16:19 +0000)]
Merge "MIPS32: Implement UnsafeCASInt and UnsafeCASObject intrinsics."

8 years agoMerge "Fix missing header inclusion in art/runtime/thread.cc."
Roland Levillain [Tue, 22 Mar 2016 16:01:54 +0000 (16:01 +0000)]
Merge "Fix missing header inclusion in art/runtime/thread.cc."

8 years agoFix missing header inclusion in art/runtime/thread.cc.
Roland Levillain [Tue, 22 Mar 2016 15:52:22 +0000 (15:52 +0000)]
Fix missing header inclusion in art/runtime/thread.cc.

The file art/runtime/thread.cc was missing an #include of
art/runtime/gc/accounting/heap_bitmap-inl.h, which is
required by art::ReferenceMapVisitor::VisitDeclaringClass to
find the (inlined) implementation of
art::gc::accounting::HeapBitmap::Test.

This fixes the MIPS32 build.

Change-Id: I00a8bc85d8b32cfed02309e13e437f0cfd0d493e

8 years agoMerge "Rename test to avoid too long filenames."
Nicolas Geoffray [Tue, 22 Mar 2016 15:38:56 +0000 (15:38 +0000)]
Merge "Rename test to avoid too long filenames."

8 years agoRename test to avoid too long filenames.
Nicolas Geoffray [Tue, 22 Mar 2016 15:38:11 +0000 (15:38 +0000)]
Rename test to avoid too long filenames.

Change-Id: Ic969c3f303fe7a0c415f670f268421906496ab39

8 years agoMerge "Add an ImtConflictTable to better resolve IMT conflicts."
Nicolas Geoffray [Tue, 22 Mar 2016 15:34:36 +0000 (15:34 +0000)]
Merge "Add an ImtConflictTable to better resolve IMT conflicts."

8 years agoAdd an ImtConflictTable to better resolve IMT conflicts.
Nicolas Geoffray [Sun, 13 Mar 2016 22:22:31 +0000 (22:22 +0000)]
Add an ImtConflictTable to better resolve IMT conflicts.

- Attach a ImtConflictTable to conflict runtime ArtMethod.
- Initially 0, a new one will be created at the first hit of
  the conflict method.
- If the assembly code does not find a target method in the table,
  we will create a new one again, copying the data from the previous
  table and adding the new mapping.

Implemented for arm/arm64/x86/x64.

bug:27556801
bug:24769046

Change-Id: Ie74d1c77cf73d451a1142bdc5e3683f9f84bb4e7

8 years agoMerge "Optimizing: Fix a new valgrind error in image_test."
Vladimir Marko [Tue, 22 Mar 2016 13:55:17 +0000 (13:55 +0000)]
Merge "Optimizing: Fix a new valgrind error in image_test."

8 years agoMerge "Disable two tests for no-prebuild."
Nicolas Geoffray [Tue, 22 Mar 2016 12:56:22 +0000 (12:56 +0000)]
Merge "Disable two tests for no-prebuild."

8 years agoDisable two tests for no-prebuild.
Nicolas Geoffray [Tue, 22 Mar 2016 12:55:30 +0000 (12:55 +0000)]
Disable two tests for no-prebuild.

bug:27784033
Change-Id: Ib4fc86cf970e6f008da006cad1bf18e58fb84346

8 years agoMerge "Revamp run-test 431-optimizing-arith-shifts."
Roland Levillain [Tue, 22 Mar 2016 12:49:54 +0000 (12:49 +0000)]
Merge "Revamp run-test 431-optimizing-arith-shifts."

8 years agoOptimizing: Fix a new valgrind error in image_test.
Vladimir Marko [Tue, 22 Mar 2016 12:31:54 +0000 (12:31 +0000)]
Optimizing: Fix a new valgrind error in image_test.

Bug: 27651442
Bug: 27151098
Change-Id: I23a428be68ccf9f9557df01ee7e920eeeb8da2ba

8 years agoTighten art::HNeg type constraints on its input.
Roland Levillain [Tue, 22 Mar 2016 11:54:37 +0000 (11:54 +0000)]
Tighten art::HNeg type constraints on its input.

Ensure art::HNeg is only passed a type having the kind of
its input.  For a boolean, byte, short, or char input, it
means HNeg's type should be int.

Bug: 27684275
Change-Id: Ic8442c62090a8ab65590754874a14a0deb7acd8d

8 years agoMerge "Fix braino in JitCodeCache."
Nicolas Geoffray [Tue, 22 Mar 2016 11:38:50 +0000 (11:38 +0000)]
Merge "Fix braino in JitCodeCache."

8 years agoFix braino in JitCodeCache.
Nicolas Geoffray [Tue, 22 Mar 2016 11:25:20 +0000 (11:25 +0000)]
Fix braino in JitCodeCache.

A OatQuickMethodHeader can never have its entry point be the
interpreter entrypoint.

Clear hotness counter of methods in more relevant places.

Change-Id: I0563a57eace2e0e4fe2abc76f5e293ddf47b25e3

8 years agoMerge "ART: remove nested include in arch_test"
Bill Buzbee [Tue, 22 Mar 2016 11:20:32 +0000 (11:20 +0000)]
Merge "ART: remove nested include in arch_test"

8 years agoMerge "Revert "Revert "Enable compilation of secondary dex files"""
Nicolas Geoffray [Tue, 22 Mar 2016 11:09:36 +0000 (11:09 +0000)]
Merge "Revert "Revert "Enable compilation of secondary dex files"""

8 years agoMerge "Update Makefile and scripts after Quick removal."
Nicolas Geoffray [Tue, 22 Mar 2016 10:52:46 +0000 (10:52 +0000)]
Merge "Update Makefile and scripts after Quick removal."

8 years agoUpdate Makefile and scripts after Quick removal.
Nicolas Geoffray [Tue, 22 Mar 2016 10:43:01 +0000 (10:43 +0000)]
Update Makefile and scripts after Quick removal.

Change-Id: I7610b34da337d81d9176ceca74e55ab85642a72b

8 years agoMerge "Suppress MIPS32 assembler warnings"
Roland Levillain [Tue, 22 Mar 2016 10:35:59 +0000 (10:35 +0000)]
Merge "Suppress MIPS32 assembler warnings"

8 years agoRevert "Revert "Enable compilation of secondary dex files""
Nicolas Geoffray [Tue, 22 Mar 2016 09:52:40 +0000 (09:52 +0000)]
Revert "Revert "Enable compilation of secondary dex files""

Bug: 26719109

This reverts commit d98a52f0bc6c58e8e538de8335ab9bcb6ae73aa7.

Change-Id: I523675eb6d647fe773dd57b6e1cc398927bb066e

8 years agoMerge "Remove Quick from tree."
Nicolas Geoffray [Tue, 22 Mar 2016 09:41:41 +0000 (09:41 +0000)]
Merge "Remove Quick from tree."

8 years agoMerge "Remove bogus DCHECK()."
Vladimir Marko [Tue, 22 Mar 2016 09:11:36 +0000 (09:11 +0000)]
Merge "Remove bogus DCHECK()."

8 years agoMerge "Add sanity checking to declaring class visiting"
Mathieu Chartier [Tue, 22 Mar 2016 03:08:50 +0000 (03:08 +0000)]
Merge "Add sanity checking to declaring class visiting"

8 years agoAdd sanity checking to declaring class visiting
Mathieu Chartier [Mon, 21 Mar 2016 21:05:56 +0000 (14:05 -0700)]
Add sanity checking to declaring class visiting

When we have an unmarked declaring class in the image, it will
SIGSEGV due to the bitmap being read-only. Print some useful
info to try and debug this.

This probably hurts performance a bit, TODO disable when the bug is
fixed.

Bug: 27493510

(cherry picked from commit b33b1dc78d178060ff0f4327d448fd3a89df51de)

Change-Id: I0c25afd5a6101a71fa1494e12dc019ba64bf43be

8 years agoMerge "Generalize induction and range analysis across type conversions."
Aart Bik [Mon, 21 Mar 2016 22:52:06 +0000 (22:52 +0000)]
Merge "Generalize induction and range analysis across type conversions."

8 years agoMIPS32: Implement UnsafeCASInt and UnsafeCASObject intrinsics.
Alexey Frunze [Fri, 18 Mar 2016 00:21:45 +0000 (17:21 -0700)]
MIPS32: Implement UnsafeCASInt and UnsafeCASObject intrinsics.

Change-Id: Ie871763b9a36075fd3d70ee6e2e241ae1ccc36cf

8 years agoART: remove nested include in arch_test
buzbee [Mon, 21 Mar 2016 22:11:04 +0000 (15:11 -0700)]
ART: remove nested include in arch_test

arch_test #includes asm_support.h while inside the art namespace.
We've gotten away with this until now because the files that
asm_support.h includes had already been included earlier (and thus,
were empty via the #ifdef guard).  However, adding new #includes to
asm_support.h results in art::art:: namespace ugliness.

Change-Id: Ie2671c456bb631976b4280f29a5656b086138047

8 years agoGeneralize induction and range analysis across type conversions.
Aart Bik [Wed, 16 Mar 2016 17:49:38 +0000 (10:49 -0700)]
Generalize induction and range analysis across type conversions.

Rationale:
This changelist implements allowing narrowing conversions within
inductions and loop control. More induction and loops recognized,
more bounds eliminated. We all win. The basic idea is pretty simple
(record type with detected induction) but one has to get all the
details right, as illustrated by the many new unit tests.

BUG=27151098

Change-Id: I254020bfa5fa623799b31bbbb5ccc97d4d5a0100

8 years agoMerge "Move process state into runtime"
Mathieu Chartier [Mon, 21 Mar 2016 19:45:04 +0000 (19:45 +0000)]
Merge "Move process state into runtime"

8 years agoMerge "Disable LZ4HC compressed images"
Mathieu Chartier [Mon, 21 Mar 2016 19:37:48 +0000 (19:37 +0000)]
Merge "Disable LZ4HC compressed images"

8 years agoMove process state into runtime
Mathieu Chartier [Sat, 19 Mar 2016 01:45:41 +0000 (18:45 -0700)]
Move process state into runtime

Clean up.

Bug: 27420435

(cherry picked from commit f8484c8b55f4b423048f94dfabbe44110a039a9b)

Change-Id: Ia20781ee36e6a31c88ca41d3866b26813cff434d

8 years agoDisable LZ4HC compressed images
Mathieu Chartier [Fri, 18 Mar 2016 02:19:15 +0000 (19:19 -0700)]
Disable LZ4HC compressed images

Seem to get randomly compressed incorrectly on volantis. Added
verifiation in the image writer.

Using LZ4HC now silently uses LZ4. This is still safe since both use
the same decompression code.

Bug: 27560444

Change-Id: I652eee7498dc84994993be3a5b0447ec5b246304

8 years agoRemove bogus DCHECK().
Vladimir Marko [Mon, 21 Mar 2016 17:58:51 +0000 (17:58 +0000)]
Remove bogus DCHECK().

Bug: 27684368
Change-Id: Ic3653280b32a471fbfdb5459ea382bc15c86cdbc

8 years agoRemove Quick from tree.
Nicolas Geoffray [Mon, 21 Mar 2016 17:10:24 +0000 (17:10 +0000)]
Remove Quick from tree.

So long, old friend.

Change-Id: I0241c798a34b92bf994fed83888da67d6e7f1891

8 years agoMerge "Optimizing: Fix register allocator validation memory usage."
Vladimir Marko [Mon, 21 Mar 2016 17:36:44 +0000 (17:36 +0000)]
Merge "Optimizing: Fix register allocator validation memory usage."

8 years agoMerge "Fix a CC 145-alloc-tracking-stress deadlock."
Hiroshi Yamauchi [Mon, 21 Mar 2016 17:12:28 +0000 (17:12 +0000)]
Merge "Fix a CC 145-alloc-tracking-stress deadlock."

8 years agoOptimizing: Fix register allocator validation memory usage.
Vladimir Marko [Mon, 21 Mar 2016 12:01:50 +0000 (12:01 +0000)]
Optimizing: Fix register allocator validation memory usage.

Also attribute ArenaBitVector allocations to appropriate
passes. This was used to track down the source of the
excessive memory alloactions.

Bug: 27690481

Change-Id: Ib895984cb7c04e24cbc7abbd8322079bab8ab100

8 years agoMerge "Let tests informa Jack of the min api version"
Yohann Roussel [Mon, 21 Mar 2016 16:39:59 +0000 (16:39 +0000)]
Merge "Let tests informa Jack of the min api version"

8 years agoLet tests informa Jack of the min api version
Yohann Roussel [Mon, 21 Mar 2016 15:26:02 +0000 (16:26 +0100)]
Let tests informa Jack of the min api version

This is necessarry for compiling source code with default method.

Bug: 27371864

Change-Id: I8c9d3690e403729facd2e868cbda761b3488b2f6

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 agoSuppress MIPS32 assembler warnings
Goran Jakovljevic [Mon, 21 Mar 2016 13:24:43 +0000 (14:24 +0100)]
Suppress MIPS32 assembler warnings

Suppressing "no .cprestore pseudo-op used in PIC code".
Suppressing "used $at without .set noat".
Fixing some typos.

Change-Id: I45267890b070cee3dd7f3708cf73e157a08f798e

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 agoFix a CC 145-alloc-tracking-stress deadlock.
Hiroshi Yamauchi [Sat, 19 Mar 2016 00:17:52 +0000 (17:17 -0700)]
Fix a CC 145-alloc-tracking-stress deadlock.

When the allocation tracking gets disabled, there may be threads
blocking on the system weak access for recording allocations, but when
GC reenables the system weak access, it fails to wake up those blocked
threads (which causes a deadlock) because the broadcast call is guarded
by Heap::IsAllocTrackingEnabled(), which is false at this point.

Broadcast in Heap::BroadcastForNewAllocationRecords() regardless of
Heap::IsAllocTrackingEnabled(), which is safe.

Also apply a similar fix for the non-CC case.

Bug: 27467554
Change-Id: I74cf88bceb306589ce11a19a688be223e099e88a

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 agoRevamp run-test 431-optimizing-arith-shifts.
Roland Levillain [Fri, 18 Mar 2016 18:29:58 +0000 (18:29 +0000)]
Revamp run-test 431-optimizing-arith-shifts.

Only pass (32-bit) int values as distances.

Change-Id: Ie6f0422cfc0ca31f5e6b5797fe4f0bfcea003df4

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""