OSDN Git Service

android-x86/art.git
8 years agoMerge "Limit summary string lengths to 200 characters."
Richard Uhler [Tue, 3 Nov 2015 19:39:36 +0000 (19:39 +0000)]
Merge "Limit summary string lengths to 200 characters."
am: 7727ea62d0

* commit '7727ea62d0f10ded6225abca2dfa2c421051d341':
  Limit summary string lengths to 200 characters.

8 years agoMerge "Limit summary string lengths to 200 characters."
Richard Uhler [Tue, 3 Nov 2015 17:00:33 +0000 (17:00 +0000)]
Merge "Limit summary string lengths to 200 characters."

8 years agoMerge "Use --oat-fd instead of --oat-file when calling dex2oat."
Richard Uhler [Tue, 3 Nov 2015 16:04:47 +0000 (16:04 +0000)]
Merge "Use --oat-fd instead of --oat-file when calling dex2oat."
am: ea834bbed4

* commit 'ea834bbed4f39d23cb2aafb1aa5cf73f71bcf21a':
  Use --oat-fd instead of --oat-file when calling dex2oat.

8 years agoMerge "Use --oat-fd instead of --oat-file when calling dex2oat."
Richard Uhler [Tue, 3 Nov 2015 16:01:56 +0000 (16:01 +0000)]
Merge "Use --oat-fd instead of --oat-file when calling dex2oat."

8 years agoMerge "Fix deadlock with the JIT code cache."
Nicolas Geoffray [Tue, 3 Nov 2015 10:30:10 +0000 (10:30 +0000)]
Merge "Fix deadlock with the JIT code cache."
am: df6dc42ba2

* commit 'df6dc42ba2ca0fa43ba970ba2e60977422105f7e':
  Fix deadlock with the JIT code cache.

8 years agoMerge "Fix deadlock with the JIT code cache."
Nicolas Geoffray [Tue, 3 Nov 2015 10:28:03 +0000 (10:28 +0000)]
Merge "Fix deadlock with the JIT code cache."

8 years agoFix deadlock with the JIT code cache.
Nicolas Geoffray [Wed, 28 Oct 2015 19:15:05 +0000 (19:15 +0000)]
Fix deadlock with the JIT code cache.

Also remove hack done for ThreadStress.

Change-Id: Ie25c3bca08d9f2b8919706fa3fc26c5ab213f4a3

8 years agoMerge "Minor improvements for the CC collector."
Hiroshi Yamauchi [Mon, 2 Nov 2015 23:34:06 +0000 (23:34 +0000)]
Merge "Minor improvements for the CC collector."
am: 4bbe7807f3

* commit '4bbe7807f313bb8e59131812c31bf31513094f8f':
  Minor improvements for the CC collector.

8 years agoMerge "Minor improvements for the CC collector."
Hiroshi Yamauchi [Mon, 2 Nov 2015 23:30:47 +0000 (23:30 +0000)]
Merge "Minor improvements for the CC collector."

8 years agoMerge "Fix minor problems with interface verification and default methods."
Alex Light [Mon, 2 Nov 2015 20:52:21 +0000 (20:52 +0000)]
Merge "Fix minor problems with interface verification and default methods."
am: 3482c27127

* commit '3482c271278b30ca7a5c6206b7f80332616f6a84':
  Fix minor problems with interface verification and default methods.

8 years agoMerge "Fix minor problems with interface verification and default methods."
Alex Light [Mon, 2 Nov 2015 20:48:52 +0000 (20:48 +0000)]
Merge "Fix minor problems with interface verification and default methods."

8 years agoMerge "Revert "ART: Update DCE to work with try/catch""
David Brazdil [Mon, 2 Nov 2015 20:30:58 +0000 (20:30 +0000)]
Merge "Revert "ART: Update DCE to work with try/catch""
am: 86a8e247e3

* commit '86a8e247e3cd873c03bb79f79bf88a1b4c4e0597':
  Revert "ART: Update DCE to work with try/catch"

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

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

This reverts commit ce52901e2c8377fc1c331ae0faf7fbcb46b9da97.

Change-Id: I6b3a1f2a3dc036030b089b0df2005ecefa66b949

8 years agoMinor improvements for the CC collector.
Hiroshi Yamauchi [Thu, 29 Oct 2015 03:59:47 +0000 (20:59 -0700)]
Minor improvements for the CC collector.

- Split Mark() and inline its first part.
- Make sure some other routines are inlined.
- Add some UNLIKELY's.
- Use VisitConcurrentRoots().

Ritz EAAC GC time decreased from 28.9 -> 27.6s (-4.5%) on N5.

Bug: 12687968

Change-Id: I7bd13f162e7daa2a5853000fb22c5fefc318994f

8 years agoMerge "ART: Update DCE to work with try/catch"
David Brazdil [Mon, 2 Nov 2015 19:30:51 +0000 (19:30 +0000)]
Merge "ART: Update DCE to work with try/catch"
am: 808e752491

* commit '808e7524918da5f7f41d2ceaa58dbb381e5708ff':
  ART: Update DCE to work with try/catch

8 years agoMerge "ART: Update DCE to work with try/catch"
David Brazdil [Mon, 2 Nov 2015 19:26:14 +0000 (19:26 +0000)]
Merge "ART: Update DCE to work with try/catch"

8 years agoART: Update DCE to work with try/catch
David Brazdil [Thu, 29 Oct 2015 00:25:55 +0000 (19:25 -0500)]
ART: Update DCE to work with try/catch

Dead block elimination was previously disabled because it needed
to be updated. With this patch, try/catch blocks can be removed
as a result of a dead if/switch branch.

Change-Id: I3261060bf24fd5fe7bb0f989247f0ef62ec5fd7b

8 years agoMerge "Add application image dex2oat options"
Mathieu Chartier [Mon, 2 Nov 2015 16:53:15 +0000 (16:53 +0000)]
Merge "Add application image dex2oat options"
am: 49560fcce5

* commit '49560fcce5b9a07108f7cc75a3fb0fa265e5fa0e':
  Add application image dex2oat options

8 years agoMerge "Add application image dex2oat options"
Mathieu Chartier [Mon, 2 Nov 2015 16:49:09 +0000 (16:49 +0000)]
Merge "Add application image dex2oat options"

8 years agoAdd application image dex2oat options
Mathieu Chartier [Thu, 29 Oct 2015 22:41:36 +0000 (15:41 -0700)]
Add application image dex2oat options

Bug: 22858531
Change-Id: Ia6a2a832b20b5bb70672521cd06f679335efbd92

8 years agoMerge "Fix tests flakiness with jit when using Proxy classes."
Nicolas Geoffray [Mon, 2 Nov 2015 15:50:41 +0000 (15:50 +0000)]
Merge "Fix tests flakiness with jit when using Proxy classes."
am: e00197d605

* commit 'e00197d60579838974c02853fd3371ac761922ae':
  Fix tests flakiness with jit when using Proxy classes.

8 years agoMerge "Fix tests flakiness with jit when using Proxy classes."
Nicolas Geoffray [Mon, 2 Nov 2015 15:48:07 +0000 (15:48 +0000)]
Merge "Fix tests flakiness with jit when using Proxy classes."

8 years agoFix tests flakiness with jit when using Proxy classes.
Nicolas Geoffray [Mon, 2 Nov 2015 11:57:11 +0000 (11:57 +0000)]
Fix tests flakiness with jit when using Proxy classes.

We cannot copy the entry point between ArtMethod when
the entry point has been JITted. We put the interpreter
bridge instead.

bug:25334878

Change-Id: I65a50cc1f10a5a152733807f8c85fb3ed81c5829

8 years agoMerge "Fix stalled comment from last commit."
Nicolas Geoffray [Mon, 2 Nov 2015 14:34:16 +0000 (14:34 +0000)]
Merge "Fix stalled comment from last commit."
am: 78ef3fee3f

* commit '78ef3fee3fcf0b2cfb68b3e943cd144d389313fd':
  Fix stalled comment from last commit.

8 years agoMerge "Fix stalled comment from last commit."
Nicolas Geoffray [Mon, 2 Nov 2015 14:30:30 +0000 (14:30 +0000)]
Merge "Fix stalled comment from last commit."

8 years agoFix stalled comment from last commit.
Nicolas Geoffray [Mon, 2 Nov 2015 14:27:16 +0000 (14:27 +0000)]
Fix stalled comment from last commit.

Change-Id: Ic54821c80a8c6ab76d44e2a81a6f821b5741dc53

8 years agoMerge "Fix inlining and lse bugs with unresolved access."
Nicolas Geoffray [Mon, 2 Nov 2015 13:58:07 +0000 (13:58 +0000)]
Merge "Fix inlining and lse bugs with unresolved access."
am: 816b2b3f70

* commit '816b2b3f704d61ba608ad2c3513d4697e7fb5dfe':
  Fix inlining and lse bugs with unresolved access.

8 years agoMerge "Fix inlining and lse bugs with unresolved access."
Nicolas Geoffray [Mon, 2 Nov 2015 13:52:48 +0000 (13:52 +0000)]
Merge "Fix inlining and lse bugs with unresolved access."

8 years agoFix inlining and lse bugs with unresolved access.
Nicolas Geoffray [Sat, 31 Oct 2015 22:21:31 +0000 (22:21 +0000)]
Fix inlining and lse bugs with unresolved access.

bug:25414532

Change-Id: I48b6660754774ea3e8a62a74175b1aa3728e0151

8 years agoMerge "Remove extra space at end of line in output."
Christopher Ferris [Sat, 31 Oct 2015 16:15:10 +0000 (16:15 +0000)]
Merge "Remove extra space at end of line in output."
am: 43c6d31c43

* commit '43c6d31c43c05d97511bb9658964fd3d2f32b915':
  Remove extra space at end of line in output.

8 years agoMerge "Remove extra space at end of line in output."
Christopher Ferris [Sat, 31 Oct 2015 16:11:30 +0000 (16:11 +0000)]
Merge "Remove extra space at end of line in output."

8 years agoMerge "Remove package on which we cannot revert."
Nicolas Geoffray [Sat, 31 Oct 2015 15:06:51 +0000 (15:06 +0000)]
Merge "Remove package on which we cannot revert."
am: f0b308bdba

* commit 'f0b308bdba546081d64d1e593395f8957b3a2e89':
  Remove package on which we cannot revert.

8 years agoMerge "Remove package on which we cannot revert."
Nicolas Geoffray [Sat, 31 Oct 2015 14:49:14 +0000 (14:49 +0000)]
Merge "Remove package on which we cannot revert."

8 years agoRemove package on which we cannot revert.
Nicolas Geoffray [Sat, 31 Oct 2015 14:47:36 +0000 (14:47 +0000)]
Remove package on which we cannot revert.

Change-Id: I863176f91747e418bc3365b724970d3354a75971

8 years agoRemove extra space at end of line in output.
Christopher Ferris [Fri, 30 Oct 2015 21:21:16 +0000 (14:21 -0700)]
Remove extra space at end of line in output.

The done dumping histograms message in DumpHistogram had an extra
space before the \n, which this CL removes.

Change-Id: I9db3c185cb39fec6cbe78a60699357448bc6e3b0

8 years agoMerge "ART: Enable inlining under try/catch"
David Brazdil [Fri, 30 Oct 2015 20:11:12 +0000 (20:11 +0000)]
Merge "ART: Enable inlining under try/catch"
am: 3e0597facd

* commit '3e0597facd506073fcf91db2d81ae2ffdce6b701':
  ART: Enable inlining under try/catch

8 years agoMerge "ART: Enable inlining under try/catch"
David Brazdil [Fri, 30 Oct 2015 20:05:29 +0000 (20:05 +0000)]
Merge "ART: Enable inlining under try/catch"

8 years agoART: Enable inlining under try/catch
David Brazdil [Fri, 30 Oct 2015 17:56:58 +0000 (12:56 -0500)]
ART: Enable inlining under try/catch

This patch updates the inliner to set try/catch information
when inlining into a method with try/catch. It does not yet
allow inlining of methods with try/catch because that will
require generating catch stack maps with inline info.

Change-Id: I7d57e1454e7da537d75c5c7eda60b22f3a30fa60

8 years agoMerge "ART: Arm32 packed-switch jump tables"
Andreas Gampe [Fri, 30 Oct 2015 18:19:41 +0000 (18:19 +0000)]
Merge "ART: Arm32 packed-switch jump tables"
am: c74e69f831

* commit 'c74e69f831608964f89ac7a641fbcc09156eefaa':
  ART: Arm32 packed-switch jump tables

8 years agoMerge "ART: Arm32 packed-switch jump tables"
Andreas Gampe [Fri, 30 Oct 2015 18:17:00 +0000 (18:17 +0000)]
Merge "ART: Arm32 packed-switch jump tables"

8 years agoART: Arm32 packed-switch jump tables
Andreas Gampe [Tue, 20 Oct 2015 04:31:53 +0000 (21:31 -0700)]
ART: Arm32 packed-switch jump tables

Add jump table support to the thumb2 assembler. Jump tables are
a collection of labels for the case targets, and an anchor label
denoting the position of the jump.

Use the jump table support to implement packed-switch support for
arm32.

Add tests for BindTrackedLabel and JumpTable to the thumb2 assembler
test.

Bug: 24092914
Change-Id: I5c84f193dfebf9e07f48678efc8bd151bb1410dd

8 years agoMerge "Merge test 539 into test 538-checker-embed-constants."
Vladimir Marko [Fri, 30 Oct 2015 18:06:29 +0000 (18:06 +0000)]
Merge "Merge test 539 into test 538-checker-embed-constants."
am: 564420bc5b

* commit '564420bc5b37572d45067fd71ed64d818ef3030d':
  Merge test 539 into test 538-checker-embed-constants.

8 years agoMerge "Merge test 539 into test 538-checker-embed-constants."
Vladimir Marko [Fri, 30 Oct 2015 18:02:36 +0000 (18:02 +0000)]
Merge "Merge test 539 into test 538-checker-embed-constants."

8 years agoMerge "X86: Add support for ucomis[sd] reg/memory form"
Nicolas Geoffray [Fri, 30 Oct 2015 16:44:40 +0000 (16:44 +0000)]
Merge "X86: Add support for ucomis[sd] reg/memory form"
am: 34e38c43d4

* commit '34e38c43d4728fb1d3a011f8c142bff94927f6fb':
  X86: Add support for ucomis[sd] reg/memory form

8 years agoMerge "X86: Add support for ucomis[sd] reg/memory form"
Nicolas Geoffray [Fri, 30 Oct 2015 16:42:15 +0000 (16:42 +0000)]
Merge "X86: Add support for ucomis[sd] reg/memory form"

8 years agoMerge "Keep list of dex files for oat file in CompilerDriver."
Vladimir Marko [Fri, 30 Oct 2015 16:30:40 +0000 (16:30 +0000)]
Merge "Keep list of dex files for oat file in CompilerDriver."
am: 469e9c4515

* commit '469e9c4515cb68509f02def2fe6c0465ffb55628':
  Keep list of dex files for oat file in CompilerDriver.

8 years agoMerge "Keep list of dex files for oat file in CompilerDriver."
Vladimir Marko [Fri, 30 Oct 2015 16:26:49 +0000 (16:26 +0000)]
Merge "Keep list of dex files for oat file in CompilerDriver."

8 years agoKeep list of dex files for oat file in CompilerDriver.
Vladimir Marko [Thu, 29 Oct 2015 12:18:29 +0000 (12:18 +0000)]
Keep list of dex files for oat file in CompilerDriver.

Use this list to improve invoke-static/-direct dispatch for
intra-oat calls.

Also fix a latent ArmBaseRelativePatcher::ReserveSpaceEnd()
bug exposed by a buggy early version of this CL: when we
have unresolved patches at the end of all code, we need to
emit a final thunk. Though the OatWriter will try to patch
the unresolved call to a trampoline at the beginning of the
oat file, that trampoline may be too far and the relative
patcher doesn't know about it anyway, so it needs to assume
that a thunk is needed.

This reduces the overall size of oat files present in dalvik
cache on Nexus 9 after first boot by over 1MiB, AOSP ToT,
aosp_flounder-userdebug build.

Change-Id: I98604b70cb17377eed057c1c23971865cf344e43

8 years agoX86: Add support for ucomis[sd] reg/memory form
Mark Mendell [Fri, 30 Oct 2015 13:21:37 +0000 (09:21 -0400)]
X86: Add support for ucomis[sd] reg/memory form

Allow an Address as the second operand.

Change-Id: I4940829e2e4bfe0cddef3808265fdb638ac07b7e
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
8 years agoMerge "A generic jni method can be instrumented."
Nicolas Geoffray [Fri, 30 Oct 2015 12:59:00 +0000 (12:59 +0000)]
Merge "A generic jni method can be instrumented."
am: 289c4e3a10

* commit '289c4e3a10acb6d0250dc25dd42465ca4d08c762':
  A generic jni method can be instrumented.

8 years agoMerge "A generic jni method can be instrumented."
Nicolas Geoffray [Fri, 30 Oct 2015 12:45:42 +0000 (12:45 +0000)]
Merge "A generic jni method can be instrumented."

8 years agoMerge "Add a few instructions to setup-buildbot-devices.sh"
Nicolas Geoffray [Fri, 30 Oct 2015 12:25:54 +0000 (12:25 +0000)]
Merge "Add a few instructions to setup-buildbot-devices.sh"
am: 257df4e79a

* commit '257df4e79a7fc53406fd39f1417611d6e1cac316':
  Add a few instructions to setup-buildbot-devices.sh

8 years agoA generic jni method can be instrumented.
Nicolas Geoffray [Fri, 30 Oct 2015 12:23:16 +0000 (12:23 +0000)]
A generic jni method can be instrumented.

Fixes tracing 119-noimage-patchoat test.

Change-Id: Ifc9709b714dbad6e087d327fdde7a008e5e731d3

8 years agoMerge "Add a few instructions to setup-buildbot-devices.sh"
Nicolas Geoffray [Fri, 30 Oct 2015 12:22:04 +0000 (12:22 +0000)]
Merge "Add a few instructions to setup-buildbot-devices.sh"

8 years agoMerge "Fix compile-time error."
Nicolas Geoffray [Fri, 30 Oct 2015 12:11:48 +0000 (12:11 +0000)]
Merge "Fix compile-time error."
am: a5f295fcdb

* commit 'a5f295fcdb21c0a8e06382485250dcb4250ac442':
  Fix compile-time error.

8 years agoMerge "Fix compile-time error."
Nicolas Geoffray [Fri, 30 Oct 2015 12:08:30 +0000 (12:08 +0000)]
Merge "Fix compile-time error."

8 years agoFix compile-time error.
Nicolas Geoffray [Fri, 30 Oct 2015 12:05:41 +0000 (12:05 +0000)]
Fix compile-time error.

Change-Id: I457db9d43f1cc0f908542b0fe5f13cbc4beb1f1b

8 years agoMerge "Refactor code so that JIT can parse compiler options."
Nicolas Geoffray [Fri, 30 Oct 2015 11:50:26 +0000 (11:50 +0000)]
Merge "Refactor code so that JIT can parse compiler options."
am: f31f9739e6

* commit 'f31f9739e6cb06298604f5fb723db2ab9a8f2962':
  Refactor code so that JIT can parse compiler options.

8 years agoMerge "Refactor code so that JIT can parse compiler options."
Nicolas Geoffray [Fri, 30 Oct 2015 11:48:08 +0000 (11:48 +0000)]
Merge "Refactor code so that JIT can parse compiler options."

8 years agoAdd a few instructions to setup-buildbot-devices.sh
Nicolas Geoffray [Fri, 30 Oct 2015 11:18:52 +0000 (11:18 +0000)]
Add a few instructions to setup-buildbot-devices.sh

- Uptime to know if the device restarted
- Kill stalled test dalvikvm processes.

Change-Id: I22e01ccc2d2c75a252e9fcee577e05b203e976c0

8 years agoRefactor code so that JIT can parse compiler options.
Nicolas Geoffray [Thu, 29 Oct 2015 18:55:58 +0000 (18:55 +0000)]
Refactor code so that JIT can parse compiler options.

Currently only the CompilerOptions class. We should also
do it for the CompilerDriver options.

This will fix the flakiness seen on jdwp testing, as the
debuggable flag was not passed to the compiler.

Change-Id: I4218dd5928c9f4fe2d6191ab11e5598e7cf84bcf

8 years agoMerge "MIPS32: Create infrastructure to support intrinsics"
Andreas Gampe [Fri, 30 Oct 2015 03:14:58 +0000 (03:14 +0000)]
Merge "MIPS32: Create infrastructure to support intrinsics"
am: 70d95b4cab

* commit '70d95b4cabcabff7eda37e9e8348744891008e65':
  MIPS32: Create infrastructure to support intrinsics

8 years agoMerge "MIPS32: Create infrastructure to support intrinsics"
Andreas Gampe [Fri, 30 Oct 2015 03:12:15 +0000 (03:12 +0000)]
Merge "MIPS32: Create infrastructure to support intrinsics"

8 years agoMIPS32: Create infrastructure to support intrinsics
Chris Larsen [Tue, 27 Oct 2015 22:29:13 +0000 (15:29 -0700)]
MIPS32: Create infrastructure to support intrinsics

Add an empty intrinisics implementation for MIPS32.

Change-Id: I3f46ade1c548e6453f094ce200e66232348ef467

8 years agoMerge "Made run-test 960-964 support being run with jack compiler."
Alex Light [Fri, 30 Oct 2015 00:43:28 +0000 (00:43 +0000)]
Merge "Made run-test 960-964 support being run with jack compiler."
am: 56c8c9ec60

* commit '56c8c9ec60a1a887bd39302fa8e2a422cb86fc80':
  Made run-test 960-964 support being run with jack compiler.

8 years agoMerge "Made run-test 960-964 support being run with jack compiler."
Alex Light [Fri, 30 Oct 2015 00:38:44 +0000 (00:38 +0000)]
Merge "Made run-test 960-964 support being run with jack compiler."

8 years agoMade run-test 960-964 support being run with jack compiler.
Alex Light [Tue, 27 Oct 2015 00:52:36 +0000 (17:52 -0700)]
Made run-test 960-964 support being run with jack compiler.

They will explicitly check that the jack compiler being used is
capable of compiling them before they do however (just to make
test-art work better).

Change-Id: I6b30c50d4159c2924886886d161479cbe869f4b0

8 years agoMerge "Revert "ART: Enable more passes under try/catch""
David Brazdil [Thu, 29 Oct 2015 22:53:53 +0000 (22:53 +0000)]
Merge "Revert "ART: Enable more passes under try/catch""
am: d13f2b3554

* commit 'd13f2b35546d421f570c64654ad8479caf1165d6':
  Revert "ART: Enable more passes under try/catch"

8 years agoMerge "Revert "ART: Enable more passes under try/catch""
David Brazdil [Thu, 29 Oct 2015 22:47:59 +0000 (22:47 +0000)]
Merge "Revert "ART: Enable more passes under try/catch""

8 years agoRevert "ART: Enable more passes under try/catch"
David Brazdil [Thu, 29 Oct 2015 22:47:39 +0000 (22:47 +0000)]
Revert "ART: Enable more passes under try/catch"

BCE does not set TryCatchInformation when creating new blocks.
Will be fixed with DynamicBCE CL.

This reverts commit 39fabd6bb6fcf7a712b370d3b6fd0ada83e2e5d8.

Change-Id: I76ae707ac132bb1a4a9f64f4916ffcd786ef730c

8 years agoMerge "Change a few places to use string version of GetTypeId"
Mathieu Chartier [Thu, 29 Oct 2015 22:33:20 +0000 (22:33 +0000)]
Merge "Change a few places to use string version of GetTypeId"
am: 8cb0bc28b1

* commit '8cb0bc28b1161dad0d2c2c1e75318b7e504faa46':
  Change a few places to use string version of GetTypeId

8 years agoMerge "Change a few places to use string version of GetTypeId"
Mathieu Chartier [Thu, 29 Oct 2015 22:30:46 +0000 (22:30 +0000)]
Merge "Change a few places to use string version of GetTypeId"

8 years agoChange a few places to use string version of GetTypeId
Mathieu Chartier [Thu, 29 Oct 2015 22:08:57 +0000 (15:08 -0700)]
Change a few places to use string version of GetTypeId

GetTypeId is about 20% faster than GetStringId + integer GetTypeID
since it does less binary searches.

Change-Id: I876c4ac89ab206acca217b2287b0197ef2e408c2

8 years agoMerge "Move loop invariant utility to more general place."
Aart Bik [Thu, 29 Oct 2015 21:06:17 +0000 (21:06 +0000)]
Merge "Move loop invariant utility to more general place."
am: c65d1f3d26

* commit 'c65d1f3d26a47e2fce3c3f8872e7942fec23f9b9':
  Move loop invariant utility to more general place.

8 years agoMerge "Move loop invariant utility to more general place."
Aart Bik [Thu, 29 Oct 2015 21:00:17 +0000 (21:00 +0000)]
Merge "Move loop invariant utility to more general place."

8 years agoMerge "ART: Enable more passes under try/catch"
David Brazdil [Thu, 29 Oct 2015 20:33:53 +0000 (20:33 +0000)]
Merge "ART: Enable more passes under try/catch"
am: 5ad27592e2

* commit '5ad27592e2317b4c7932885eff702099f7cbe0f1':
  ART: Enable more passes under try/catch

8 years agoMerge "ART: Enable more passes under try/catch"
David Brazdil [Thu, 29 Oct 2015 20:30:29 +0000 (20:30 +0000)]
Merge "ART: Enable more passes under try/catch"

8 years agoMove loop invariant utility to more general place.
Aart Bik [Wed, 28 Oct 2015 22:28:08 +0000 (15:28 -0700)]
Move loop invariant utility to more general place.

Change-Id: I15ebfbf9684f0fcce9e63d078ff8dc1381fd1ca3

8 years agoMerge "Add comment for RunCheckpoint and clean up ThreadList a bit"
Mathieu Chartier [Thu, 29 Oct 2015 20:21:59 +0000 (20:21 +0000)]
Merge "Add comment for RunCheckpoint and clean up ThreadList a bit"
am: e22d85249e

* commit 'e22d85249e6e3985edf5e17a9c28ec26e0e6df3e':
  Add comment for RunCheckpoint and clean up ThreadList a bit

8 years agoMerge "Add comment for RunCheckpoint and clean up ThreadList a bit"
Mathieu Chartier [Thu, 29 Oct 2015 20:11:35 +0000 (20:11 +0000)]
Merge "Add comment for RunCheckpoint and clean up ThreadList a bit"

8 years agoAdd comment for RunCheckpoint and clean up ThreadList a bit
Mathieu Chartier [Thu, 29 Oct 2015 17:41:51 +0000 (10:41 -0700)]
Add comment for RunCheckpoint and clean up ThreadList a bit

Change-Id: Id512bfd15fee9a7359c77f094e16d64634943619

8 years agoMerge "Simplify unsigned comparisons against zero (with unit tests)."
Aart Bik [Thu, 29 Oct 2015 18:24:21 +0000 (18:24 +0000)]
Merge "Simplify unsigned comparisons against zero (with unit tests)."
am: 2118d3d673

* commit '2118d3d673f6874a593024308facde336b3302e7':
  Simplify unsigned comparisons against zero (with unit tests).

8 years agoMerge "Simplify unsigned comparisons against zero (with unit tests)."
Aart Bik [Thu, 29 Oct 2015 18:17:17 +0000 (18:17 +0000)]
Merge "Simplify unsigned comparisons against zero (with unit tests)."

8 years agoSimplify unsigned comparisons against zero (with unit tests).
Aart Bik [Thu, 29 Oct 2015 00:49:07 +0000 (17:49 -0700)]
Simplify unsigned comparisons against zero (with unit tests).

Rationale: Such cases occurs a lot after dynamic
           bound check optimization (where the lower bound
           is test against upper bound). Removing this
           unnecessary test improves quality of code.

Change-Id: I3e4dc9f9d799aad342e1c344013ac60fcc3073ac

8 years agoMerge "Relax some CASes for the CC collector."
Hiroshi Yamauchi [Thu, 29 Oct 2015 17:55:19 +0000 (17:55 +0000)]
Merge "Relax some CASes for the CC collector."
am: 0b654bce0f

* commit '0b654bce0f8d7c596d4115848b7e4c4dbeadafd5':
  Relax some CASes for the CC collector.

8 years agoMerge "Relax some CASes for the CC collector."
Hiroshi Yamauchi [Thu, 29 Oct 2015 17:46:20 +0000 (17:46 +0000)]
Merge "Relax some CASes for the CC collector."

8 years agoART: Enable more passes under try/catch
David Brazdil [Mon, 26 Oct 2015 19:34:30 +0000 (14:34 -0500)]
ART: Enable more passes under try/catch

LICM, BCE, LSE are all safe under try/catch. Inliner and DCE
need updating and will be enabled in follow-up CLs.

Change-Id: I86db5f811257d5e765fea91666a2a2af0fb24ec3

8 years agoMerge "Implementation of fast lookup table to search class_def by descriptor"
Mathieu Chartier [Thu, 29 Oct 2015 17:02:36 +0000 (17:02 +0000)]
Merge "Implementation of fast lookup table to search class_def by descriptor"
am: 59cc4e8306

* commit '59cc4e8306879ee7066d51dad4cba140e58c7292':
  Implementation of fast lookup table to search class_def by descriptor

8 years agoMerge "Implementation of fast lookup table to search class_def by descriptor"
Mathieu Chartier [Thu, 29 Oct 2015 16:56:53 +0000 (16:56 +0000)]
Merge "Implementation of fast lookup table to search class_def by descriptor"

8 years agoMerge "ART: Fix deopt from optimized code under inlining"
David Brazdil [Thu, 29 Oct 2015 16:45:37 +0000 (16:45 +0000)]
Merge "ART: Fix deopt from optimized code under inlining"
am: a9cf6eef38

* commit 'a9cf6eef38d3debadae0398b94b07bd3493635d7':
  ART: Fix deopt from optimized code under inlining

8 years agoMerge "Change Checkpoint API to return total number of checkpoints"
Mathieu Chartier [Thu, 29 Oct 2015 16:45:24 +0000 (16:45 +0000)]
Merge "Change Checkpoint API to return total number of checkpoints"
am: 57bee8dc22

* commit '57bee8dc2206404164606d4f5cabde272505f5fa':
  Change Checkpoint API to return total number of checkpoints

8 years agoImplementation of fast lookup table to search class_def by descriptor
Artem Udovichenko [Wed, 14 Oct 2015 13:36:55 +0000 (16:36 +0300)]
Implementation of fast lookup table to search class_def by descriptor

Lookup table is a hash table which built at compile time and stored
into oat file. At runtime the table is restored and used in the
method DexFile::FindClassDef(const char*) to perform fast search of
the class_def_idx by class descriptor. Advantages of the lookup table
over the HashSet (runtime/base/hash_set.h) are:
1. Lookup table is built at compile time and uses read-only memory at
runtime
2. Lookup table uses less memory then DexFile::Index (less by 80% for
/system/framework/framework.jar on Nexus5)
3. Lookup table does less string comparisons compared with HashSet
(less by 70% for zygote process on Nexus5)
The disadvantage of the lookup table is it increased boot.oat size by
0.2% on Nexus5 and application .oat file by 0.3% in average on Nexus5.

mathieuc changes:
Create lookup table in dex2oat to speed up compilation. Clean up code
to follow style guide and use less static functions. Added
performance measurements.

Compile ~100 APKs 5 times with filter interpret-only:
Before:
real  1m8.989s
user  0m59.318s
sys 0m7.773s

After:
real  1m1.493s
user  0m52.055s
sys 0m7.581s

App launch (AOSP N5 maps, average of 45 runs):
Before: 966.84ms
After: 923.733ms
Launch speedup is 4.7%

Memory usage compared to HashSet index on 50 various APK:
32 bit: HashSet ~625694b vs TypeLookupTable ~404268b
64 bit: HashSet ~1251390b vs TypeLookupTable ~404268b

Bug: 10921004
Bug: 20269715

Change-Id: I7246c1d9ad9fe81fe5c5907a4bf70396d8f9242a

8 years agoMerge "ART: Fix deopt from optimized code under inlining"
David Brazdil [Thu, 29 Oct 2015 16:36:54 +0000 (16:36 +0000)]
Merge "ART: Fix deopt from optimized code under inlining"

8 years agoMerge "Change Checkpoint API to return total number of checkpoints"
Mathieu Chartier [Thu, 29 Oct 2015 16:13:19 +0000 (16:13 +0000)]
Merge "Change Checkpoint API to return total number of checkpoints"

8 years agoMerge "MIPS64: Add "Compare and Swap" intrinsic support."
Andreas Gampe [Thu, 29 Oct 2015 15:53:49 +0000 (15:53 +0000)]
Merge "MIPS64: Add "Compare and Swap" intrinsic support."
am: 6f42850562

* commit '6f42850562048169374f3bbaec5bb31441ccc062':
  MIPS64: Add "Compare and Swap" intrinsic support.

8 years agoMerge "MIPS64: Add "Compare and Swap" intrinsic support."
Andreas Gampe [Thu, 29 Oct 2015 15:48:50 +0000 (15:48 +0000)]
Merge "MIPS64: Add "Compare and Swap" intrinsic support."

8 years agoMerge "Revert "Enable store elimination for singleton objects.""
Andreas Gampe [Thu, 29 Oct 2015 04:02:22 +0000 (04:02 +0000)]
Merge "Revert "Enable store elimination for singleton objects.""
am: 594c061251

* commit '594c0612519e96bcc1bd42ff4dcbfa2c53b09c5a':
  Revert "Enable store elimination for singleton objects."

8 years agoMerge "Revert "Enable store elimination for singleton objects.""
Andreas Gampe [Thu, 29 Oct 2015 03:57:27 +0000 (03:57 +0000)]
Merge "Revert "Enable store elimination for singleton objects.""

8 years agoRevert "Enable store elimination for singleton objects."
Andreas Gampe [Thu, 29 Oct 2015 02:59:50 +0000 (02:59 +0000)]
Revert "Enable store elimination for singleton objects."

This reverts commit 7f43a3d48fc29045875d50e10bbc5d6ffc25d61e.

Fails booting.

Bug: 25357772
Change-Id: Ied19536f3ce8d81e76885cb6baed4853e2ed6714