OSDN Git Service

android-x86/art.git
8 years agoMerge "Revert "Revert "ART: Do not eagerly type LoopPhi [null, ...]"""
David Brazdil [Wed, 2 Dec 2015 12:07:51 +0000 (12:07 +0000)]
Merge "Revert "Revert "ART: Do not eagerly type LoopPhi [null, ...]"""
am: d585b2c891

* commit 'd585b2c891fbf559cef4b4a7076183f5c7dc6a18':
  Revert "Revert "ART: Do not eagerly type LoopPhi [null, ...]""

8 years agoMerge "Revert "Revert "ART: Do not eagerly type LoopPhi [null, ...]"""
David Brazdil [Wed, 2 Dec 2015 12:04:18 +0000 (12:04 +0000)]
Merge "Revert "Revert "ART: Do not eagerly type LoopPhi [null, ...]"""

8 years agoRevert "Revert "ART: Do not eagerly type LoopPhi [null, ...]""
David Brazdil [Wed, 2 Dec 2015 09:06:57 +0000 (09:06 +0000)]
Revert "Revert "ART: Do not eagerly type LoopPhi [null, ...]""

Fixes one more place where RTP expected the parent to have valid RTI.

This reverts commit 5f3fb18e9705f7d0d594f665858bff2020409c6a.

Bug: 25899441
Change-Id: I65c55a81617ffb82c2de2470eda562600b10d479

8 years agoMerge "Optimizing: Add checker tests for sharpening."
Vladimir Marko [Wed, 2 Dec 2015 11:40:59 +0000 (11:40 +0000)]
Merge "Optimizing: Add checker tests for sharpening."
am: 874121e358

* commit '874121e35863c1b166e3bb95009f392a569521f0':
  Optimizing: Add checker tests for sharpening.

8 years agoMerge "Optimizing: Add checker tests for sharpening."
Vladimir Marko [Wed, 2 Dec 2015 11:37:04 +0000 (11:37 +0000)]
Merge "Optimizing: Add checker tests for sharpening."

8 years agoOptimizing: Add checker tests for sharpening.
Vladimir Marko [Tue, 1 Dec 2015 14:58:23 +0000 (14:58 +0000)]
Optimizing: Add checker tests for sharpening.

This is a follow-up to
    https://android-review.googlesource.com/184116 .

Change-Id: Ib03c424fb673afc5ccce15d7d072b7572b47799a

8 years agoMerge "Revert "ART: Do not eagerly type LoopPhi [null, ...]""
David Brazdil [Wed, 2 Dec 2015 09:08:22 +0000 (09:08 +0000)]
Merge "Revert "ART: Do not eagerly type LoopPhi [null, ...]""
am: 08a84acc7a

* commit '08a84acc7adb1bb076595eb961bd4667896e5075':
  Revert "ART: Do not eagerly type LoopPhi [null, ...]"

8 years agoMerge "Revert "ART: Do not eagerly type LoopPhi [null, ...]""
David Brazdil [Wed, 2 Dec 2015 09:04:08 +0000 (09:04 +0000)]
Merge "Revert "ART: Do not eagerly type LoopPhi [null, ...]""

8 years agoRevert "ART: Do not eagerly type LoopPhi [null, ...]"
David Brazdil [Wed, 2 Dec 2015 09:03:44 +0000 (09:03 +0000)]
Revert "ART: Do not eagerly type LoopPhi [null, ...]"

Breaks some libcore tests. Revert to unblock others while investigating.

This reverts commit 3a738bfe9784b9ea0f2fccbe75f0c72ede536641.

Change-Id: I9f103c692199b8f9b6e7af469fc424512b57544a

8 years agoMerge "ART: set growth limit to heap size when it is larger."
Mathieu Chartier [Tue, 1 Dec 2015 23:36:38 +0000 (23:36 +0000)]
Merge "ART: set growth limit to heap size when it is larger."
am: 84e174e2de

* commit '84e174e2de721b69ff6774e8e5c0b2e859e39953':
  ART: set growth limit to heap size when it is larger.

8 years agoMerge "ART: set growth limit to heap size when it is larger."
Mathieu Chartier [Tue, 1 Dec 2015 23:20:39 +0000 (23:20 +0000)]
Merge "ART: set growth limit to heap size when it is larger."

8 years agoMerge "Dynamic BCE (based on induction range analysis)"
Aart Bik [Tue, 1 Dec 2015 22:47:23 +0000 (22:47 +0000)]
Merge "Dynamic BCE (based on induction range analysis)"
am: 80bbbbf9bb

* commit '80bbbbf9bbc4e725516a43c31d65c522ce15310b':
  Dynamic BCE (based on induction range analysis)

8 years agoMerge "Dynamic BCE (based on induction range analysis)"
Aart Bik [Tue, 1 Dec 2015 22:44:35 +0000 (22:44 +0000)]
Merge "Dynamic BCE (based on induction range analysis)"

8 years agoDynamic BCE (based on induction range analysis)
Aart Bik [Mon, 30 Nov 2015 18:17:46 +0000 (10:17 -0800)]
Dynamic BCE (based on induction range analysis)

Rationale:
A rewritten dynamic BCE that uses induction variable analysis
to generate the run-time tests before a loop in order to
eliminate bounds-checks from its body. This CL removes now
obsoleted induction related code inside the BCE module.
Also, the dynamic test generation is placed more strategically,
since we missed a few cases where static analysis does better.

Most significant performance improvements (filtering noise) is about:

Linpack +20%
LU    > +10%

Change-Id: I03d7631857154b6a131b132f26a2dc568af1b3a1

8 years agoMerge "Support null error_msg for select MemMap functions"
Mathieu Chartier [Tue, 1 Dec 2015 18:20:20 +0000 (18:20 +0000)]
Merge "Support null error_msg for select MemMap functions"
am: f4c5393952

* commit 'f4c539395244ccfc14aebaf53fdc1122287f65a6':
  Support null error_msg for select MemMap functions

8 years agoMerge "Support null error_msg for select MemMap functions"
Mathieu Chartier [Tue, 1 Dec 2015 18:14:53 +0000 (18:14 +0000)]
Merge "Support null error_msg for select MemMap functions"

8 years agoMerge "Revert "Don\'t use the compiler driver for method resolution.""
Nicolas Geoffray [Tue, 1 Dec 2015 16:33:08 +0000 (16:33 +0000)]
Merge "Revert "Don\'t use the compiler driver for method resolution.""
am: 1cfe7fd885

* commit '1cfe7fd885fc21292dfe74b554c38b07304cb10e':
  Revert "Don't use the compiler driver for method resolution."

8 years agoMerge "Revert "Don't use the compiler driver for method resolution.""
Nicolas Geoffray [Tue, 1 Dec 2015 16:28:28 +0000 (16:28 +0000)]
Merge "Revert "Don't use the compiler driver for method resolution.""

8 years agoRevert "Don't use the compiler driver for method resolution."
Nicolas Geoffray [Tue, 1 Dec 2015 16:28:10 +0000 (16:28 +0000)]
Revert "Don't use the compiler driver for method resolution."

Fails 425 in debuggable mode.

This reverts commit 4db0bf9c4db6a09716c3388b7d2f88d534470339.

Change-Id: I346df8f75674564fc4fb241c60f23e250fc7f0a7

8 years agoMerge "ART: Do not eagerly type LoopPhi [null, ...]"
David Brazdil [Tue, 1 Dec 2015 15:21:27 +0000 (15:21 +0000)]
Merge "ART: Do not eagerly type LoopPhi [null, ...]"
am: 8b3609b4da

* commit '8b3609b4daacfd6d823fe9d9052955db2202aa0f':
  ART: Do not eagerly type LoopPhi [null, ...]

8 years agoMerge "ART: Do not eagerly type LoopPhi [null, ...]"
David Brazdil [Tue, 1 Dec 2015 15:17:21 +0000 (15:17 +0000)]
Merge "ART: Do not eagerly type LoopPhi [null, ...]"

8 years agoART: Do not eagerly type LoopPhi [null, ...]
David Brazdil [Mon, 30 Nov 2015 10:38:12 +0000 (10:38 +0000)]
ART: Do not eagerly type LoopPhi [null, ...]

ReferenceTypePropagation would eagerly set the type of each loop phi
to the type of the first input prior to beginning the fix-point
iteration. While this does make the algorithm converge faster, it
should not be applied when the first input is a NullConstant becuase
that sets the type of the phi and all dependent instructions to Object.

Bug: 25899441
Change-Id: Iff1ed26a63fe4332eaf88d9ca171e287f10ba1a6

8 years agoMerge "Remove unnecessary workaround to vogar escaping issue"
Paul Duffin [Tue, 1 Dec 2015 14:48:32 +0000 (14:48 +0000)]
Merge "Remove unnecessary workaround to vogar escaping issue"
am: dd5d8bd15d

* commit 'dd5d8bd15d9486c2d596e768436895ce884576a0':
  Remove unnecessary workaround to vogar escaping issue

8 years agoMerge "Remove unnecessary workaround to vogar escaping issue"
Paul Duffin [Tue, 1 Dec 2015 14:43:54 +0000 (14:43 +0000)]
Merge "Remove unnecessary workaround to vogar escaping issue"

8 years agoMerge "Don\'t use the compiler driver for method resolution."
Nicolas Geoffray [Tue, 1 Dec 2015 14:28:57 +0000 (14:28 +0000)]
Merge "Don\'t use the compiler driver for method resolution."
am: 753e8c43e1

* commit '753e8c43e1e68cade83e42f8111745d5c6f14f90':
  Don't use the compiler driver for method resolution.

8 years agoMerge "Don't use the compiler driver for method resolution."
Nicolas Geoffray [Tue, 1 Dec 2015 14:24:03 +0000 (14:24 +0000)]
Merge "Don't use the compiler driver for method resolution."

8 years agoDon't use the compiler driver for method resolution.
Nicolas Geoffray [Mon, 23 Nov 2015 09:35:04 +0000 (09:35 +0000)]
Don't use the compiler driver for method resolution.

The compiler driver makes assumptions that don't hold for
the optimizing compiler, and will for example always go to
slow path for an invoke-super when there's no verified method.

Also fix GenerateInvokeVirtual in the presence of intrinsics.

Next change will address some of the TODOs in sharpening.cc.

Change-Id: I2b0e543ee9b9bebcadb2d26de29e850c59ad58b9

8 years agoMerge "Move PC-relative addressing bases to a better position."
Vladimir Marko [Tue, 1 Dec 2015 14:18:42 +0000 (14:18 +0000)]
Merge "Move PC-relative addressing bases to a better position."
am: b1aa617639

* commit 'b1aa617639c01c0dffaafd1641e0304ad179b6a2':
  Move PC-relative addressing bases to a better position.

8 years agoMerge "Move PC-relative addressing bases to a better position."
Vladimir Marko [Tue, 1 Dec 2015 14:15:52 +0000 (14:15 +0000)]
Merge "Move PC-relative addressing bases to a better position."

8 years agoRemove unnecessary workaround to vogar escaping issue
Paul Duffin [Tue, 1 Dec 2015 13:56:52 +0000 (13:56 +0000)]
Remove unnecessary workaround to vogar escaping issue

Vogar didn't handle arguments for the target (i.e. after --)
properly if they had characters that affect shell parsing, e.g.
spaces. In order to work around it the tools/run-jdwp-tests.sh
script added some extra quotes that now cause it to break. This
simply removes those quotes.

Change-Id: If0349f87cacf93ff8e454780e187fe7ff1623c99

8 years agoMerge "Optimizing/ARM: Implement kDexCachePcRelative dispatch."
Vladimir Marko [Tue, 1 Dec 2015 12:59:39 +0000 (12:59 +0000)]
Merge "Optimizing/ARM: Implement kDexCachePcRelative dispatch."
am: 1965328f59

* commit '1965328f598854bfdf2d41cea582460d11aeba48':
  Optimizing/ARM: Implement kDexCachePcRelative dispatch.

8 years agoMerge "Optimizing/ARM: Implement kDexCachePcRelative dispatch."
Vladimir Marko [Tue, 1 Dec 2015 12:57:09 +0000 (12:57 +0000)]
Merge "Optimizing/ARM: Implement kDexCachePcRelative dispatch."

8 years agoMove PC-relative addressing bases to a better position.
Vladimir Marko [Wed, 25 Nov 2015 15:25:10 +0000 (15:25 +0000)]
Move PC-relative addressing bases to a better position.

Move the platform-specific HX86ComputeBaseMethodAddress and
HArmDexCacheArraysBase to the latest dominator of their uses
outside any loop. This brings the base closer to the first
use (previously, it was in the entry block) and relieves
some pressure on the register allocator while avoiding
recalculation of the base in a loop.

Change-Id: I231aa81eb5b4de9af2d0167054d06b65eb18a636

8 years agoOptimizing/ARM: Implement kDexCachePcRelative dispatch.
Vladimir Marko [Tue, 24 Nov 2015 13:45:23 +0000 (13:45 +0000)]
Optimizing/ARM: Implement kDexCachePcRelative dispatch.

Change-Id: I0fe2da50a30a3f62bec8ea01688dd1fec84b1831

8 years agoMerge "Refactor oat file writing to give Dex2Oat more control."
Vladimir Marko [Tue, 1 Dec 2015 10:21:17 +0000 (10:21 +0000)]
Merge "Refactor oat file writing to give Dex2Oat more control."
am: d1744d449c

* commit 'd1744d449cf2b56af7e0896b3729fac2a414e3af':
  Refactor oat file writing to give Dex2Oat more control.

8 years agoMerge "Refactor oat file writing to give Dex2Oat more control."
Vladimir Marko [Tue, 1 Dec 2015 10:16:19 +0000 (10:16 +0000)]
Merge "Refactor oat file writing to give Dex2Oat more control."

8 years agoMerge "Revert "Change LoadNativeLibrary to use GetOrCreateAllocator""
Mathieu Chartier [Tue, 1 Dec 2015 01:26:23 +0000 (01:26 +0000)]
Merge "Revert "Change LoadNativeLibrary to use GetOrCreateAllocator""
am: e51e3f988b

* commit 'e51e3f988ba91f0469757738fa55f835e16e37d9':
  Revert "Change LoadNativeLibrary to use GetOrCreateAllocator"

8 years agoMerge "Revert "Change LoadNativeLibrary to use GetOrCreateAllocator""
Mathieu Chartier [Tue, 1 Dec 2015 01:20:12 +0000 (01:20 +0000)]
Merge "Revert "Change LoadNativeLibrary to use GetOrCreateAllocator""

8 years agoRevert "Change LoadNativeLibrary to use GetOrCreateAllocator"
Mathieu Chartier [Tue, 1 Dec 2015 01:20:00 +0000 (01:20 +0000)]
Revert "Change LoadNativeLibrary to use GetOrCreateAllocator"

This reverts commit 2d902b99bba7ae1ad77ebeb038a4ef63c3ed6399.

Change-Id: I4a674844f2f6d76d1c33741b46f12417ec7eab35

8 years agoMerge "Make debugger support default methods."
Alex Light [Mon, 30 Nov 2015 23:41:23 +0000 (23:41 +0000)]
Merge "Make debugger support default methods."
am: 996935e961

* commit '996935e96137546cb3df5a63bc5aca477d58111f':
  Make debugger support default methods.

8 years agoMerge "Make debugger support default methods."
Alex Light [Mon, 30 Nov 2015 23:37:10 +0000 (23:37 +0000)]
Merge "Make debugger support default methods."

8 years agoMerge "Change LoadNativeLibrary to use GetOrCreateAllocator"
Mathieu Chartier [Mon, 30 Nov 2015 23:04:01 +0000 (23:04 +0000)]
Merge "Change LoadNativeLibrary to use GetOrCreateAllocator"
am: 2e57aca33b

* commit '2e57aca33bd22cac7c0e66bdc11a90163b1718e9':
  Change LoadNativeLibrary to use GetOrCreateAllocator

8 years agoMerge "Change LoadNativeLibrary to use GetOrCreateAllocator"
Mathieu Chartier [Mon, 30 Nov 2015 23:00:33 +0000 (23:00 +0000)]
Merge "Change LoadNativeLibrary to use GetOrCreateAllocator"

8 years agoSupport null error_msg for select MemMap functions
Mathieu Chartier [Tue, 24 Nov 2015 21:47:52 +0000 (13:47 -0800)]
Support null error_msg for select MemMap functions

In the failure case, reading proc maps takes 30ms. This is too slow
for app images.

Bug: 22858531
Change-Id: Ib6998cf82116720b23faec89d011fb7197c3d1cb

8 years agoMake debugger support default methods.
Alex Light [Fri, 20 Nov 2015 23:03:26 +0000 (15:03 -0800)]
Make debugger support default methods.

Supports breaking on, stepping into and through default methods.

Bug: 25549445
Bug: 24618811

Change-Id: I1a47e3263a0624adbd9e83b99d0acd7bef7757a4

8 years agoChange LoadNativeLibrary to use GetOrCreateAllocator
Mathieu Chartier [Wed, 25 Nov 2015 00:22:54 +0000 (16:22 -0800)]
Change LoadNativeLibrary to use GetOrCreateAllocator

Previously we used GetAllocatorForClassLoader. This did not
handle the case where someone called LoadLibrary without having
already loaded a class.

Added regression test.

Bug: 25866849

Change-Id: Id720505eaded3b0f9c2eab59a40611b328837c4a

8 years agoMerge "Do not build art with clang for mips64"
Chih-hung Hsieh [Mon, 30 Nov 2015 19:50:45 +0000 (19:50 +0000)]
Merge "Do not build art with clang for mips64"
am: 1850cb43db

* commit '1850cb43dbddbc655a6f990a7d475587fa9d6659':
  Do not build art with clang for mips64

8 years agoMerge "Do not build art with clang for mips64"
Chih-hung Hsieh [Mon, 30 Nov 2015 19:46:10 +0000 (19:46 +0000)]
Merge "Do not build art with clang for mips64"

8 years agoDo not build art with clang for mips64
Lazar Trsic [Fri, 27 Nov 2015 13:33:06 +0000 (14:33 +0100)]
Do not build art with clang for mips64

Clang generates illegal instruction on mips64r6 with -O0.
https://dmz-portal.mips.com/bugz/show_bug.cgi?id=2218

BUG: 25928358

Change-Id: I8ccd644f1509b4b341384fa67facc07cb966dfa8

8 years agoMerge "Test case for getting annotations of renamed enums."
Jeff Hao [Mon, 30 Nov 2015 18:51:43 +0000 (18:51 +0000)]
Merge "Test case for getting annotations of renamed enums."
am: be950a36bf

* commit 'be950a36bf23e61a71a09d71c1274dabcdbd9db6':
  Test case for getting annotations of renamed enums.

8 years agoMerge "Test case for getting annotations of renamed enums."
Jeff Hao [Mon, 30 Nov 2015 18:48:59 +0000 (18:48 +0000)]
Merge "Test case for getting annotations of renamed enums."

8 years agoTest case for getting annotations of renamed enums.
Jeff Hao [Wed, 25 Nov 2015 03:12:57 +0000 (19:12 -0800)]
Test case for getting annotations of renamed enums.

The crashing app was trying to get enums explicitly by name, but could
not find them since they had been renamed by Proguard.

Regression test for bug 25802263.

Change-Id: Iff78a82d81ca108f1289051916f4272cd0f1e6fe

8 years agoRefactor oat file writing to give Dex2Oat more control.
Vladimir Marko [Wed, 25 Nov 2015 14:33:36 +0000 (14:33 +0000)]
Refactor oat file writing to give Dex2Oat more control.

This is the first step towards writing dex files to oat file
and mapping them from there for the actual AOT compilation.

Change-Id: Icb0d27487eaf6ba3a66c157e695f9bdc5bb9cf9a

8 years agoMerge "Accept synthetic phi nodes and general names for blocks."
Aart Bik [Mon, 30 Nov 2015 17:31:29 +0000 (17:31 +0000)]
Merge "Accept synthetic phi nodes and general names for blocks."
am: 584bc17049

* commit '584bc170492216c6e3117eb895a6a12bcc9dcf42':
  Accept synthetic phi nodes and general names for blocks.

8 years agoMerge "Accept synthetic phi nodes and general names for blocks."
Aart Bik [Mon, 30 Nov 2015 17:28:16 +0000 (17:28 +0000)]
Merge "Accept synthetic phi nodes and general names for blocks."

8 years agoMerge "Temporarily omit MIPS floating point registers in DWARF."
David Srbecky [Fri, 27 Nov 2015 14:10:00 +0000 (14:10 +0000)]
Merge "Temporarily omit MIPS floating point registers in DWARF."
am: d42dd1abbe

* commit 'd42dd1abbeba1bc93499026484f5f44f9dde1858':
  Temporarily omit MIPS floating point registers in DWARF.

8 years agoMerge "Temporarily omit MIPS floating point registers in DWARF."
David Srbecky [Fri, 27 Nov 2015 14:08:26 +0000 (14:08 +0000)]
Merge "Temporarily omit MIPS floating point registers in DWARF."

8 years agoTemporarily omit MIPS floating point registers in DWARF.
David Srbecky [Fri, 27 Nov 2015 13:31:16 +0000 (13:31 +0000)]
Temporarily omit MIPS floating point registers in DWARF.

I am struggling to find authoritative source for the mapping,
so disable them in the meantime so they do not break tests.

Change-Id: I37340179f5d2fe91f318b64ddf64a725ce96ab76

8 years agoMerge "MIPS64: Fix stub_test implementation"
Vladimir Marko [Fri, 27 Nov 2015 11:25:11 +0000 (11:25 +0000)]
Merge "MIPS64: Fix stub_test implementation"
am: e928dc5877

* commit 'e928dc587718d00d234768f76d1efb2ffe74e885':
  MIPS64: Fix stub_test implementation

8 years agoMerge "MIPS64: Fix stub_test implementation"
Vladimir Marko [Fri, 27 Nov 2015 11:23:00 +0000 (11:23 +0000)]
Merge "MIPS64: Fix stub_test implementation"

8 years agoMIPS64: Fix stub_test implementation
Goran Jakovljevic [Fri, 27 Nov 2015 10:20:20 +0000 (11:20 +0100)]
MIPS64: Fix stub_test implementation

Clang doesn't recognize f0-f31 registers without '$' symbol in
inline assembly. So now they are $f0-$f31.

This change allows building ART tests.

Change-Id: Ie08e1a5aceee266f7b674c9883bed53473696178

8 years agoMerge "Add stack locations to DWARF parameters."
David Srbecky [Fri, 27 Nov 2015 02:01:40 +0000 (02:01 +0000)]
Merge "Add stack locations to DWARF parameters."
am: 23e8733fc5

* commit '23e8733fc5ec7280a05ec5261cae9fd984dc25c6':
  Add stack locations to DWARF parameters.

8 years agoMerge "Add stack locations to DWARF parameters."
David Srbecky [Fri, 27 Nov 2015 01:59:40 +0000 (01:59 +0000)]
Merge "Add stack locations to DWARF parameters."

8 years agoMerge "ARM64: Use the shifter operands."
Vladimir Marko [Thu, 26 Nov 2015 09:57:26 +0000 (09:57 +0000)]
Merge "ARM64: Use the shifter operands."
am: 3a581b4560

* commit '3a581b45605b77fb40654d5d331d54df429cd2bd':
  ARM64: Use the shifter operands.

8 years agoMerge "ARM64: Use the shifter operands."
Vladimir Marko [Thu, 26 Nov 2015 09:55:07 +0000 (09:55 +0000)]
Merge "ARM64: Use the shifter operands."

8 years agoMerge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass"
Mathieu Chartier [Wed, 25 Nov 2015 20:16:58 +0000 (20:16 +0000)]
Merge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass"
am: 319362870b

* commit '319362870b67f1bf19c432ff24d5bcc328e65994':
  Fix circular dependencies for ContainsBootClassLoaderNonImageClass

8 years agoMerge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass"
Mathieu Chartier [Wed, 25 Nov 2015 20:14:18 +0000 (20:14 +0000)]
Merge "Fix circular dependencies for ContainsBootClassLoaderNonImageClass"

8 years agoFix circular dependencies for ContainsBootClassLoaderNonImageClass
Mathieu Chartier [Tue, 24 Nov 2015 23:37:12 +0000 (15:37 -0800)]
Fix circular dependencies for ContainsBootClassLoaderNonImageClass

Old behavior incorrectly updated the memoization array when there was
a circular dependency. The new behavior is to not update the array
in this case.

Bug: 25839261
Change-Id: I081c97c4f7a62a783fdaf2afbe23ea380ef6946d

8 years agoMerge "Fix jit profile saving flags."
Calin Juravle [Wed, 25 Nov 2015 19:20:39 +0000 (19:20 +0000)]
Merge "Fix jit profile saving flags."
am: 790d7eb698

* commit '790d7eb698c42fdd882768ae333a59c01af61d51':
  Fix jit profile saving flags.

8 years agoMerge "Fix jit profile saving flags."
Calin Juravle [Wed, 25 Nov 2015 19:15:23 +0000 (19:15 +0000)]
Merge "Fix jit profile saving flags."

8 years agoFix jit profile saving flags.
Calin Juravle [Wed, 25 Nov 2015 19:05:42 +0000 (19:05 +0000)]
Fix jit profile saving flags.

Bug: 25886401

Change-Id: Ie7b9ead708736298f1d4a53b640434c988a5a0a8

8 years agoMerge "ART: Clean up ordering of dex cache arrays in image files."
Vladimir Marko [Wed, 25 Nov 2015 18:33:10 +0000 (18:33 +0000)]
Merge "ART: Clean up ordering of dex cache arrays in image files."
am: 685af12dab

* commit '685af12dab9c6927d94310376ebac79f1afa2095':
  ART: Clean up ordering of dex cache arrays in image files.

8 years agoMerge "ART: Clean up ordering of dex cache arrays in image files."
Vladimir Marko [Wed, 25 Nov 2015 18:27:37 +0000 (18:27 +0000)]
Merge "ART: Clean up ordering of dex cache arrays in image files."

8 years agoMerge "ARM64 read barrier support for concurrent GC in Optimizing."
Roland Levillain [Wed, 25 Nov 2015 17:22:42 +0000 (17:22 +0000)]
Merge "ARM64 read barrier support for concurrent GC in Optimizing."
am: 92e997d1e6

* commit '92e997d1e6fc0774c177b490619f9acdf97a5bb7':
  ARM64 read barrier support for concurrent GC in Optimizing.

8 years agoMerge "ARM64 read barrier support for concurrent GC in Optimizing."
Roland Levillain [Wed, 25 Nov 2015 17:05:40 +0000 (17:05 +0000)]
Merge "ARM64 read barrier support for concurrent GC in Optimizing."

8 years agoART: Clean up ordering of dex cache arrays in image files.
Vladimir Marko [Mon, 23 Nov 2015 18:05:08 +0000 (18:05 +0000)]
ART: Clean up ordering of dex cache arrays in image files.

Use the CompilerDriver::GetDexFilesForOatFile() ordering
and do not rely on the ordering of dex caches in the class
linker, even though the ordering is currently the same,
so we don't need to bump the image version.

Change-Id: Ie1807e42909058ab9983f5d0107a2a0a2641d9b7

8 years agoARM64: Use the shifter operands.
Alexandre Rames [Wed, 25 Nov 2015 16:28:08 +0000 (16:28 +0000)]
ARM64: Use the shifter operands.

This introduces architecture-specific instruction simplification.
On ARM64 we try to merge shifts and sign-extension operations into
arithmetic and logical instructions.

For example for the Java code

    int res = a + (b << 5);

we would generate

    lsl w3, w2, #5
    add w0, w1, w3

and we now generate

    add w0, w1, w2, lsl #5

Change-Id: Ic03bdff44a1c12e21ddff1b0513bd32a730742b7

8 years agoMerge "Save jit profiling info to file."
Calin Juravle [Wed, 25 Nov 2015 16:18:40 +0000 (16:18 +0000)]
Merge "Save jit profiling info to file."
am: e8bc4ec44a

* commit 'e8bc4ec44a855b2e4174ba3e0efd9b59c52064e4':
  Save jit profiling info to file.

8 years agoMerge "ART: Improve utf_test for unpaired surrogates."
Vladimir Marko [Wed, 25 Nov 2015 16:18:33 +0000 (16:18 +0000)]
Merge "ART: Improve utf_test for unpaired surrogates."
am: 19b10b1f27

* commit '19b10b1f27959f393403703f9c3259cb916fcf42':
  ART: Improve utf_test for unpaired surrogates.

8 years agoMerge "Optimize some commonly used utf8 functions by:"
Vladimir Marko [Wed, 25 Nov 2015 16:18:19 +0000 (16:18 +0000)]
Merge "Optimize some commonly used utf8 functions by:"
am: 3b9957bfdb

* commit '3b9957bfdb38c1048809f000afc7e771fd1a24db':
  Optimize some commonly used utf8 functions by:

8 years agoMerge "Save jit profiling info to file."
Calin Juravle [Wed, 25 Nov 2015 12:51:40 +0000 (12:51 +0000)]
Merge "Save jit profiling info to file."

8 years agoMerge "ART: Improve utf_test for unpaired surrogates."
Vladimir Marko [Wed, 25 Nov 2015 12:10:44 +0000 (12:10 +0000)]
Merge "ART: Improve utf_test for unpaired surrogates."

8 years agoART: Improve utf_test for unpaired surrogates.
Vladimir Marko [Wed, 25 Nov 2015 11:10:20 +0000 (11:10 +0000)]
ART: Improve utf_test for unpaired surrogates.

This is a follow-up to
    https://android-review.googlesource.com/180986

Change-Id: I8982a63c0ec48bf3b3198c278a96be7b5dfc2152

8 years agoAdd stack locations to DWARF parameters.
David Srbecky [Mon, 16 Nov 2015 16:39:10 +0000 (16:39 +0000)]
Add stack locations to DWARF parameters.

Translate StackMap to DWARF location attributes so that the
debugger knows where to read the run-time value from.

Change-Id: I8b2baf23f37e6e7ff6f76e18077d880f0c1cf57d

8 years agoMerge "Optimize some commonly used utf8 functions by:"
Vladimir Marko [Wed, 25 Nov 2015 11:14:08 +0000 (11:14 +0000)]
Merge "Optimize some commonly used utf8 functions by:"

8 years agoSave jit profiling info to file.
Calin Juravle [Fri, 23 Oct 2015 16:56:15 +0000 (17:56 +0100)]
Save jit profiling info to file.

Currently saves only the hot method references and omits the inline
cache.

Change-Id: I79e91f855f6b52dc19a9a86662604f2eee16613c

8 years agoMerge "Optimize HLoadClass when we know the class is in the cache."
Nicolas Geoffray [Tue, 24 Nov 2015 18:58:46 +0000 (18:58 +0000)]
Merge "Optimize HLoadClass when we know the class is in the cache."
am: 883ef45b5d

* commit '883ef45b5d5a2e4005914c7b339881900976b6e7':
  Optimize HLoadClass when we know the class is in the cache.

8 years agoMerge "Optimize HLoadClass when we know the class is in the cache."
Nicolas Geoffray [Tue, 24 Nov 2015 18:53:37 +0000 (18:53 +0000)]
Merge "Optimize HLoadClass when we know the class is in the cache."

8 years agoOptimize HLoadClass when we know the class is in the cache.
Nicolas Geoffray [Tue, 24 Nov 2015 15:48:56 +0000 (15:48 +0000)]
Optimize HLoadClass when we know the class is in the cache.

Change-Id: Iaa74591eed0f2eabc9ba9f9988681d9582faa320

8 years agoMerge "Add backward branch instumentation to the switch interpreter."
Nicolas Geoffray [Tue, 24 Nov 2015 17:54:30 +0000 (17:54 +0000)]
Merge "Add backward branch instumentation to the switch interpreter."
am: fca8008f54

* commit 'fca8008f54faefbbfdf8508bcef3a1bc107741bd':
  Add backward branch instumentation to the switch interpreter.

8 years agoMerge "Add backward branch instumentation to the switch interpreter."
Nicolas Geoffray [Tue, 24 Nov 2015 17:50:24 +0000 (17:50 +0000)]
Merge "Add backward branch instumentation to the switch interpreter."

8 years agoMerge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads."
Vladimir Marko [Tue, 24 Nov 2015 17:23:00 +0000 (17:23 +0000)]
Merge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads."
am: dcb07112d1

* commit 'dcb07112d1f8fcd3a8707689cd9708c2ad8b47a4':
  ART: Fix SafeMap::Put()/PutBefore() rvalue overloads.

8 years agoMerge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads."
Vladimir Marko [Tue, 24 Nov 2015 17:20:34 +0000 (17:20 +0000)]
Merge "ART: Fix SafeMap::Put()/PutBefore() rvalue overloads."

8 years agoART: Fix SafeMap::Put()/PutBefore() rvalue overloads.
Vladimir Marko [Tue, 24 Nov 2015 17:06:32 +0000 (17:06 +0000)]
ART: Fix SafeMap::Put()/PutBefore() rvalue overloads.

Remove the mistaken "const" qualifier which pretty much
defeats the intended optimizations and prevents using
the SafeMap with non-copyable values.

Change-Id: I07d3e083c0b9b8895cbd181cb1bb4ca2293c7c5d

8 years agoAdd backward branch instumentation to the switch interpreter.
Nicolas Geoffray [Tue, 24 Nov 2015 16:32:33 +0000 (16:32 +0000)]
Add backward branch instumentation to the switch interpreter.

Change-Id: I0328daa86d5f19311ab3bd6246a1c3e4b40b0ba9

8 years agoMerge "A few more optimizations on avoiding HClinit."
Nicolas Geoffray [Tue, 24 Nov 2015 15:44:41 +0000 (15:44 +0000)]
Merge "A few more optimizations on avoiding HClinit."
am: 95f7bbcd99

* commit '95f7bbcd991fbfaead438a2866354714eb32af38':
  A few more optimizations on avoiding HClinit.

8 years agoMerge "MIPS32: Record missing implicit null checks"
Nicolas Geoffray [Tue, 24 Nov 2015 15:44:33 +0000 (15:44 +0000)]
Merge "MIPS32: Record missing implicit null checks"
am: b110fd6f23

* commit 'b110fd6f23ea16de5d0e891a345780df03dae260':
  MIPS32: Record missing implicit null checks

8 years agoMerge "Revamp art::CheckEntrypointTypes uses."
Roland Levillain [Tue, 24 Nov 2015 15:44:20 +0000 (15:44 +0000)]
Merge "Revamp art::CheckEntrypointTypes uses."
am: 22c20ef131

* commit '22c20ef131812a6e7ff01f8c57ffe1eb0942fc39':
  Revamp art::CheckEntrypointTypes uses.

8 years agoMerge "MIPS64: Support short and long branches"
Roland Levillain [Tue, 24 Nov 2015 15:42:20 +0000 (15:42 +0000)]
Merge "MIPS64: Support short and long branches"
am: 51a354c747

* commit '51a354c747c8a76a4716a49a1f70bfd975d63787':
  MIPS64: Support short and long branches

8 years agoMerge "Add another test for wide stores fix in optimizing."
Nicolas Geoffray [Tue, 24 Nov 2015 15:42:13 +0000 (15:42 +0000)]
Merge "Add another test for wide stores fix in optimizing."
am: 7f8275549f

* commit '7f8275549fd503f82ac63d65800afacab85af09d':
  Add another test for wide stores fix in optimizing.