OSDN Git Service

android-x86/art.git
8 years agoMerge "ART: Flag to fail thread creation" am: e3ccf74
Andreas Gampe [Tue, 12 Apr 2016 22:38:52 +0000 (22:38 +0000)]
Merge "ART: Flag to fail thread creation" am: e3ccf74
am: 9b937e7

* commit '9b937e79312edd504fe2248aafcc633f9a0e32a5':
  ART: Flag to fail thread creation

Change-Id: Ib53b557f861b56fc275681e9a3de0e3f3c6ab9ac

8 years agoMerge "ART: Flag to fail thread creation"
Andreas Gampe [Tue, 12 Apr 2016 22:35:34 +0000 (22:35 +0000)]
Merge "ART: Flag to fail thread creation"
am: e3ccf74

* commit 'e3ccf744a6f7e4946d1d813d45d5dab20f0759d3':
  ART: Flag to fail thread creation

Change-Id: Iee43243ec684b0ea6b303c45e04cdcdafc59ebe0

8 years agoMerge "ART: Flag to fail thread creation"
Andreas Gampe [Tue, 12 Apr 2016 22:27:18 +0000 (22:27 +0000)]
Merge "ART: Flag to fail thread creation"

8 years agoMerge "ART: Flag to fail thread creation" into nyc-dev
Andreas Gampe [Tue, 12 Apr 2016 22:15:45 +0000 (22:15 +0000)]
Merge "ART: Flag to fail thread creation" into nyc-dev
am: 4e2d57e

* commit '4e2d57e608b55f0e8e00792da6aae728615ad54b':
  ART: Flag to fail thread creation

Change-Id: Ic18797f8e3852fd4ae87fd2f1e1fb8d009ec0edb

8 years agoART: Flag to fail thread creation
Andreas Gampe [Mon, 11 Apr 2016 15:42:26 +0000 (08:42 -0700)]
ART: Flag to fail thread creation

Add a flag to mark when the zygote is not allowed to create threads.

Bug: 27248115
Bug: 28149511

(cherry picked from commit 415d8070e37c20dfb7e6dc37e74fdb5fffc2022e)

Change-Id: I1dc3620d9e7d0054c672b993d89459fc4b353dfc

8 years agoMerge "ART: Flag to fail thread creation" into nyc-dev
Andreas Gampe [Tue, 12 Apr 2016 21:05:00 +0000 (21:05 +0000)]
Merge "ART: Flag to fail thread creation" into nyc-dev

8 years agoMerge "ART: Add Makefile target for boot image" am: 336dd6a
Andreas Gampe [Tue, 12 Apr 2016 21:02:31 +0000 (21:02 +0000)]
Merge "ART: Add Makefile target for boot image" am: 336dd6a
am: 81ec19f

* commit '81ec19ff5760fbf14e0b362e8e420b63104901e6':
  ART: Add Makefile target for boot image

Change-Id: I0e591df7e79305b24e57e72bc3cc13d820fe4ab2

8 years agoMerge "ART: Add Makefile target for boot image"
Andreas Gampe [Tue, 12 Apr 2016 20:56:02 +0000 (20:56 +0000)]
Merge "ART: Add Makefile target for boot image"
am: 336dd6a

* commit '336dd6a0989dafb356be5f689028d983b0931335':
  ART: Add Makefile target for boot image

Change-Id: Ia85d547167ccd25ba9ab350ed1829dbec7455f12

8 years agoMerge "ART: Add Makefile target for boot image"
Andreas Gampe [Tue, 12 Apr 2016 20:46:41 +0000 (20:46 +0000)]
Merge "ART: Add Makefile target for boot image"

8 years agoART: Flag to fail thread creation
Andreas Gampe [Mon, 11 Apr 2016 15:42:26 +0000 (08:42 -0700)]
ART: Flag to fail thread creation

Add a flag to mark when the zygote is not allowed to create threads.

Bug: 27248115
Bug: 28149511
Change-Id: I1dc3620d9e7d0054c672b993d89459fc4b353dfc

8 years agoMerge "Assembly region TLAB allocation fast path for arm64." am: ec9a828
Hiroshi Yamauchi [Tue, 12 Apr 2016 17:45:51 +0000 (17:45 +0000)]
Merge "Assembly region TLAB allocation fast path for arm64." am: ec9a828
am: 227eeb9

* commit '227eeb9d60a3550f289ef42fbe880496256ec186':
  Assembly region TLAB allocation fast path for arm64.

Change-Id: I0936b91db42d9c31282ef164eadf7515e2979bb3

8 years agoMerge "Assembly region TLAB allocation fast path for arm64."
Hiroshi Yamauchi [Tue, 12 Apr 2016 17:40:10 +0000 (17:40 +0000)]
Merge "Assembly region TLAB allocation fast path for arm64."
am: ec9a828

* commit 'ec9a828fa4a4638d2d17124c4fa835f15c7c5589':
  Assembly region TLAB allocation fast path for arm64.

Change-Id: I2a249f77abbe4beafedec43b0f51ac23994f81e3

8 years agoMerge "Assembly region TLAB allocation fast path for arm64."
Hiroshi Yamauchi [Tue, 12 Apr 2016 17:33:34 +0000 (17:33 +0000)]
Merge "Assembly region TLAB allocation fast path for arm64."

8 years agoART: Add Makefile target for boot image
Andreas Gampe [Mon, 11 Apr 2016 18:57:18 +0000 (11:57 -0700)]
ART: Add Makefile target for boot image

Add a phony Makefile target that depends on the dexopted boot image.
This allows to test out changes easily, for example, for compile-time
initialization:

 m art-boot-image ART_BOOT_IMAGE_EXTRA_ARGS=--dump-init-failures=fails.txt

Bug: 27265238
Change-Id: I9d54c562a2e623b23b7c1dea9cdbe303786c95dd

8 years agoMerge "Small changes in ARM and x86-64 SystemArrayCopy intrinsics." am: 934c5b6
Roland Levillain [Tue, 12 Apr 2016 16:28:22 +0000 (16:28 +0000)]
Merge "Small changes in ARM and x86-64 SystemArrayCopy intrinsics." am: 934c5b6
am: 706dd39

* commit '706dd395a4b3dd44d325da5d56fe82679c55dd3c':
  Small changes in ARM and x86-64 SystemArrayCopy intrinsics.

Change-Id: I59522d3457e0973590681b2f3cee001e70bbc606

8 years agoMerge "Small changes in ARM and x86-64 SystemArrayCopy intrinsics."
Roland Levillain [Tue, 12 Apr 2016 16:23:04 +0000 (16:23 +0000)]
Merge "Small changes in ARM and x86-64 SystemArrayCopy intrinsics."
am: 934c5b6

* commit '934c5b69b1e78e22cd242c692f9ae4606799af31':
  Small changes in ARM and x86-64 SystemArrayCopy intrinsics.

Change-Id: I51c68d5fc2d8a9674f327dabcf9fb7636a0efc27

8 years agoMerge "Small changes in ARM and x86-64 SystemArrayCopy intrinsics."
Roland Levillain [Tue, 12 Apr 2016 16:18:08 +0000 (16:18 +0000)]
Merge "Small changes in ARM and x86-64 SystemArrayCopy intrinsics."

8 years agoSmall changes in ARM and x86-64 SystemArrayCopy intrinsics.
Roland Levillain [Tue, 12 Apr 2016 14:42:57 +0000 (15:42 +0100)]
Small changes in ARM and x86-64 SystemArrayCopy intrinsics.

Have these intrinsics share a more uniform style with the
ARM64 SystemArrayCopy intrinsic.

Also make some changes/improvements in:
- art::IntrinsicOptimizations
- art::arm64::GenSystemArrayCopyAddresses

Change-Id: Ieeb224795229580f8e5f7219c586d04786d8c705

8 years agoMerge "ART: Speed up HGraph::PopulateIrreducibleRecursive" am: 62358ed
David Brazdil [Tue, 12 Apr 2016 14:33:45 +0000 (14:33 +0000)]
Merge "ART: Speed up HGraph::PopulateIrreducibleRecursive" am: 62358ed
am: a9b3479

* commit 'a9b3479f1c6312a5595c2fdeae2fe6e0ba9686b0':
  ART: Speed up HGraph::PopulateIrreducibleRecursive

Change-Id: Ia62b071c08b3cfd9a20681b0ae86c13b2a7e9a92

8 years agoMerge "ART: Speed up HGraph::PopulateIrreducibleRecursive"
David Brazdil [Tue, 12 Apr 2016 14:28:12 +0000 (14:28 +0000)]
Merge "ART: Speed up HGraph::PopulateIrreducibleRecursive"
am: 62358ed

* commit '62358ed8377fd14fd9890b54c09f927ce51fc443':
  ART: Speed up HGraph::PopulateIrreducibleRecursive

Change-Id: I56543b65bbb1ef6dcaf4fd336596e80380981956

8 years agoMerge "ART: Speed up HGraph::PopulateIrreducibleRecursive"
David Brazdil [Tue, 12 Apr 2016 14:19:33 +0000 (14:19 +0000)]
Merge "ART: Speed up HGraph::PopulateIrreducibleRecursive"

8 years agoART: Speed up HGraph::PopulateIrreducibleRecursive
David Brazdil [Tue, 5 Apr 2016 16:15:19 +0000 (17:15 +0100)]
ART: Speed up HGraph::PopulateIrreducibleRecursive

Populating an irreducible loop can potentially traverse all possible
paths through the HGraph, leading to an exponential algorithm.
This patch adds a bit vector of nodes whose membership in the loop
has been decided and need not be revisited again.

Bug: 27856014
Change-Id: I3696f08c846e6f40e5de44cb771811bac7e3e08a

8 years agoMerge "Remove recursive ALWAYS_INLINE" am: 8eec0bb
Vladimir Marko [Tue, 12 Apr 2016 14:11:30 +0000 (14:11 +0000)]
Merge "Remove recursive ALWAYS_INLINE" am: 8eec0bb
am: 51207ad

* commit '51207ad76601961451eb4e9c8c7177edad5eda90':
  Remove recursive ALWAYS_INLINE

Change-Id: Ifb13bfcd32ce2e13e3314592c4b5a3ff8a4573ab

8 years agoMerge "Remove recursive ALWAYS_INLINE"
Goran Jakovljevic [Tue, 12 Apr 2016 14:05:56 +0000 (14:05 +0000)]
Merge "Remove recursive ALWAYS_INLINE"
am: 8eec0bb

* commit '8eec0bbb10dd2909aeb973ee5799e9f736bf3fc3':
  Remove recursive ALWAYS_INLINE

Change-Id: If8312283a79385f37de0b955e0633b3a314b29cd

8 years agoMerge "Remove recursive ALWAYS_INLINE"
Vladimir Marko [Tue, 12 Apr 2016 13:58:51 +0000 (13:58 +0000)]
Merge "Remove recursive ALWAYS_INLINE"

8 years agoMerge "unstarted_runtime: add cutout for Math.floor" am: b2880a9
Sergio Giro [Tue, 12 Apr 2016 13:54:47 +0000 (13:54 +0000)]
Merge "unstarted_runtime: add cutout for Math.floor" am: b2880a9
am: 416f1db

* commit '416f1db66fc5366e09518a2e53b9c9c7f61a0f4b':
  unstarted_runtime: add cutout for Math.floor

Change-Id: I911f568f1671e6572231ef4d1551f77734dc886c

8 years agoMerge "unstarted_runtime: add cutout for Math.floor"
Sergio Giro [Tue, 12 Apr 2016 13:49:11 +0000 (13:49 +0000)]
Merge "unstarted_runtime: add cutout for Math.floor"
am: b2880a9

* commit 'b2880a9c743e433ddaede6bb54911a4b6483ee0a':
  unstarted_runtime: add cutout for Math.floor

Change-Id: I7ca1d09fab18f1a1aa4a1a790f597e6ef464eb7c

8 years agoMerge "unstarted_runtime: add cutout for Math.floor"
Sergio Giro [Tue, 12 Apr 2016 13:39:24 +0000 (13:39 +0000)]
Merge "unstarted_runtime: add cutout for Math.floor"

8 years agounstarted_runtime: add cutout for Math.floor
Sergio Giro [Mon, 11 Apr 2016 19:49:20 +0000 (20:49 +0100)]
unstarted_runtime: add cutout for Math.floor

Needed in order to make BouncyCastleProvider initializable in
compile time

(cherry picked from commit a8908ef14cf2d2e0d05e41e319da5d6909325ae2)
Bug: 28108158

Change-Id: Id6b4e3d4dde45354562603f41134d8d21da2b423

8 years agoRevert "Update expectations for 031-class-attributes."
Narayan Kamath [Tue, 12 Apr 2016 13:15:44 +0000 (13:15 +0000)]
Revert "Update expectations for 031-class-attributes."
am: 26e818d

* commit '26e818d520e8af9f1355a0eda6b111d741411210':
  Revert "Update expectations for 031-class-attributes."

Change-Id: I70950c685bdbb03f6815c2f65faeec06950b2991

8 years agoRevert "Update expectations for 031-class-attributes."
Narayan Kamath [Tue, 12 Apr 2016 12:38:09 +0000 (13:38 +0100)]
Revert "Update expectations for 031-class-attributes."

This reverts commit 32580ebd54bfeef62d5769439d336ca33f5592b0.

The original commit tracked OpenJDK behaviour, which we've decided
to revert because several apps depend on the value of Package.toString.

bug: 28057303

(cherry picked from commit ae4904905f10997f99a42310785b8f33625e20e9)

Change-Id: If03b91aab42dfaa9c838434b9a28f73cd970e34b

8 years agoMerge "Revert "Update expectations for 031-class-attributes."" am: 04c2b2d
Narayan Kamath [Tue, 12 Apr 2016 13:04:36 +0000 (13:04 +0000)]
Merge "Revert "Update expectations for 031-class-attributes."" am: 04c2b2d
am: 5998ef9

* commit '5998ef9fbf032e69ea7811282c680c2771066928':
  Revert "Update expectations for 031-class-attributes."

Change-Id: I385b76a780f33ac0c79a9967525227ac55848139

8 years agoMerge "Revert "Update expectations for 031-class-attributes.""
Narayan Kamath [Tue, 12 Apr 2016 12:59:00 +0000 (12:59 +0000)]
Merge "Revert "Update expectations for 031-class-attributes.""
am: 04c2b2d

* commit '04c2b2de69460d41e0c39c1f7d9fb77376c3aa8b':
  Revert "Update expectations for 031-class-attributes."

Change-Id: I38b30b15397b0c5515a02d55a05808f75e70fd68

8 years agoMerge "Revert "Update expectations for 031-class-attributes.""
Narayan Kamath [Tue, 12 Apr 2016 12:52:34 +0000 (12:52 +0000)]
Merge "Revert "Update expectations for 031-class-attributes.""

8 years agoRevert "Update expectations for 031-class-attributes."
Narayan Kamath [Tue, 12 Apr 2016 12:38:09 +0000 (13:38 +0100)]
Revert "Update expectations for 031-class-attributes."

This reverts commit 32580ebd54bfeef62d5769439d336ca33f5592b0.

The original commit tracked OpenJDK behaviour, which we've decided
to revert because several apps depend on the value of Package.toString.

bug: 28057303

8 years agoRemove recursive ALWAYS_INLINE
Goran Jakovljevic [Tue, 12 Apr 2016 11:11:16 +0000 (13:11 +0200)]
Remove recursive ALWAYS_INLINE

GCC (mips32 Buildbot) is complaining about recursive inlining.

Clean up after
    https://android-review.googlesource.com/#/c/214918/.

Change-Id: I221c53c32403e5e433e30cfee7b2ae36680f39e6

8 years agoMerge "unstarted_runtime: add cutout for Math.floor" into nyc-dev
Sergio Giro [Tue, 12 Apr 2016 10:53:28 +0000 (10:53 +0000)]
Merge "unstarted_runtime: add cutout for Math.floor" into nyc-dev
am: 0fc5d4a

* commit '0fc5d4ac0c4a099546a445a09de54f2b29c27637':
  unstarted_runtime: add cutout for Math.floor

Change-Id: I0059c34e5cd6450dc2a6e2ea08b0a977f6a94e7c

8 years agoMerge "unstarted_runtime: add cutout for Math.floor" into nyc-dev
Sergio Giro [Tue, 12 Apr 2016 10:40:04 +0000 (10:40 +0000)]
Merge "unstarted_runtime: add cutout for Math.floor" into nyc-dev

8 years agoMerge changes from topic \'image_layout\' am: 780b461
Mathieu Chartier [Tue, 12 Apr 2016 02:41:23 +0000 (02:41 +0000)]
Merge changes from topic \'image_layout\' am: 780b461
am: 66dfb68

* commit '66dfb68a3413515a9deceaa573e9909582335394':
  Fix relocate in place to handle arbitrary app image layout
  Revert "Revert "Reduce dirty image pages by improving binning""
  Revert "Reduce dirty image pages by improving binning"
  Reduce dirty image pages by improving binning

Change-Id: I5e9f46478833dd434467ac3509d6f3049b039e06

8 years agoMerge changes from topic \'image_layout\'
Mathieu Chartier [Tue, 12 Apr 2016 02:36:26 +0000 (02:36 +0000)]
Merge changes from topic \'image_layout\'
am: 780b461

* commit '780b46126af0b4239ff5a3a88f347548d960bbe4':
  Fix relocate in place to handle arbitrary app image layout
  Revert "Revert "Reduce dirty image pages by improving binning""
  Revert "Reduce dirty image pages by improving binning"
  Reduce dirty image pages by improving binning

Change-Id: I9e40aa3e4465c297bd74f825e6c21d1e3f5372d3

8 years agoMerge changes from topic 'image_layout'
Mathieu Chartier [Tue, 12 Apr 2016 02:23:10 +0000 (02:23 +0000)]
Merge changes from topic 'image_layout'

* changes:
  Fix relocate in place to handle arbitrary app image layout
  Revert "Revert "Reduce dirty image pages by improving binning""
  Revert "Reduce dirty image pages by improving binning"
  Reduce dirty image pages by improving binning

8 years agoFix relocate in place to handle arbitrary app image layout
Mathieu Chartier [Mon, 11 Apr 2016 19:03:48 +0000 (12:03 -0700)]
Fix relocate in place to handle arbitrary app image layout

Previously the relocation had bugs where it would not work correctly
if the iftable was after the class since the object arrays would not
yet be updated to be the relocated address when we went through them
to fixup the ArtMethod pointers.

Also fixes a bug where the superclass of a class could not be
updated when we walk through it for visiting instance fields of
large objects.

Changed RelocateInPlace to use a simplier single pass approach.

Bug: 27906566
Bug: 22858531

(cherry picked from commit 564289c753cbe3521f9523b350bd713c1fe2fbd4)

Change-Id: I97affab6ff353dfdc4d1bf31df69ceb96a0c7a1a

8 years agoRevert "Revert "Reduce dirty image pages by improving binning""
Mathieu Chartier [Sat, 9 Apr 2016 02:01:05 +0000 (19:01 -0700)]
Revert "Revert "Reduce dirty image pages by improving binning""

This reverts commit 8ace610a222892f7b700e4f95e50fa6315ab85c0.

(cherry picked from commit 80c563ba136fd8da8791cf0f1a5f8f7026816ead)

Change-Id: I5b312f41d8b96eb189ea8b9d3a3ab861c5c9d515

8 years agoRevert "Reduce dirty image pages by improving binning"
Mathieu Chartier [Sat, 9 Apr 2016 01:54:36 +0000 (18:54 -0700)]
Revert "Reduce dirty image pages by improving binning"

This reverts commit 794bff5f622c79fd7bd9899e700cf052a375c675.

(cherry picked from commit 8ace610a222892f7b700e4f95e50fa6315ab85c0)

Change-Id: Id53d64a04aa8766a2cb283a2f7b8354590213b13

8 years agoReduce dirty image pages by improving binning
Mathieu Chartier [Thu, 7 Apr 2016 21:16:26 +0000 (14:16 -0700)]
Reduce dirty image pages by improving binning

Change ordering from dirty to less dirty since ArtFields are clean
and they are last. Add separate binning for DexCache and instances
of java lang object (probably a lock object).

Business card .art RAM (on shamu):
              PSS     Private Dirty
.art mmap     1011      600
.art mmap      990      560

Bug: 27906566

(cherry picked from commit 794bff5f622c79fd7bd9899e700cf052a375c675)

Change-Id: I31c9ff41c3d713fc3b14573c2b731325ac6f366f

8 years agoDon\'t abort during app image loading with no boot image
Mathieu Chartier [Tue, 12 Apr 2016 01:39:04 +0000 (01:39 +0000)]
Don\'t abort during app image loading with no boot image
am: 19578c9

* commit '19578c9ae94725aaa82ef32fbfb2f9fd09321844':
  Don't abort during app image loading with no boot image

Change-Id: I82719035eea1840f223237ea1f8f3551a0c0199f

8 years agoFix relocate in place to handle arbitrary app image layout
Mathieu Chartier [Tue, 12 Apr 2016 01:39:04 +0000 (01:39 +0000)]
Fix relocate in place to handle arbitrary app image layout
am: 564289c  -s ours

* commit '564289c753cbe3521f9523b350bd713c1fe2fbd4':
  Fix relocate in place to handle arbitrary app image layout

Change-Id: If99e268e3d49529495dfeb6a8e6c37b646e8d9d6

8 years agoRevert "Revert "Reduce dirty image pages by improving binning""
Mathieu Chartier [Tue, 12 Apr 2016 01:33:56 +0000 (01:33 +0000)]
Revert "Revert "Reduce dirty image pages by improving binning""
am: 80c563b

* commit '80c563ba136fd8da8791cf0f1a5f8f7026816ead':
  Revert "Revert "Reduce dirty image pages by improving binning""

Change-Id: Ia5b1d1b2fcc1bee961d5334874b18c96abb65187

8 years agoDon't abort during app image loading with no boot image
Mathieu Chartier [Mon, 11 Apr 2016 20:56:45 +0000 (13:56 -0700)]
Don't abort during app image loading with no boot image

Fail gracefully instead. Fixes test 119.

Bug: 22858531

(cherry picked from commit e719926c78d6b717ecc0d3d1620a757ae3019d20)

Change-Id: If39e0cf146a3bd03bf23646077e9547dd56ec81c

8 years agoFix relocate in place to handle arbitrary app image layout
Mathieu Chartier [Mon, 11 Apr 2016 19:03:48 +0000 (12:03 -0700)]
Fix relocate in place to handle arbitrary app image layout

Previously the relocation had bugs where it would not work correctly
if the iftable was after the class since the object arrays would not
yet be updated to be the relocated address when we went through them
to fixup the ArtMethod pointers.

Also fixes a bug where the superclass of a class could not be
updated when we walk through it for visiting instance fields of
large objects.

Changed RelocateInPlace to use a simplier single pass approach.

Bug: 27906566
Bug: 22858531

Change-Id: I97affab6ff353dfdc4d1bf31df69ceb96a0c7a1a

8 years agoAssembly region TLAB allocation fast path for arm64.
Hiroshi Yamauchi [Fri, 8 Apr 2016 00:18:24 +0000 (17:18 -0700)]
Assembly region TLAB allocation fast path for arm64.

This is for the CC collector.

Share the common fast path code with the tlab fast path code.

Speedup (on N9):
    BinaryTrees:  1235 -> 443 ms (-64%)
    MemAllocTest: 1647 -> 766 ms (-53%)

Bug: 9986565
Bug: 12687968
Change-Id: I67049cc0b4d6508934f07d039d421ee162b330bf

8 years agoMerge "Don\'t abort during app image loading with no boot image" am: 80bda17
Mathieu Chartier [Mon, 11 Apr 2016 21:24:39 +0000 (21:24 +0000)]
Merge "Don\'t abort during app image loading with no boot image" am: 80bda17
am: c02a52a

* commit 'c02a52a434440395e7accb511ccc58b3fd815c62':
  Don't abort during app image loading with no boot image

Change-Id: I95a063f6f58a85719ff159d3acf3e06406366c0e

8 years agoMerge "Don\'t abort during app image loading with no boot image"
Mathieu Chartier [Mon, 11 Apr 2016 21:19:40 +0000 (21:19 +0000)]
Merge "Don\'t abort during app image loading with no boot image"
am: 80bda17

* commit '80bda17d9810507fa016206fff90acd0e1337a3a':
  Don't abort during app image loading with no boot image

Change-Id: I054825af8356a1bfdc0f6d43c8166b6a1bbd5c34

8 years agoMerge "Don't abort during app image loading with no boot image"
Mathieu Chartier [Mon, 11 Apr 2016 21:12:11 +0000 (21:12 +0000)]
Merge "Don't abort during app image loading with no boot image"

8 years agoDon't abort during app image loading with no boot image
Mathieu Chartier [Mon, 11 Apr 2016 20:56:45 +0000 (13:56 -0700)]
Don't abort during app image loading with no boot image

Fail gracefully instead. Fixes test 119.

Bug: 22858531
Change-Id: If17acf5365f8a8fc0a2f6445c558960c62c8f948

8 years agounstarted_runtime: add cutout for Math.floor
Sergio Giro [Mon, 11 Apr 2016 19:49:20 +0000 (20:49 +0100)]
unstarted_runtime: add cutout for Math.floor

Needed in order to make BouncyCastleProvider initializable in
compile time

Bug: 28108158
Change-Id: If445a0b3e4a072d7139e2506c2a5910312b302d1

8 years agoMerge "ART: Make mterp jit profiling race tolerant" am: d521826
Calin Juravle [Mon, 11 Apr 2016 17:44:57 +0000 (17:44 +0000)]
Merge "ART:  Make mterp jit profiling race tolerant" am: d521826
am: d4494f6

* commit 'd4494f646536b1b0b1eed997eccc488199a001df':
  ART:  Make mterp jit profiling race tolerant

Change-Id: I3f6ab8463d54752988bffdcef83557f628a2e5fa

8 years agoMerge "ART: Make mterp jit profiling race tolerant"
buzbee [Mon, 11 Apr 2016 17:39:59 +0000 (17:39 +0000)]
Merge "ART:  Make mterp jit profiling race tolerant"
am: d521826

* commit 'd521826f27ea58ac0520887e5df15b35a589802d':
  ART:  Make mterp jit profiling race tolerant

Change-Id: Ic36b6b5c847085482eb1b28a15b6a81985ee04d8

8 years agoMerge "ART: Make mterp jit profiling race tolerant"
Calin Juravle [Mon, 11 Apr 2016 17:32:24 +0000 (17:32 +0000)]
Merge "ART:  Make mterp jit profiling race tolerant"

8 years agoMerge "MIPS: Improving art_quick_imt_conflict_trampoline" am: 1e24b28
Nicolas Geoffray [Mon, 11 Apr 2016 16:00:57 +0000 (16:00 +0000)]
Merge "MIPS: Improving art_quick_imt_conflict_trampoline" am: 1e24b28
am: c541579

* commit 'c54157992d5e4f4f3568868f6ea85565824a7750':
  MIPS: Improving art_quick_imt_conflict_trampoline

Change-Id: I4ca3ccd072af700c591b9f33ebe2e0a2baef55ed

8 years agoART: Make mterp jit profiling race tolerant
buzbee [Mon, 11 Apr 2016 14:48:18 +0000 (07:48 -0700)]
ART:  Make mterp jit profiling race tolerant

The JIT profiling mechanism is intentionally non-precise to minimize
performance overhead.  In general, this is not a problem.   However,
the on-stack replacement mechanism assumes an order of method
compilation than can sometimes be violated if conditions are just
right.

This change allows compilation requests that were dropped due to
a race condition to eventually be re-issued.  It does this by allowing
the 16-bit hotness counter to wrap around.

Change-Id: I2ac8056af8c4f7f8cef3f2c3db70b0394c26a566

8 years agoMerge "MIPS: Improving art_quick_imt_conflict_trampoline"
Goran Jakovljevic [Mon, 11 Apr 2016 15:53:46 +0000 (15:53 +0000)]
Merge "MIPS: Improving art_quick_imt_conflict_trampoline"
am: 1e24b28

* commit '1e24b28e89223dc4749a54582e7eaf929ca0cb5f':
  MIPS: Improving art_quick_imt_conflict_trampoline

Change-Id: I3e19e7c9ae0d8cb45dbfdd5edaff6c2ea2853879

8 years agoMerge "MIPS: Improving art_quick_imt_conflict_trampoline"
Nicolas Geoffray [Mon, 11 Apr 2016 15:45:57 +0000 (15:45 +0000)]
Merge "MIPS: Improving art_quick_imt_conflict_trampoline"

8 years agoMerge "ART: Change prebuild run-test setup" am: b5a0647
Andreas Gampe [Mon, 11 Apr 2016 15:43:58 +0000 (15:43 +0000)]
Merge "ART: Change prebuild run-test setup" am: b5a0647
am: 9fcda11

* commit '9fcda114ca0c77b660c46dd3fbc7c0531695c69a':
  ART: Change prebuild run-test setup

Change-Id: I4169ed7e0f9665133ef75a5c4c313d26ed9b6f6b

8 years agoMerge "ART: Change prebuild run-test setup"
Andreas Gampe [Mon, 11 Apr 2016 15:39:06 +0000 (15:39 +0000)]
Merge "ART: Change prebuild run-test setup"
am: b5a0647

* commit 'b5a0647c2323246a9328b6eb0123df60e26d4d66':
  ART: Change prebuild run-test setup

Change-Id: I198eab5f71384c8ce829ac877676833153856538

8 years agoMerge "ART: Change prebuild run-test setup"
Andreas Gampe [Mon, 11 Apr 2016 15:29:56 +0000 (15:29 +0000)]
Merge "ART: Change prebuild run-test setup"

8 years agoMerge "Oatdump: Smarter StackMap lookup to improve performance." am: 0432b41
Vladimir Marko [Mon, 11 Apr 2016 14:31:36 +0000 (14:31 +0000)]
Merge "Oatdump: Smarter StackMap lookup to improve performance." am: 0432b41
am: c1cf292

* commit 'c1cf2929b899bf5795c0626c9ba80227b78a5bc8':
  Oatdump: Smarter StackMap lookup to improve performance.

Change-Id: Idde5d04ef8161aed5677b5a3118f15f34de75f04

8 years agoMerge "Oatdump: Smarter StackMap lookup to improve performance."
Vladimir Marko [Mon, 11 Apr 2016 14:26:48 +0000 (14:26 +0000)]
Merge "Oatdump: Smarter StackMap lookup to improve performance."
am: 0432b41

* commit '0432b41abde95c8eae76714ad652316682b317d6':
  Oatdump: Smarter StackMap lookup to improve performance.

Change-Id: Ia57341abdafbb53e6e2baec62a63d81269dedc8b

8 years agoMerge "Oatdump: Smarter StackMap lookup to improve performance."
Vladimir Marko [Mon, 11 Apr 2016 14:18:05 +0000 (14:18 +0000)]
Merge "Oatdump: Smarter StackMap lookup to improve performance."

8 years agoMerge "Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64...
Calin Juravle [Mon, 11 Apr 2016 14:12:40 +0000 (14:12 +0000)]
Merge "Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""""" am: 787a500
am: c925e50

* commit 'c925e506593e7ba3f076c8f3229c0156acd885a4':
  Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""""

Change-Id: If1affe3d97a4478d4a1bace5d6780534b57d920c

8 years agoMerge "Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64...
Bill Buzbee [Mon, 11 Apr 2016 14:07:56 +0000 (14:07 +0000)]
Merge "Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""""
am: 787a500

* commit '787a50072e8e0ce5ba417c94a9591558580f8ffe':
  Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp""""

Change-Id: I2ee3222189f402de291cf7f95cc0cc555d00da8f

8 years agoMerge "Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64...
Calin Juravle [Mon, 11 Apr 2016 13:56:56 +0000 (13:56 +0000)]
Merge "Revert "Revert "Revert "Revert "ART: Improve JitProfile perf in arm/arm64 mterp"""""

8 years agoOatdump: Smarter StackMap lookup to improve performance.
Vladimir Marko [Fri, 8 Apr 2016 10:18:25 +0000 (11:18 +0100)]
Oatdump: Smarter StackMap lookup to improve performance.

Shaves off roughly 10% from the oatdump_test time.

Bug: 27824283
Change-Id: I6c2fd3b1db2723871641d43aeb543581d405cfcb

8 years agoMerge "Implement on-stack replacement for MIPS32 and MIPS64" am: 4009bc6
Nicolas Geoffray [Mon, 11 Apr 2016 08:36:55 +0000 (08:36 +0000)]
Merge "Implement on-stack replacement for MIPS32 and MIPS64" am: 4009bc6
am: 5388c63

* commit '5388c636d4087d61d6bacd00a9e09f27aa3f6eda':
  Implement on-stack replacement for MIPS32 and MIPS64

Change-Id: I5c921794219b8866c26ef84ee7d4e82e99c19d1d

8 years agoMerge "Implement on-stack replacement for MIPS32 and MIPS64"
Goran Jakovljevic [Mon, 11 Apr 2016 08:32:08 +0000 (08:32 +0000)]
Merge "Implement on-stack replacement for MIPS32 and MIPS64"
am: 4009bc6

* commit '4009bc645e3358d3150b7f94dd90a2c939f0fa51':
  Implement on-stack replacement for MIPS32 and MIPS64

Change-Id: I04f85f7e3245036607257afc2348dbd7f2bab632

8 years agoMerge "Implement on-stack replacement for MIPS32 and MIPS64"
Nicolas Geoffray [Mon, 11 Apr 2016 08:24:18 +0000 (08:24 +0000)]
Merge "Implement on-stack replacement for MIPS32 and MIPS64"

8 years agoRevert "Reduce dirty image pages by improving binning"
Mathieu Chartier [Sat, 9 Apr 2016 02:06:59 +0000 (02:06 +0000)]
Revert "Reduce dirty image pages by improving binning"
am: 8ace610

* commit '8ace610a222892f7b700e4f95e50fa6315ab85c0':
  Revert "Reduce dirty image pages by improving binning"

Change-Id: I90a181ca6386357e7af46154b90f809632cf51a9

8 years agoRevert "Revert "Reduce dirty image pages by improving binning""
Mathieu Chartier [Sat, 9 Apr 2016 02:01:05 +0000 (19:01 -0700)]
Revert "Revert "Reduce dirty image pages by improving binning""

This reverts commit 8ace610a222892f7b700e4f95e50fa6315ab85c0.

8 years agoRevert "Reduce dirty image pages by improving binning"
Mathieu Chartier [Sat, 9 Apr 2016 01:54:36 +0000 (18:54 -0700)]
Revert "Reduce dirty image pages by improving binning"

This reverts commit 794bff5f622c79fd7bd9899e700cf052a375c675.

8 years agoMerge "Reduce dirty image pages by improving binning" into nyc-dev
Mathieu Chartier [Sat, 9 Apr 2016 00:31:34 +0000 (00:31 +0000)]
Merge "Reduce dirty image pages by improving binning" into nyc-dev
am: c9acdcc

* commit 'c9acdcc640052cdb7b73cfe7711a464eb5aea052':
  Reduce dirty image pages by improving binning

Change-Id: I9889aca2bad332080e76ea9c4ae60430f0662fb1

8 years agoStore precice set of which constructors require barriers
Mathieu Chartier [Sat, 9 Apr 2016 00:31:34 +0000 (00:31 +0000)]
Store precice set of which constructors require barriers
am: b7248b9  -s ours

* commit 'b7248b9f1a6d62a30f0cefc12de63c216b5d46e2':
  Store precice set of which constructors require barriers

Change-Id: I7567dd7c7ebdff664f36d07c7f5ce5cc743e854b

8 years agoART: Change prebuild run-test setup
Andreas Gampe [Wed, 23 Mar 2016 17:54:21 +0000 (10:54 -0700)]
ART: Change prebuild run-test setup

Prebuild was meant to check whether the runtime correctly loads
pre-existing oat files. With the advent of patching images, this
has actually been reduced to "does the runtime run self-patchoat"
correctly.

We cannot produce a prebuilt oat file that does not have to be
patched, as the runtime will patch the image when it starts.

There are two options to make this more meaningful:

* In the prebuild setting, first run patchoat to explicitly create
  a valid dalvik-cache.

* Change the dex2oat output to be the odex file, which can be
  patched like a regular file.

This change shows the latter approach.

Change-Id: I5234e10d78f7ea6c7ad8598db67d3fad8ba42b67

8 years agoMerge "Make sure non-fatal errors aren\'t printed." am: dea5933
Alex Light [Fri, 8 Apr 2016 19:06:56 +0000 (19:06 +0000)]
Merge "Make sure non-fatal errors aren\'t printed." am: dea5933
am: 24d5417

* commit '24d54171033021ba6bab8a099292fd5ee502ab39':
  Make sure non-fatal errors aren't printed.

Change-Id: Ib38340f234e73e513010a9f438fd3aad5f8c2621

8 years agoMerge "ART: Refactor imgdiag internals" am: c52e3f9
Andreas Gampe [Fri, 8 Apr 2016 18:58:46 +0000 (18:58 +0000)]
Merge "ART: Refactor imgdiag internals" am: c52e3f9
am: a35bde7

* commit 'a35bde7cf6cc9b6480569a1a9aba0a60f10a5295':
  ART: Refactor imgdiag internals

Change-Id: I2c669814dd521a2c02932bb5480e4c9f3bc3d93b

8 years agoMerge "Make sure non-fatal errors aren\'t printed."
Alex Light [Fri, 8 Apr 2016 18:58:45 +0000 (18:58 +0000)]
Merge "Make sure non-fatal errors aren\'t printed."
am: dea5933

* commit 'dea59334a2bf9f7709fdb1874c5db6e9537bc291':
  Make sure non-fatal errors aren't printed.

Change-Id: I2e8e6e5db320825e2d4cc4cbb931277181f0ed33

8 years agoMerge "ART: Refactor imgdiag internals"
Andreas Gampe [Fri, 8 Apr 2016 18:49:35 +0000 (18:49 +0000)]
Merge "ART: Refactor imgdiag internals"
am: c52e3f9

* commit 'c52e3f9e300d5c3f30f13a7812f0ff7aa8d9a4b1':
  ART: Refactor imgdiag internals

Change-Id: I32cf0bcb4f4431562c32e510930e2b76dd738d80

8 years agoMerge "Reduce dirty image pages by improving binning" into nyc-dev
Mathieu Chartier [Fri, 8 Apr 2016 18:49:01 +0000 (18:49 +0000)]
Merge "Reduce dirty image pages by improving binning" into nyc-dev

8 years agoMerge "Make sure non-fatal errors aren't printed."
Alex Light [Fri, 8 Apr 2016 18:42:03 +0000 (18:42 +0000)]
Merge "Make sure non-fatal errors aren't printed."

8 years agoMerge "ART: Refactor imgdiag internals"
Andreas Gampe [Fri, 8 Apr 2016 18:33:25 +0000 (18:33 +0000)]
Merge "ART: Refactor imgdiag internals"

8 years agoMerge changes from topic \'rr_barrier\' am: e835f3a
Mathieu Chartier [Fri, 8 Apr 2016 18:16:15 +0000 (18:16 +0000)]
Merge changes from topic \'rr_barrier\' am: e835f3a
am: 5cf09ba

* commit '5cf09ba6aba1d456ecc5b47085616914c490c708':
  Store precice set of which constructors require barriers
  Revert "Revert "Check if we require barrier if we did not resolve classes""
  Revert "Revert "Change RequiresConstructorBarrier default to yes""

Change-Id: I0eac446a8b1b712fb3678d87d1be4b07aba7fffe

8 years agoMerge changes from topic \'rr_barrier\'
Mathieu Chartier [Fri, 8 Apr 2016 18:07:07 +0000 (18:07 +0000)]
Merge changes from topic \'rr_barrier\'
am: e835f3a

* commit 'e835f3a2e4a7af404e61a88058712f77737d87cd':
  Store precice set of which constructors require barriers
  Revert "Revert "Check if we require barrier if we did not resolve classes""
  Revert "Revert "Change RequiresConstructorBarrier default to yes""

Change-Id: Ib0083850b2870223c13e1aa3128f5f656de868e8

8 years agoStore precice set of which constructors require barriers
Mathieu Chartier [Thu, 7 Apr 2016 20:19:19 +0000 (13:19 -0700)]
Store precice set of which constructors require barriers

Fixes bugs where things in the boot image might not have been
calculated even though resolved_clases was true. This only occured
for app and test compiles though.

Fixes test 476-checker-ctor-memory-barrier which was failing due to
inlining something in the boot class path and getting a unexpected
barrier since the barrier defaults to enabled.

No measurable increase in RAM usage.

(cherry picked from commit c4ae916def97b9e1ef6df35c8fabb3921a0e380c)

Bug: 28005874

Change-Id: I4a417819aa129c95f4a83c38df1a66eb77824ea9

8 years agoMerge "ART: Fix race in on-stack replacement" am: 250a23c
Bill Buzbee [Fri, 8 Apr 2016 17:52:25 +0000 (17:52 +0000)]
Merge "ART: Fix race in on-stack replacement" am: 250a23c
am: 4766a4a

* commit '4766a4af2bd5e3fe8433fe758db94921b6b1bb15':
  ART: Fix race in on-stack replacement

Change-Id: Ib7fd162bdbd4ea62e1803a7420435a140c566456

8 years agoMerge changes from topic 'rr_barrier'
Mathieu Chartier [Fri, 8 Apr 2016 17:50:05 +0000 (17:50 +0000)]
Merge changes from topic 'rr_barrier'

* changes:
  Store precice set of which constructors require barriers
  Revert "Revert "Check if we require barrier if we did not resolve classes""
  Revert "Revert "Change RequiresConstructorBarrier default to yes""

8 years agoReduce dirty image pages by improving binning
Mathieu Chartier [Thu, 7 Apr 2016 21:16:26 +0000 (14:16 -0700)]
Reduce dirty image pages by improving binning

Change ordering from dirty to less dirty since ArtFields are clean
and they are last. Add separate binning for DexCache and instances
of java lang object (probably a lock object).

Business card .art RAM (on shamu):
              PSS     Private Dirty
.art mmap     1011      600
.art mmap      990      560

Bug: 27906566

Change-Id: Ib3116953df7adafdc1560b064365c8b56e71483e

8 years agoMerge "ART: Fix race in on-stack replacement"
buzbee [Fri, 8 Apr 2016 17:45:20 +0000 (17:45 +0000)]
Merge "ART: Fix race in on-stack replacement"
am: 250a23c

* commit '250a23c892bb809267325c0744c6f70fca49ac94':
  ART: Fix race in on-stack replacement

Change-Id: I73be63f71d7ad8c91ee617dee8e812cabf8bbbd3

8 years agoStore precice set of which constructors require barriers
Mathieu Chartier [Thu, 7 Apr 2016 20:19:19 +0000 (13:19 -0700)]
Store precice set of which constructors require barriers

Fixes bugs where things in the boot image might not have been
calculated even though resolved_clases was true. This only occured
for app and test compiles though.

Fixes test 476-checker-ctor-memory-barrier which was failing due to
inlining something in the boot class path and getting a unexpected
barrier since the barrier defaults to enabled.

No measurable increase in RAM usage.

Bug: 28005874

Change-Id: I4a417819aa129c95f4a83c38df1a66eb77824ea9

8 years agoMerge "ART: Fix race in on-stack replacement"
Bill Buzbee [Fri, 8 Apr 2016 17:28:49 +0000 (17:28 +0000)]
Merge "ART: Fix race in on-stack replacement"

8 years agoMake sure non-fatal errors aren't printed.
Alex Light [Fri, 8 Apr 2016 16:44:54 +0000 (09:44 -0700)]
Make sure non-fatal errors aren't printed.

During run-test setup `du` can print error messages if the folder it
is running on is modified during its execution. We silence these error
messages since they shouldn't affect the validity of the test.

Change-Id: I9f59e39c2a346414f025ce1fa79b453329080d30

8 years agoMerge "Ignore libcore.java.lang.ThreadTest failures on device." am: 6c5d868
Roland Levillain [Fri, 8 Apr 2016 16:18:48 +0000 (16:18 +0000)]
Merge "Ignore libcore.java.lang.ThreadTest failures on device." am: 6c5d868
am: 2b63a40

* commit '2b63a40b125fbe0904947d523c66d1eb71a71796':
  Ignore libcore.java.lang.ThreadTest failures on device.

Change-Id: I499ed39f2fe7c64dd391b60c68dd7b4863b57276