OSDN Git Service

android-x86/art.git
8 years agoMerge "Fix HDoubleConstant::IsZero and HFloatConstant::IsZero."
Nicolas Geoffray [Wed, 16 Mar 2016 09:27:50 +0000 (09:27 +0000)]
Merge "Fix HDoubleConstant::IsZero and HFloatConstant::IsZero."
am: 4d20c08

* commit '4d20c081ec372a5ec2a405e9ac4521fe09148922':
  Fix HDoubleConstant::IsZero and HFloatConstant::IsZero.

8 years agoMerge "Fix HDoubleConstant::IsZero and HFloatConstant::IsZero."
Nicolas Geoffray [Wed, 16 Mar 2016 09:19:39 +0000 (09:19 +0000)]
Merge "Fix HDoubleConstant::IsZero and HFloatConstant::IsZero."

8 years agoMerge "Disable test."
Nicolas Geoffray [Tue, 15 Mar 2016 23:11:10 +0000 (23:11 +0000)]
Merge "Disable test."
am: 553ed05100

* commit '553ed05100f079203371da55e8a9d824b8e9948e':
  Disable test.

8 years agoMerge "Disable test."
Nicolas Geoffray [Tue, 15 Mar 2016 23:02:48 +0000 (23:02 +0000)]
Merge "Disable test."

8 years agoDisable test.
Nicolas Geoffray [Tue, 15 Mar 2016 23:01:33 +0000 (23:01 +0000)]
Disable test.

Change-Id: Id06de23646187967df3035ca423f4cd6c73cf0a7

8 years agoMerge "Assembly TLAB allocation fast path for arm64."
Hiroshi Yamauchi [Tue, 15 Mar 2016 20:02:48 +0000 (20:02 +0000)]
Merge "Assembly TLAB allocation fast path for arm64."
am: 877b18bcf4

* commit '877b18bcf4c6a69502b9a9b838dedd2528d3de40':
  Assembly TLAB allocation fast path for arm64.

8 years agoMerge "Assembly TLAB allocation fast path for arm64."
Hiroshi Yamauchi [Tue, 15 Mar 2016 19:56:24 +0000 (19:56 +0000)]
Merge "Assembly TLAB allocation fast path for arm64."

8 years agoAssembly TLAB allocation fast path for arm64.
Hiroshi Yamauchi [Thu, 10 Mar 2016 05:14:41 +0000 (21:14 -0800)]
Assembly TLAB allocation fast path for arm64.

This is the arm64 version of CL 187537.

Speedup (GSS GC with TLAB on N9):
        BinaryTrees:   591 ->  493 ms (-17%)
        MemAllocTest:  792 ->  755 ms (-5%)

Bug: 9986565

Change-Id: Icdad28cab0fd835679c640b7eae59b33ac2d6654

8 years agoMerge "ART: Fix shift simplification, x >>> 64."
Vladimir Marko [Tue, 15 Mar 2016 18:30:59 +0000 (18:30 +0000)]
Merge "ART: Fix shift simplification, x >>> 64."
am: 5942e53716

* commit '5942e537161a059ef1969a81db101876555cd77d':
  ART: Fix shift simplification, x >>> 64.

8 years agoMerge "ART: Fix shift simplification, x >>> 64."
Vladimir Marko [Tue, 15 Mar 2016 18:23:01 +0000 (18:23 +0000)]
Merge "ART: Fix shift simplification, x >>> 64."

8 years agoART: Fix shift simplification, x >>> 64.
Vladimir Marko [Tue, 15 Mar 2016 18:11:50 +0000 (18:11 +0000)]
ART: Fix shift simplification, x >>> 64.

Fix braino in
    https://android-review.googlesource.com/208199

Bug: 27638111
Change-Id: I8f12008af8bba943664c8a9eac3f2d2f7c820e79

8 years agoMerge "ART: Fix valgrind failure in image_test64."
Vladimir Marko [Tue, 15 Mar 2016 17:22:31 +0000 (17:22 +0000)]
Merge "ART: Fix valgrind failure in image_test64."
am: 12af36e091

* commit '12af36e09116dc677820f98e33ff2982e07d652a':
  ART: Fix valgrind failure in image_test64.

8 years agoMerge "ART: Fix valgrind failure in image_test64."
Vladimir Marko [Tue, 15 Mar 2016 17:03:18 +0000 (17:03 +0000)]
Merge "ART: Fix valgrind failure in image_test64."

8 years agoFix HDoubleConstant::IsZero and HFloatConstant::IsZero.
Nicolas Geoffray [Tue, 15 Mar 2016 16:23:04 +0000 (16:23 +0000)]
Fix HDoubleConstant::IsZero and HFloatConstant::IsZero.

bug:27639313
Change-Id: I2f30a65a07662dfce0a6d6f4ed356a8a0b3dcdef

8 years agoMerge "Optimizing: Improve shift simplification, x >>> 64."
Vladimir Marko [Tue, 15 Mar 2016 16:12:36 +0000 (16:12 +0000)]
Merge "Optimizing: Improve shift simplification, x >>> 64."
am: 6ce4766f13

* commit '6ce4766f13326bdf704b5205bfbda2c7dfbc72ae':
  Optimizing: Improve shift simplification, x >>> 64.

8 years agoMerge "Optimizing: Improve shift simplification, x >>> 64."
Vladimir Marko [Tue, 15 Mar 2016 16:06:03 +0000 (16:06 +0000)]
Merge "Optimizing: Improve shift simplification, x >>> 64."

8 years agoMerge "runtime: delete native/java_lang_Runtime.cc"
Narayan Kamath [Tue, 15 Mar 2016 15:46:06 +0000 (15:46 +0000)]
Merge "runtime: delete native/java_lang_Runtime.cc"
am: 706d2cd559

* commit '706d2cd55938075f4215e64dd1deeaf966a43316':
  runtime: delete native/java_lang_Runtime.cc

8 years agoMerge "runtime: delete native/java_lang_Runtime.cc"
Narayan Kamath [Tue, 15 Mar 2016 15:39:10 +0000 (15:39 +0000)]
Merge "runtime: delete native/java_lang_Runtime.cc"

8 years agoOptimizing: Improve shift simplification, x >>> 64.
Vladimir Marko [Tue, 15 Mar 2016 14:57:32 +0000 (14:57 +0000)]
Optimizing: Improve shift simplification, x >>> 64.

Simplify shifts by a multiple of bit size, not just 0.
ARM codegen does not expect to see such shifts and it
is guarding against them with a DCHECK().

Bug: 27638111
Change-Id: I3ae8383d7edefa0facd375ce511e7a226d5468a1

8 years agoruntime: delete native/java_lang_Runtime.cc
Narayan Kamath [Tue, 15 Mar 2016 14:47:29 +0000 (14:47 +0000)]
runtime: delete native/java_lang_Runtime.cc

We're now using Runtime.c from ojluni, which does the same set
of things via the JVM interface. This removes unnecessary duplication
of code between Runtime.cc and OpenJdkJvm.cc.

Also includes a few changes to JVM_NativeLoad to bring it in sync
with the version in Runtime.cc.

bug: 27387202
Change-Id: I92aac81d131661aca588e352aee7a167593e17d4

8 years agoMerge "Optimizing: Prevent potential valgrind error."
Vladimir Marko [Tue, 15 Mar 2016 13:35:35 +0000 (13:35 +0000)]
Merge "Optimizing: Prevent potential valgrind error."
am: 5681b6638b

* commit '5681b6638b0001c62d02795b0853e2e82787edf1':
  Optimizing: Prevent potential valgrind error.

8 years agoART: Fix valgrind failure in image_test64.
Vladimir Marko [Tue, 15 Mar 2016 12:41:27 +0000 (12:41 +0000)]
ART: Fix valgrind failure in image_test64.

Explicitly clear LengthPrefixedArray<ArtMethod> padding
in ImageWriter. This also removes a potential source of
non-deterministic data in compiled boot image.

Bug: 26687569
Bug: 27552451
Change-Id: Icf4bf34c9ea5b3159462760fbf556d287841191d

8 years agoMerge "Optimizing: Prevent potential valgrind error."
Vladimir Marko [Tue, 15 Mar 2016 13:23:38 +0000 (13:23 +0000)]
Merge "Optimizing: Prevent potential valgrind error."

8 years agoOptimizing: Prevent potential valgrind error.
Vladimir Marko [Tue, 15 Mar 2016 10:40:33 +0000 (10:40 +0000)]
Optimizing: Prevent potential valgrind error.

This CL preemptively extends the workaround from
    https://android-review.googlesource.com/208230
to an almost identical bit of code.

Bug: 27651442
Change-Id: I7683d42b46b16f2293916defc6ef1d871dc9af6c

8 years agoMerge "Optimizing: Fix valgrind error in image_test64."
Vladimir Marko [Tue, 15 Mar 2016 10:00:27 +0000 (10:00 +0000)]
Merge "Optimizing: Fix valgrind error in image_test64."
am: 51b7e2d08f

* commit '51b7e2d08f2bcf528eeec48b42c178b5550f6635':
  Optimizing: Fix valgrind error in image_test64.

8 years agoMerge "Optimizing: Fix valgrind error in image_test64."
Vladimir Marko [Tue, 15 Mar 2016 09:51:10 +0000 (09:51 +0000)]
Merge "Optimizing: Fix valgrind error in image_test64."

8 years agoMerge "Fix zygote handling of when secondary image is out of date."
Jeff Hao [Tue, 15 Mar 2016 02:49:24 +0000 (02:49 +0000)]
Merge "Fix zygote handling of when secondary image is out of date."
am: ea9aa3ff93

* commit 'ea9aa3ff937a6fdda0aa51df50b64b9ab7c22634':
  Fix zygote handling of when secondary image is out of date.

8 years agoMerge "Fixed bug in BCE, with regression test."
Aart Bik [Tue, 15 Mar 2016 02:49:23 +0000 (02:49 +0000)]
Merge "Fixed bug in BCE, with regression test."
am: 5ee830173b

* commit '5ee830173bd5d1de3e1e0581e405a910a3089e73':
  Fixed bug in BCE, with regression test.

8 years agoMerge "Fix zygote handling of when secondary image is out of date."
Jeff Hao [Tue, 15 Mar 2016 02:41:14 +0000 (02:41 +0000)]
Merge "Fix zygote handling of when secondary image is out of date."

8 years agoMerge "Fixed bug in BCE, with regression test."
Aart Bik [Tue, 15 Mar 2016 02:40:15 +0000 (02:40 +0000)]
Merge "Fixed bug in BCE, with regression test."

8 years agoFix zygote handling of when secondary image is out of date.
Jeff Hao [Tue, 15 Mar 2016 01:50:49 +0000 (18:50 -0700)]
Fix zygote handling of when secondary image is out of date.

Simple fix for case when primary image is current, but a secondary image
is out of date. Will want to do a cleaner fix in the future.

Bug: 27340451

(cherry-pick of commit b8510d2311964489342d8875ef7f5b681ba874b4)

Change-Id: Ia6db863e3d3c72120630bcbae8d399a78dda2710

8 years agoMerge "Add oatdump support for app images"
Mathieu Chartier [Tue, 15 Mar 2016 00:19:39 +0000 (00:19 +0000)]
Merge "Add oatdump support for app images"
am: d3c8fe76ad

* commit 'd3c8fe76adf3d1447067f2631e7d6ead139ed152':
  Add oatdump support for app images

8 years agoMerge "Add oatdump support for app images"
Mathieu Chartier [Tue, 15 Mar 2016 00:11:27 +0000 (00:11 +0000)]
Merge "Add oatdump support for app images"

8 years agoAdd oatdump support for app images
Mathieu Chartier [Wed, 9 Mar 2016 00:49:58 +0000 (16:49 -0800)]
Add oatdump support for app images

Example usage on host:
oatdumpd --app-oat=art/plus32.odex --app-image=art/plus32.art
--image=art/oats/system@framework@boot.art --instruction-set=arm

TODO: Add to oatdump test.

Bug: 27408512
Bug: 22858531

(cherry picked from commit bcb6a72569a1401b36a3ad3b6aa4d13e29966cf0)

Change-Id: I9d1aa7eaa16795e5fbabc6974d245849e16b1d03

8 years agoMerge "ART: Update dalvik-cache for zygote after OTA"
Andreas Gampe [Mon, 14 Mar 2016 23:45:14 +0000 (23:45 +0000)]
Merge "ART: Update dalvik-cache for zygote after OTA"
am: c3214fbb66  -s ours

* commit 'c3214fbb66b5f4c436c44d027df5046c803f6432':
  ART: Update dalvik-cache for zygote after OTA

8 years agoMerge "Add oatdump support for app images" into nyc-dev
Mathieu Chartier [Mon, 14 Mar 2016 23:40:31 +0000 (23:40 +0000)]
Merge "Add oatdump support for app images" into nyc-dev
am: bc20209fcd

* commit 'bc20209fcd8859fdade71fd1cc27cb8576d6da55':
  Add oatdump support for app images

8 years agoMerge "ART: Update dalvik-cache for zygote after OTA"
Andreas Gampe [Mon, 14 Mar 2016 23:37:15 +0000 (23:37 +0000)]
Merge "ART: Update dalvik-cache for zygote after OTA"

8 years agoART: Update dalvik-cache for zygote after OTA
Andreas Gampe [Sat, 21 Nov 2015 03:26:51 +0000 (19:26 -0800)]
ART: Update dalvik-cache for zygote after OTA

Detect OTA artifacts and move them over to the regular dalvik-cache
on boot.

Bug: 25612095

(cherry picked from commit 754479f7aa056602de8282f4f03718b42c20b89b)

Change-Id: I9a1a22641cc7833435098627a5cc6d954521c4ea

8 years agoMerge "Add oatdump support for app images" into nyc-dev
Mathieu Chartier [Mon, 14 Mar 2016 23:29:34 +0000 (23:29 +0000)]
Merge "Add oatdump support for app images" into nyc-dev

8 years agoFixed bug in BCE, with regression test.
Aart Bik [Mon, 14 Mar 2016 21:11:26 +0000 (14:11 -0700)]
Fixed bug in BCE, with regression test.

The fix is twofold:
(1) Ensure that bound checks are never eliminated more than once
    to guard against any conceivable situation in which the same
    bounds check appears multiple times in array length use list.
(2) Specially reject BoundsCheck(x,x) since that always goes OOB.

BUG=27628526

Change-Id: I399ec4254323e0cfcd0a68898f403cfab7b35135

8 years agoAdd oatdump support for app images
Mathieu Chartier [Wed, 9 Mar 2016 00:49:58 +0000 (16:49 -0800)]
Add oatdump support for app images

Example usage on host:
oatdumpd --app-oat=art/plus32.odex --app-image=art/plus32.art
--image=art/oats/system@framework@boot.art --instruction-set=arm

TODO: Add to oatdump test.

Bug: 27408512
Bug: 22858531

Change-Id: I320db8b76c780c6eadabcb45ce88f45950741484

8 years agoMerge "ART: Remember whether the cache was pruned" into nyc-dev
Andreas Gampe [Mon, 14 Mar 2016 21:29:01 +0000 (21:29 +0000)]
Merge "ART: Remember whether the cache was pruned" into nyc-dev
am: e7361ca06d

* commit 'e7361ca06da3209c5687731ac118f38d22d93ce7':
  ART: Remember whether the cache was pruned

8 years agoOptimizing: Fix valgrind error in image_test64.
Vladimir Marko [Mon, 14 Mar 2016 21:21:29 +0000 (21:21 +0000)]
Optimizing: Fix valgrind error in image_test64.

Bug: 27651442
Change-Id: Id9b80c6015dbc3b82966766ca4ad010be770f116

8 years agoMerge "ART: Remember whether the cache was pruned" into nyc-dev
Andreas Gampe [Mon, 14 Mar 2016 21:03:47 +0000 (21:03 +0000)]
Merge "ART: Remember whether the cache was pruned" into nyc-dev

8 years agoMerge "Do not include image header in decompressed size"
Mathieu Chartier [Mon, 14 Mar 2016 20:58:42 +0000 (20:58 +0000)]
Merge "Do not include image header in decompressed size"
am: 11ad252355

* commit '11ad2523557c35acfbf829aa203d14914e61884e':
  Do not include image header in decompressed size

8 years agoMerge "Do not include image header in decompressed size"
Mathieu Chartier [Mon, 14 Mar 2016 20:50:00 +0000 (20:50 +0000)]
Merge "Do not include image header in decompressed size"

8 years agoDo not include image header in decompressed size
Mathieu Chartier [Mon, 14 Mar 2016 18:02:59 +0000 (11:02 -0700)]
Do not include image header in decompressed size

Could cause a buffer overflow since we told LZ4 to decompress more
bytes than necessary.

Bug: 27561308

(cherry picked from commit 324eb2c6b049f1677133f0b708730e904c5e73ab)

Change-Id: I524c03b8f0e8a84814dbd8678285184e9d4da9f1

8 years agoMerge "Do not include image header in decompressed size" into nyc-dev
Mathieu Chartier [Mon, 14 Mar 2016 20:31:58 +0000 (20:31 +0000)]
Merge "Do not include image header in decompressed size" into nyc-dev
am: 3a1b33df0d

* commit '3a1b33df0df7db2b8685f8616b9240accd6a23c5':
  Do not include image header in decompressed size

8 years agoMerge "Do not include image header in decompressed size" into nyc-dev
Mathieu Chartier [Mon, 14 Mar 2016 20:28:30 +0000 (20:28 +0000)]
Merge "Do not include image header in decompressed size" into nyc-dev

8 years agoDo not include image header in decompressed size
Mathieu Chartier [Mon, 14 Mar 2016 18:02:59 +0000 (11:02 -0700)]
Do not include image header in decompressed size

Could cause a buffer overflow since we told LZ4 to decompress more
bytes than necessary.

Bug: 27561308
Change-Id: Ic938f3e67f8c0627f203ad7261d4342ce43157cd

8 years agoMerge "Fix cases where we miss instrumentation changes"
Mathieu Chartier [Mon, 14 Mar 2016 20:21:33 +0000 (20:21 +0000)]
Merge "Fix cases where we miss instrumentation changes"
am: 1b876790ec

* commit '1b876790ec3e9801ef40fa26630ca925f319956c':
  Fix cases where we miss instrumentation changes

8 years agoMerge "Fix cases where we miss instrumentation changes"
Mathieu Chartier [Mon, 14 Mar 2016 20:14:30 +0000 (20:14 +0000)]
Merge "Fix cases where we miss instrumentation changes"

8 years agoFix cases where we miss instrumentation changes
Mathieu Chartier [Sat, 12 Mar 2016 01:22:23 +0000 (17:22 -0800)]
Fix cases where we miss instrumentation changes

Moved allocation stack push to after we record the allocation since
it can cause thread suspension.

Added handling in entrypoint utils for thread suspension cases.

Keep the AllocRecordObjectMap around since we do not want to delete
it if there are any threads waiting on new_record_condition_. The
condition guards adding stack traces while the GC is running. If we
delete the map and there are still waiters that did not resume, it
caused a CHECK failure. This could happen in cases where one thread
disables allocation tracking while other threads are about to
resume from the condition.

Bug: 27506909

(cherry picked from commit 0f394021d6abfdf9ebea6c7f405ec936a812ea62)

Change-Id: I1dc51e9f000684b4032b57beab59d317ece26f06

8 years agoMerge "Don\'t be so agressive in quering the code cache for new methods" into nyc-dev
Calin Juravle [Mon, 14 Mar 2016 19:39:26 +0000 (19:39 +0000)]
Merge "Don\'t be so agressive in quering the code cache for new methods" into nyc-dev
am: 04bca8a8c4

* commit '04bca8a8c47600bf1f5f5eff1e347a72d118ab04':
  Don't be so agressive in quering the code cache for new methods

8 years agoMerge "Don't be so agressive in quering the code cache for new methods" into nyc-dev
Calin Juravle [Mon, 14 Mar 2016 19:30:07 +0000 (19:30 +0000)]
Merge "Don't be so agressive in quering the code cache for new methods" into nyc-dev

8 years agoDon't be so agressive in quering the code cache for new methods
Calin Juravle [Mon, 14 Mar 2016 17:32:49 +0000 (17:32 +0000)]
Don't be so agressive in quering the code cache for new methods

Interim fix for apps which JIT a lot and trigger a lot of I/O because of
profile data (e.g. gmscore).

This reduces the amount of data re-written to disk by a few order of
magnitude. (e.g. 43k instead of 3.5MB)

Proper fix which will make the writing smarter is coming.

Bug:27600652
Change-Id: I7582bfab9abee6efebfe99da6979f7e118f82915

8 years agoMerge "Optimizing: Fix TypeConversion(And(x, const)) simplification."
Vladimir Marko [Mon, 14 Mar 2016 19:20:38 +0000 (19:20 +0000)]
Merge "Optimizing: Fix TypeConversion(And(x, const)) simplification."
am: 0b2c1922cc

* commit '0b2c1922cc29a7939f747f60d80240a9fb22547c':
  Optimizing: Fix TypeConversion(And(x, const)) simplification.

8 years agoMerge "Optimizing: Fix TypeConversion(And(x, const)) simplification."
Vladimir Marko [Mon, 14 Mar 2016 19:13:14 +0000 (19:13 +0000)]
Merge "Optimizing: Fix TypeConversion(And(x, const)) simplification."

8 years agoOptimizing: Fix TypeConversion(And(x, const)) simplification.
Vladimir Marko [Mon, 14 Mar 2016 18:00:05 +0000 (18:00 +0000)]
Optimizing: Fix TypeConversion(And(x, const)) simplification.

Avoid introducing implicit conversions when simplifying the
expression TypeConversion(And(x, const)). Previously, when
we dropped the And, we could end up with a TypeConversion to
the same type which should be eliminated on subsequent pass
of the block's instructions; however, a subsequent dependent
TypeConversion in the same block would be processed earlier
and we would unexpectedly see its input as the conversion to
the same type, failing a DCHECK().

Bug: 27626509
Change-Id: I5874a9ceafbf635cf3391beea807ede8468ab5c3

8 years agoMerge "Clean up the valgrind test targets."
Hiroshi Yamauchi [Mon, 14 Mar 2016 18:59:29 +0000 (18:59 +0000)]
Merge "Clean up the valgrind test targets."
am: de83659474

* commit 'de836594741c8547afb2a680e1d442dcc27cfbe5':
  Clean up the valgrind test targets.

8 years agoMerge "Clean up the valgrind test targets."
Hiroshi Yamauchi [Mon, 14 Mar 2016 18:47:50 +0000 (18:47 +0000)]
Merge "Clean up the valgrind test targets."

8 years agoMerge "Fix cases where we miss instrumentation changes" into nyc-dev
Mathieu Chartier [Mon, 14 Mar 2016 18:44:57 +0000 (18:44 +0000)]
Merge "Fix cases where we miss instrumentation changes" into nyc-dev
am: dd6558da4b

* commit 'dd6558da4bbd11a430268bff7d886b7fcb071dc4':
  Fix cases where we miss instrumentation changes

8 years agoMerge "Fix cases where we miss instrumentation changes" into nyc-dev
Mathieu Chartier [Mon, 14 Mar 2016 18:33:43 +0000 (18:33 +0000)]
Merge "Fix cases where we miss instrumentation changes" into nyc-dev

8 years agoClean up the valgrind test targets.
Hiroshi Yamauchi [Mon, 14 Mar 2016 18:18:36 +0000 (11:18 -0700)]
Clean up the valgrind test targets.

Allow the 32-bit or the 64-bit valgrind tests to run separately or both.

Bug: 27156726
Change-Id: Ib439eb2f57d3302be152cb5af1a8960a41725f31

8 years agoMerge "Optimizing: Do not re-record standby checks for dynamic BCE."
Vladimir Marko [Mon, 14 Mar 2016 18:12:22 +0000 (18:12 +0000)]
Merge "Optimizing: Do not re-record standby checks for dynamic BCE."
am: 70bc6de7e2

* commit '70bc6de7e27dd7d82a2bac6685e0f3096df07b83':
  Optimizing: Do not re-record standby checks for dynamic BCE.

8 years agoART: Check alignment of section offsets
Andreas Gampe [Mon, 14 Mar 2016 18:10:14 +0000 (18:10 +0000)]
ART: Check alignment of section offsets
am: 3a52b22cf7

* commit '3a52b22cf71446dd47cc1a2775dd0aabbf5e96f7':
  ART: Check alignment of section offsets

8 years agoART: Remember whether the cache was pruned
Andreas Gampe [Sat, 12 Mar 2016 01:44:04 +0000 (17:44 -0800)]
ART: Remember whether the cache was pruned

Remember (and expose) whether the cache was pruned when initializing
the runtime.

Bug: 27618311
Change-Id: I178d18d731a9dce5cb11ed0874c9c9c9d36d7d8e

8 years agoMerge "Optimizing: Do not re-record standby checks for dynamic BCE."
Vladimir Marko [Mon, 14 Mar 2016 17:42:19 +0000 (17:42 +0000)]
Merge "Optimizing: Do not re-record standby checks for dynamic BCE."

8 years agoFix cases where we miss instrumentation changes
Mathieu Chartier [Sat, 12 Mar 2016 01:22:23 +0000 (17:22 -0800)]
Fix cases where we miss instrumentation changes

Moved allocation stack push to after we record the allocation since
it can cause thread suspension.

Added handling in entrypoint utils for thread suspension cases.

Keep the AllocRecordObjectMap around since we do not want to delete
it if there are any threads waiting on new_record_condition_. The
condition guards adding stack traces while the GC is running. If we
delete the map and there are still waiters that did not resume, it
caused a CHECK failure. This could happen in cases where one thread
disables allocation tracking while other threads are about to
resume from the condition.

Bug: 27506909
Change-Id: I097689ca35ad408121c6b8dabd28e75cce1a43a0

8 years agoMerge "Revert "Enable compilation of secondary dex files""
Nicolas Geoffray [Mon, 14 Mar 2016 16:03:06 +0000 (16:03 +0000)]
Merge "Revert "Enable compilation of secondary dex files""
am: e70cda6147

* commit 'e70cda6147e2e49384a219b167a6c734a8db28f5':
  Revert "Enable compilation of secondary dex files"

8 years agoMerge "Revert "Enable compilation of secondary dex files""
Nicolas Geoffray [Mon, 14 Mar 2016 15:54:54 +0000 (15:54 +0000)]
Merge "Revert "Enable compilation of secondary dex files""

8 years agoRevert "Enable compilation of secondary dex files"
Nicolas Geoffray [Mon, 14 Mar 2016 15:54:39 +0000 (15:54 +0000)]
Revert "Enable compilation of secondary dex files"

Reverting until we fix the buildbot failures on jdwp and libcore.

Bug: 26719109

This reverts commit 770b39eb564ec16c672ace83515535b055edb2b1.

Change-Id: Ifba366d2ddc9311737b6ea29c007475a40cc803f

8 years agoMerge "ART: Check alignment of section offsets"
Andreas Gampe [Mon, 14 Mar 2016 15:46:35 +0000 (15:46 +0000)]
Merge "ART: Check alignment of section offsets"
am: 14cc147fbd

* commit '14cc147fbd09d5ef0ba5c724a7287ac6770ae330':
  ART: Check alignment of section offsets

8 years agoART: Check alignment of section offsets
Andreas Gampe [Sat, 20 Feb 2016 03:45:34 +0000 (19:45 -0800)]
ART: Check alignment of section offsets

Make sure the sections mentioned in the header are aligned according
to the Dalvik File Format specification.

Ensure the same for annotations.

Bug: 27275385
Bug: https://code.google.com/p/android/issues/detail?id=201384

(cherry picked from commit b512c0e5da0767d00a0ee9b7201668ab9977e21b)

Change-Id: Ifdd98377f8468e78c1c2198223ad58cab302dd37

8 years agoMerge "ART: Check alignment of section offsets"
Andreas Gampe [Mon, 14 Mar 2016 15:39:01 +0000 (15:39 +0000)]
Merge "ART: Check alignment of section offsets"

8 years agoMerge "Add symbolizer option to generate debug information only."
David Srbecky [Mon, 14 Mar 2016 14:27:10 +0000 (14:27 +0000)]
Merge "Add symbolizer option to generate debug information only."
am: fbc61e1957

* commit 'fbc61e19578d281d05728bcd120e1ace57c2fbd8':
  Add symbolizer option to generate debug information only.

8 years agoMerge "Add symbolizer option to generate debug information only."
David Srbecky [Mon, 14 Mar 2016 14:19:40 +0000 (14:19 +0000)]
Merge "Add symbolizer option to generate debug information only."

8 years agoMerge "Ignore empty maps when emitting DWARF variable locations."
David Srbecky [Mon, 14 Mar 2016 14:18:36 +0000 (14:18 +0000)]
Merge "Ignore empty maps when emitting DWARF variable locations."
am: 7f77eb4858

* commit '7f77eb485810a64cde897933677d9a0e44588647':
  Ignore empty maps when emitting DWARF variable locations.

8 years agoMerge "Ignore empty maps when emitting DWARF variable locations."
David Srbecky [Mon, 14 Mar 2016 14:10:24 +0000 (14:10 +0000)]
Merge "Ignore empty maps when emitting DWARF variable locations."

8 years agoOptimizing: Do not re-record standby checks for dynamic BCE.
Vladimir Marko [Mon, 14 Mar 2016 13:56:02 +0000 (13:56 +0000)]
Optimizing: Do not re-record standby checks for dynamic BCE.

Adding the checks to the standby vector invalidates the
vector storage used by range-based loop in the
BCEVisitor::Finish() as exposed by valgrind in image_test.

Bug: 27597089
Change-Id: Ib0f0e8cdfdb7211a64a26836e085cb99fb2ce8b8

8 years agoMerge remote-tracking branch \'goog/master\' into nyc-dev
Stephen Hines [Mon, 14 Mar 2016 12:16:40 +0000 (12:16 +0000)]
Merge remote-tracking branch \'goog/master\' into nyc-dev
am: 6ec2c6e54d

* commit '6ec2c6e54d301ef84ec0c064c310a153b9465aed':

8 years agoMerge "Enable compilation of secondary dex files"
Calin Juravle [Mon, 14 Mar 2016 11:44:14 +0000 (11:44 +0000)]
Merge "Enable compilation of secondary dex files"
am: fb8932eec4

* commit 'fb8932eec4c09c34dfe759ba151e751293245c0d':
  Enable compilation of secondary dex files

8 years agoMerge "Enable compilation of secondary dex files"
Calin Juravle [Mon, 14 Mar 2016 11:38:24 +0000 (11:38 +0000)]
Merge "Enable compilation of secondary dex files"

8 years agoMerge "Revert "Re-enable test that was causing TimeoutExceptions on ARM64.""
Roland Levillain [Mon, 14 Mar 2016 10:23:22 +0000 (10:23 +0000)]
Merge "Revert "Re-enable test that was causing TimeoutExceptions on ARM64.""
am: 971c69db91

* commit '971c69db916d66096dccd481df621cee7147d20c':
  Revert "Re-enable test that was causing TimeoutExceptions on ARM64."

8 years agoMerge "Revert "Re-enable test that was causing TimeoutExceptions on ARM64.""
Roland Levillain [Mon, 14 Mar 2016 10:18:29 +0000 (10:18 +0000)]
Merge "Revert "Re-enable test that was causing TimeoutExceptions on ARM64.""

8 years agoMerge remote-tracking branch 'goog/master' into nyc-dev
Nicolas Geoffray [Mon, 14 Mar 2016 08:52:56 +0000 (08:52 +0000)]
Merge remote-tracking branch 'goog/master' into nyc-dev

bug:27398183
bug:26846185
bug:27424509

8 years agoIgnore empty maps when emitting DWARF variable locations.
David Srbecky [Sat, 12 Mar 2016 21:10:04 +0000 (21:10 +0000)]
Ignore empty maps when emitting DWARF variable locations.

This is rewrite of https://android-review.googlesource.com/#/c/202115

The aim in both cases is to avoid gaps in generated locations.
(which helps to keep the size of the generated DWARF down).

However, the previous CL was a bit too eager with extending of
variable scope and reporting locations. We might have reported
variable in scope when in fact, it was not.

This CL implements simpler solution by just filtering stackmaps
without dex register maps at first opportunity. This should
ensure that locations for breakpoint locations are completely
accurate as originally intended.

Change-Id: I98378716c0ef5ef46b12181502904621eb6ecf2f

8 years agoRevert "Re-enable test that was causing TimeoutExceptions on ARM64."
Roland Levillain [Sat, 12 Mar 2016 13:42:33 +0000 (13:42 +0000)]
Revert "Re-enable test that was causing TimeoutExceptions on ARM64."

The test is failing again on the ARMv8 concurrent collector
configuration
(https://build.chromium.org/p/client.art/builders/armv8-concurrent-collector/builds/1833/steps/test%20libcore/logs/stdio).

This reverts commit 9e9411cc6edf5fa8be0cabd11203fac09e4bac13.

Bug: 26155567
Change-Id: I81b543a48cbbc1eca99efcc430965222ca6edfec

8 years agoEnable clang for ARM builds.
Stephen Hines [Sat, 12 Mar 2016 01:06:06 +0000 (01:06 +0000)]
Enable clang for ARM builds.
am: 48c3ce6733

* commit '48c3ce6733efbc545605b1bfe2ddbdf95a04edf3':
  Enable clang for ARM builds.

8 years agoART: Allow unwinding unattached threads
Andreas Gampe [Sat, 12 Mar 2016 00:07:46 +0000 (00:07 +0000)]
ART: Allow unwinding unattached threads
am: b9d4f99977

* commit 'b9d4f999773754ab4e84496edf60af60b05119de':
  ART: Allow unwinding unattached threads

8 years agoMerge "ART: mterp arm/arm64 cleanup"
buzbee [Fri, 11 Mar 2016 23:13:56 +0000 (23:13 +0000)]
Merge "ART: mterp arm/arm64 cleanup"
am: e717e2c2c4

* commit 'e717e2c2c436da1d6daa572bd3142e34aef25b1c':
  ART: mterp arm/arm64 cleanup

8 years agoMerge "ART: mterp arm/arm64 cleanup"
Bill Buzbee [Fri, 11 Mar 2016 23:05:59 +0000 (23:05 +0000)]
Merge "ART: mterp arm/arm64 cleanup"

8 years agoEnable clang for ARM builds.
Stephen Hines [Thu, 3 Mar 2016 02:26:29 +0000 (18:26 -0800)]
Enable clang for ARM builds.

Bug: http://b/25130937

We disable the integrated assembler for the ARM interpreter because
Clang can't handle the syntax present.

(cherry picked from commit a388c5a6291dbfb9a8366181a752050f4898d4ff)

Change-Id: Iefd5ba922eec54a2167e8a057c459b289aaf2ef3

8 years agoART: mterp arm/arm64 cleanup
buzbee [Fri, 11 Mar 2016 17:51:11 +0000 (09:51 -0800)]
ART: mterp arm/arm64 cleanup

Assembly code cleanup in response to comments from already-submitted
CL: https://android-review.googlesource.com/#/c/188977/

Change-Id: I0ea85c5759a08cb50ef3e97dc5cf79b3ba041640

8 years agoMerge "Enable clang for ARM builds."
Stephen Hines [Fri, 11 Mar 2016 21:27:36 +0000 (21:27 +0000)]
Merge "Enable clang for ARM builds."
am: 2f74be0856

* commit '2f74be0856b56942614ec65896853a58a37b7aff':
  Enable clang for ARM builds.

8 years agoMerge "Assembly region TLAB allocation fast path for arm."
Hiroshi Yamauchi [Fri, 11 Mar 2016 21:27:36 +0000 (21:27 +0000)]
Merge "Assembly region TLAB allocation fast path for arm."
am: 91cdf71e16

* commit '91cdf71e166630eb5e28e02298b0ba6ed4037553':
  Assembly region TLAB allocation fast path for arm.

8 years agoMerge "Enable clang for ARM builds."
Stephen Hines [Fri, 11 Mar 2016 21:19:48 +0000 (21:19 +0000)]
Merge "Enable clang for ARM builds."

8 years agoMerge "Assembly region TLAB allocation fast path for arm."
Hiroshi Yamauchi [Fri, 11 Mar 2016 21:18:21 +0000 (21:18 +0000)]
Merge "Assembly region TLAB allocation fast path for arm."

8 years agoAssembly region TLAB allocation fast path for arm.
Hiroshi Yamauchi [Wed, 24 Feb 2016 20:51:18 +0000 (12:51 -0800)]
Assembly region TLAB allocation fast path for arm.

This is for the CC collector.

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

Speedup (on N5):
        BinaryTrees:  2291 ->  902 ms (-60%)
        MemAllocTest: 2137 -> 1845 ms (-14%)

Bug: 9986565
Bug: 12687968

Change-Id: Ica63094ec2f85eaa4fd04d202a20090399275d85

8 years agoMerge "ART: Allow unwinding unattached threads"
Andreas Gampe [Fri, 11 Mar 2016 20:22:27 +0000 (20:22 +0000)]
Merge "ART: Allow unwinding unattached threads"
am: 43bad209f9

* commit '43bad209f99df82412dadab5e3b735bb12d257ab':
  ART: Allow unwinding unattached threads