OSDN Git Service

android-x86/art.git
9 years agoam 39dc3759: Merge "Emit method name at invokes in the graph visualizer."
Nicolas Geoffray [Wed, 1 Jul 2015 13:01:51 +0000 (13:01 +0000)]
am 39dc3759: Merge "Emit method name at invokes in the graph visualizer."

* commit '39dc3759fa9a32da145e8823430d16a6a5acaba6':
  Emit method name at invokes in the graph visualizer.

9 years agoMerge "Emit method name at invokes in the graph visualizer."
Nicolas Geoffray [Wed, 1 Jul 2015 12:50:28 +0000 (12:50 +0000)]
Merge "Emit method name at invokes in the graph visualizer."

9 years agoam 8406b313: Merge "Properly delete temp files during run-test"
Sebastien Hertz [Wed, 1 Jul 2015 12:21:46 +0000 (12:21 +0000)]
am 8406b313: Merge "Properly delete temp files during run-test"

* commit '8406b3131e186ce75644f589b3b53eca375cd611':
  Properly delete temp files during run-test

9 years agoMerge "Properly delete temp files during run-test"
Sebastien Hertz [Wed, 1 Jul 2015 12:14:44 +0000 (12:14 +0000)]
Merge "Properly delete temp files during run-test"

9 years agoam 436cbc5e: Merge "Fix a MOV instruction in Optimizing\'s x86-64 code generator."
Roland Levillain [Wed, 1 Jul 2015 12:11:02 +0000 (12:11 +0000)]
am 436cbc5e: Merge "Fix a MOV instruction in Optimizing\'s x86-64 code generator."

* commit '436cbc5e4c360962275713f3d2649ff7be88aaa4':
  Fix a MOV instruction in Optimizing's x86-64 code generator.

9 years agoEmit method name at invokes in the graph visualizer.
Nicolas Geoffray [Wed, 1 Jul 2015 12:00:15 +0000 (13:00 +0100)]
Emit method name at invokes in the graph visualizer.

Change-Id: I832f823463569724fca9c38cd70d9dd552f15b3a

9 years agoMerge "Fix a MOV instruction in Optimizing's x86-64 code generator."
Roland Levillain [Wed, 1 Jul 2015 11:58:21 +0000 (11:58 +0000)]
Merge "Fix a MOV instruction in Optimizing's x86-64 code generator."

9 years agoam c7657e93: Merge "Use CompareAndBranchIf(Non)Zero when applicable."
Nicolas Geoffray [Wed, 1 Jul 2015 11:56:44 +0000 (11:56 +0000)]
am c7657e93: Merge "Use CompareAndBranchIf(Non)Zero when applicable."

* commit 'c7657e93b6b045eaff18190b8133361652bf8c1c':
  Use CompareAndBranchIf(Non)Zero when applicable.

9 years agoFix a MOV instruction in Optimizing's x86-64 code generator.
Roland Levillain [Wed, 1 Jul 2015 11:47:25 +0000 (12:47 +0100)]
Fix a MOV instruction in Optimizing's x86-64 code generator.

Use `movl' instead of `movw' to store a 32-bit immediate
(integer or reference) into a field.

Also fix art::Location::RegisterOrInt32LongConstant to
properly handle non-long constants.

Change-Id: I34c6ec8eaa1632822a31969f87c9c2d6c5b96326

9 years agoMerge "Use CompareAndBranchIf(Non)Zero when applicable."
Nicolas Geoffray [Wed, 1 Jul 2015 11:46:48 +0000 (11:46 +0000)]
Merge "Use CompareAndBranchIf(Non)Zero when applicable."

9 years agoUse CompareAndBranchIf(Non)Zero when applicable.
Nicolas Geoffray [Wed, 1 Jul 2015 11:22:56 +0000 (12:22 +0100)]
Use CompareAndBranchIf(Non)Zero when applicable.

Now that we relocate branches, we can try make more use of cbz/cbnz.

Change-Id: I93ca64107f34eb3c43f2e7102ea90453113dad7a

9 years agoam 2b252dc1: Merge "Quick: Fix a DCHECK to take type conflicts into account."
Andreas Gampe [Wed, 1 Jul 2015 05:30:34 +0000 (05:30 +0000)]
am 2b252dc1: Merge "Quick: Fix a DCHECK to take type conflicts into account."

* commit '2b252dc15995a708aead33aab6d307205d860a88':
  Quick: Fix a DCHECK to take type conflicts into account.

9 years agoam 39602104: Merge "ART: Symbolize all oat files in /data folder."
Andreas Gampe [Wed, 1 Jul 2015 05:18:32 +0000 (05:18 +0000)]
am 39602104: Merge "ART: Symbolize all oat files in /data folder."

* commit '396021047892e5976051e9cb86ee38943a9102d3':
  ART: Symbolize all oat files in /data folder.

9 years agoMerge "Quick: Fix a DCHECK to take type conflicts into account."
Andreas Gampe [Wed, 1 Jul 2015 05:17:24 +0000 (05:17 +0000)]
Merge "Quick: Fix a DCHECK to take type conflicts into account."

9 years agoMerge "ART: Symbolize all oat files in /data folder."
Andreas Gampe [Wed, 1 Jul 2015 05:06:20 +0000 (05:06 +0000)]
Merge "ART: Symbolize all oat files in /data folder."

9 years agoART: Symbolize all oat files in /data folder.
Zheng Xu [Tue, 21 Apr 2015 09:35:25 +0000 (17:35 +0800)]
ART: Symbolize all oat files in /data folder.

Now we store oat files not only in /data/dalvik-cache, but also in
other places. This patch tries to pull all oat files from device
/data folder.

Change-Id: Icf81cf28c29da2e248e4fbd84f5920f46ddc4cd6

9 years agoam 371496da: Merge "Explicitly link libz-host to libart."
Evgenii Stepanov [Tue, 30 Jun 2015 22:30:05 +0000 (22:30 +0000)]
am 371496da: Merge "Explicitly link libz-host to libart."

* commit '371496daf03921c0c3ade8bc20b33b6454d8d495':
  Explicitly link libz-host to libart.

9 years agoMerge "Explicitly link libz-host to libart."
Evgenii Stepanov [Tue, 30 Jun 2015 22:19:13 +0000 (22:19 +0000)]
Merge "Explicitly link libz-host to libart."

9 years agoam 053df00e: Merge "ART: Remove bad FindSymbol call"
Andreas Gampe [Tue, 30 Jun 2015 21:30:00 +0000 (21:30 +0000)]
am 053df00e: Merge "ART: Remove bad FindSymbol call"

* commit '053df00e1d27e658f016f4ff6d5a822861555e6a':
  ART: Remove bad FindSymbol call

9 years agoMerge "ART: Remove bad FindSymbol call"
Andreas Gampe [Tue, 30 Jun 2015 21:10:50 +0000 (21:10 +0000)]
Merge "ART: Remove bad FindSymbol call"

9 years agoART: Remove bad FindSymbol call
Andreas Gampe [Tue, 30 Jun 2015 18:23:44 +0000 (11:23 -0700)]
ART: Remove bad FindSymbol call

The removed call is superfluous under normal operation and harmful
when running a native-bridged library.

Bug: 22194296
Bug: https://code.google.com/p/android-developer-preview/issues/detail?id=2367
Change-Id: I3eb8f435a6a974a3e87a370b254ba8752f2a59b3

9 years agoam edf9daf3: Merge "ART: Unlink target oat file before compiling"
Andreas Gampe [Tue, 30 Jun 2015 17:50:39 +0000 (17:50 +0000)]
am edf9daf3: Merge "ART: Unlink target oat file before compiling"

* commit 'edf9daf30d87ba37a91782d4904a452cce75fc90':
  ART: Unlink target oat file before compiling

9 years agoam d3af3480: Merge "Change ART_TEST_GC_STRESS to use new gcstress mode"
Andreas Gampe [Tue, 30 Jun 2015 17:50:38 +0000 (17:50 +0000)]
am d3af3480: Merge "Change ART_TEST_GC_STRESS to use new gcstress mode"

* commit 'd3af34808d938bf4fb3ec95bfe0d4fa440ccdb95':
  Change ART_TEST_GC_STRESS to use new gcstress mode

9 years agoam 915e9e0e: Merge "ART: Fix test 036-finalizer"
Andreas Gampe [Tue, 30 Jun 2015 17:50:37 +0000 (17:50 +0000)]
am 915e9e0e: Merge "ART: Fix test 036-finalizer"

* commit '915e9e0e4fa23e55962f5e7814041f7bc2b1f331':
  ART: Fix test 036-finalizer

9 years agoMerge "ART: Unlink target oat file before compiling"
Andreas Gampe [Tue, 30 Jun 2015 17:44:01 +0000 (17:44 +0000)]
Merge "ART: Unlink target oat file before compiling"

9 years agoMerge "Change ART_TEST_GC_STRESS to use new gcstress mode"
Andreas Gampe [Tue, 30 Jun 2015 17:42:23 +0000 (17:42 +0000)]
Merge "Change ART_TEST_GC_STRESS to use new gcstress mode"

9 years agoChange ART_TEST_GC_STRESS to use new gcstress mode
Mathieu Chartier [Sat, 27 Jun 2015 22:42:27 +0000 (15:42 -0700)]
Change ART_TEST_GC_STRESS to use new gcstress mode

Enable new gcstress mode that checks at each allocation site
(with some tracking of stack traces to only do one check per
unique site).

Disable 137-cfi for gcstress, as it's sleeping to "synchronize"
with a forked process, which doesn't work with the slower mode.

Bug: 22014525
Change-Id: Ife70308e45b04f5d97267b4d98f8c75fa96492a1

9 years agoMerge "ART: Fix test 036-finalizer"
Andreas Gampe [Tue, 30 Jun 2015 17:37:26 +0000 (17:37 +0000)]
Merge "ART: Fix test 036-finalizer"

9 years agoART: Fix test 036-finalizer
Mathieu Chartier [Sat, 27 Jun 2015 22:42:27 +0000 (15:42 -0700)]
ART: Fix test 036-finalizer

Need to fix bug in test 036 where some allocation sites could cause
GC to run which caused the test to fail due to a weak reference
getting cleared. This change is required for the new GCSTRESS mode.

Bug: 22014525
Change-Id: I8099d2f03bc2f14f4ca6d49133f0d17d8aa49a7b

9 years agoART: Unlink target oat file before compiling
Andreas Gampe [Sat, 27 Jun 2015 01:58:42 +0000 (18:58 -0700)]
ART: Unlink target oat file before compiling

Dex2oat must create a new file (new inode) when writing to a target
given by name, as the existing file may be in use. So unlink any
existing file first.

Bug: 22047255

(cherry picked from commit 52f0aeb8e9f16fa5c3067f6a36be701354448924)

Change-Id: Ief942c71564076e39c1e8340d5c4c55286f75896

9 years agoam 6d6b30e5: Merge "Make compiler-related gtests honor ART_USE_OPTIMIZING_COMPILER."
Roland Levillain [Tue, 30 Jun 2015 15:15:37 +0000 (15:15 +0000)]
am 6d6b30e5: Merge "Make compiler-related gtests honor ART_USE_OPTIMIZING_COMPILER."

* commit '6d6b30e57bc00d701c92d830ce47f2ee9c20ef00':
  Make compiler-related gtests honor ART_USE_OPTIMIZING_COMPILER.

9 years agoMerge "Make compiler-related gtests honor ART_USE_OPTIMIZING_COMPILER."
Roland Levillain [Tue, 30 Jun 2015 15:05:03 +0000 (15:05 +0000)]
Merge "Make compiler-related gtests honor ART_USE_OPTIMIZING_COMPILER."

9 years agoMake compiler-related gtests honor ART_USE_OPTIMIZING_COMPILER.
Roland Levillain [Tue, 30 Jun 2015 13:16:48 +0000 (14:16 +0100)]
Make compiler-related gtests honor ART_USE_OPTIMIZING_COMPILER.

Previously, gtests using the art::CommonCompilerTest
class were using Quick as compiler.  Now, setting the
environment variable ART_USE_OPTIMIZING_COMPILER to `true`
before building and running these tests will use Optimizing
instead.

Change-Id: I724a3215d2eb1841089745fbabb5cb58b0422ef3

9 years agoProperly delete temp files during run-test
Sebastien Hertz [Tue, 30 Jun 2015 11:57:39 +0000 (13:57 +0200)]
Properly delete temp files during run-test

Bug: 22190679
Change-Id: Ic5cb98d296df924d9ee724c757c526ad70744612

9 years agoExplicitly link libz-host to libart.
Evgenii Stepanov [Mon, 29 Jun 2015 23:23:34 +0000 (16:23 -0700)]
Explicitly link libz-host to libart.

A change in system/core/libziparchive will make libziparchive-host
depend on libz-host as a shared library instead of a static library.
As a result, only on MacOS, libziparchive-host will stop re-exporting
libz-host interface. Libart uses both and must link both.

Change-Id: Ie4ae9b27903cbcbdb2d2043969a7fceba32249be

9 years agoam 3b0667c1: Merge "ART: Fix CFI annotation for art_quick_aput_obj"
Andreas Gampe [Mon, 29 Jun 2015 21:09:36 +0000 (21:09 +0000)]
am 3b0667c1: Merge "ART: Fix CFI annotation for art_quick_aput_obj"

* commit '3b0667c1d68ba88c71b031757b757dca659afd69':
  ART: Fix CFI annotation for art_quick_aput_obj

9 years agoMerge "ART: Fix CFI annotation for art_quick_aput_obj"
Andreas Gampe [Mon, 29 Jun 2015 21:01:14 +0000 (21:01 +0000)]
Merge "ART: Fix CFI annotation for art_quick_aput_obj"

9 years agoam b508ccd8: Merge "Rename ZipEntryName to ZipString"
Yusuke Sato [Mon, 29 Jun 2015 18:01:07 +0000 (18:01 +0000)]
am b508ccd8: Merge "Rename ZipEntryName to ZipString"

* commit 'b508ccd83e76de16e9d19e8cb010b41a1651556a':
  Rename ZipEntryName to ZipString

9 years agoMerge "Rename ZipEntryName to ZipString"
Yusuke Sato [Mon, 29 Jun 2015 17:49:28 +0000 (17:49 +0000)]
Merge "Rename ZipEntryName to ZipString"

9 years agoART: Fix CFI annotation for art_quick_aput_obj
Mathieu Chartier [Sat, 27 Jun 2015 22:42:27 +0000 (15:42 -0700)]
ART: Fix CFI annotation for art_quick_aput_obj

Fix the CFI state after an early return.

Bug: 22014525
Change-Id: I56b9ba8cf8c47d70a642f064e59c7e04a476dd2f

9 years agoam 806af26f: Merge "Do not replace a live phi with a dead phi."
Nicolas Geoffray [Mon, 29 Jun 2015 14:17:05 +0000 (14:17 +0000)]
am 806af26f: Merge "Do not replace a live phi with a dead phi."

* commit '806af26f1a8f107cb4f4430ceec8dc9f360f3795':
  Do not replace a live phi with a dead phi.

9 years agoMerge "Do not replace a live phi with a dead phi."
Nicolas Geoffray [Mon, 29 Jun 2015 14:03:00 +0000 (14:03 +0000)]
Merge "Do not replace a live phi with a dead phi."

9 years agoDo not replace a live phi with a dead phi.
Nicolas Geoffray [Mon, 29 Jun 2015 13:34:46 +0000 (14:34 +0100)]
Do not replace a live phi with a dead phi.

A dead phi is not properly typed. Therefore, always use the live phi
equivalent instead.

bug:21865466
Change-Id: Id5e26ae4062cc18f5532d5b95cc024480652d5b2

9 years agoam f91d27c9: Merge "Revert "Revert "Do not update the type of something we already...
Nicolas Geoffray [Mon, 29 Jun 2015 13:11:29 +0000 (13:11 +0000)]
am f91d27c9: Merge "Revert "Revert "Do not update the type of something we already know."""

* commit 'f91d27c907589c2b678315793992f09f9acc2e8b':
  Revert "Revert "Do not update the type of something we already know.""

9 years agoMerge "Revert "Revert "Do not update the type of something we already know."""
Nicolas Geoffray [Mon, 29 Jun 2015 13:04:19 +0000 (13:04 +0000)]
Merge "Revert "Revert "Do not update the type of something we already know."""

9 years agoRevert "Revert "Do not update the type of something we already know.""
Nicolas Geoffray [Mon, 29 Jun 2015 12:43:54 +0000 (13:43 +0100)]
Revert "Revert "Do not update the type of something we already know.""

This reverts commit 63107a804ce17db9789051e1fe310d99d1dae1cb.

bug:22116987
Change-Id: I49a376a5bd2073a69babe122ec0d26e5d2f82461

9 years agoam 2e232ce8: Merge "Revert "Do not update the type of something we already know.""
Calin Juravle [Mon, 29 Jun 2015 11:50:53 +0000 (11:50 +0000)]
am 2e232ce8: Merge "Revert "Do not update the type of something we already know.""

* commit '2e232ce8c7e7accc1b9654f111266d28fe45b08d':
  Revert "Do not update the type of something we already know."

9 years agoMerge "Revert "Do not update the type of something we already know.""
Calin Juravle [Mon, 29 Jun 2015 11:43:39 +0000 (11:43 +0000)]
Merge "Revert "Do not update the type of something we already know.""

9 years agoRevert "Do not update the type of something we already know."
Calin Juravle [Mon, 29 Jun 2015 11:43:16 +0000 (11:43 +0000)]
Revert "Do not update the type of something we already know."

This reverts commit 30eb58c548bee08468f68eb140a74a51dd7d9b43.

Change-Id: Icd959e868160fc3ee7031dd2927554ac5b21d40f

9 years agoam f67156eb: Merge "Do not update the type of something we already know."
Nicolas Geoffray [Mon, 29 Jun 2015 11:14:38 +0000 (11:14 +0000)]
am f67156eb: Merge "Do not update the type of something we already know."

* commit 'f67156eb8027fb0be7e2e3ec5fdb4323134ae10d':
  Do not update the type of something we already know.

9 years agoMerge "Do not update the type of something we already know."
Nicolas Geoffray [Mon, 29 Jun 2015 11:03:34 +0000 (11:03 +0000)]
Merge "Do not update the type of something we already know."

9 years agoDo not update the type of something we already know.
Nicolas Geoffray [Mon, 29 Jun 2015 09:56:34 +0000 (10:56 +0100)]
Do not update the type of something we already know.

This is both an optimization to avoid unneeded nodes,
and correctness to avoid replacing the second input
of `HInstanceOf` and `HCheckCast` to something that is
not `HLoadClass`.

bug:22116987

Change-Id: I4907197a9002883d7cae8265a9642512b6201396

9 years agoam d1c897df: Merge "Exercise sun.misc.Unsafe.compareAndSwapObject."
Roland Levillain [Mon, 29 Jun 2015 09:42:51 +0000 (09:42 +0000)]
am d1c897df: Merge "Exercise sun.misc.Unsafe.compareAndSwapObject."

* commit 'd1c897df8818f2329492f9befb046927be390d90':
  Exercise sun.misc.Unsafe.compareAndSwapObject.

9 years agoMerge "Exercise sun.misc.Unsafe.compareAndSwapObject."
Roland Levillain [Mon, 29 Jun 2015 08:17:39 +0000 (08:17 +0000)]
Merge "Exercise sun.misc.Unsafe.compareAndSwapObject."

9 years agoam 0bf76878: Merge "Quick: Disable GVN, DCE and LVN for type conflicts."
Bill Buzbee [Sat, 27 Jun 2015 14:17:26 +0000 (14:17 +0000)]
am 0bf76878: Merge "Quick: Disable GVN, DCE and LVN for type conflicts."

* commit '0bf76878a7784b4e0f21ace82d891bf0b760aaac':
  Quick: Disable GVN, DCE and LVN for type conflicts.

9 years agoMerge "Quick: Disable GVN, DCE and LVN for type conflicts."
Bill Buzbee [Sat, 27 Jun 2015 14:06:42 +0000 (14:06 +0000)]
Merge "Quick: Disable GVN, DCE and LVN for type conflicts."

9 years agoQuick: Fix a DCHECK to take type conflicts into account.
Vladimir Marko [Sat, 27 Jun 2015 12:44:06 +0000 (13:44 +0100)]
Quick: Fix a DCHECK to take type conflicts into account.

Bug: 21865466
Change-Id: I010c7058b5a58bea1ec61af5bd6a12c2eb8de1b4

9 years agoQuick: Disable GVN, DCE and LVN for type conflicts.
Vladimir Marko [Sat, 27 Jun 2015 12:32:11 +0000 (13:32 +0100)]
Quick: Disable GVN, DCE and LVN for type conflicts.

Bug: 22136903
Change-Id: I657d4b5e623696e1264c2c6c9ad4e7fd466d759c

9 years agoam 9a83f593: Merge "Fixed a nullptr bug in SweepAllocationRecords()"
Mathieu Chartier [Sat, 27 Jun 2015 03:15:19 +0000 (03:15 +0000)]
am 9a83f593: Merge "Fixed a nullptr bug in SweepAllocationRecords()"

* commit '9a83f59365443eead29a318fe28916df9412a720':
  Fixed a nullptr bug in SweepAllocationRecords()

9 years agoam 8db4a7c8: Merge "ART: Fix CFI annotation in arm64, x86 and x86-64 assembly"
Andreas Gampe [Sat, 27 Jun 2015 03:09:28 +0000 (03:09 +0000)]
am 8db4a7c8: Merge "ART: Fix CFI annotation in arm64, x86 and x86-64 assembly"

* commit '8db4a7c8f1327655d09a7737ad3a8c4e5ec37d84':
  ART: Fix CFI annotation in arm64, x86 and x86-64 assembly

9 years agoMerge "Fixed a nullptr bug in SweepAllocationRecords()"
Mathieu Chartier [Sat, 27 Jun 2015 03:08:44 +0000 (03:08 +0000)]
Merge "Fixed a nullptr bug in SweepAllocationRecords()"

9 years agoMerge "ART: Fix CFI annotation in arm64, x86 and x86-64 assembly"
Andreas Gampe [Sat, 27 Jun 2015 02:56:44 +0000 (02:56 +0000)]
Merge "ART: Fix CFI annotation in arm64, x86 and x86-64 assembly"

9 years agoFixed a nullptr bug in SweepAllocationRecords()
Man Cao [Sat, 27 Jun 2015 02:54:41 +0000 (19:54 -0700)]
Fixed a nullptr bug in SweepAllocationRecords()

nullptr shouldn't be passed to IsMarkedCallBack functions.

Change-Id: Idfa3c0096b5ed0914fd0dd034ebc2176861f84eb

9 years agoART: Fix CFI annotation in arm64, x86 and x86-64 assembly
Andreas Gampe [Sat, 27 Jun 2015 02:49:24 +0000 (19:49 -0700)]
ART: Fix CFI annotation in arm64, x86 and x86-64 assembly

To be able to unroll in the exception case, the state needs to be
reset to before the jump.

Bug: 22014525
Change-Id: Ic60400b5bf0efcb713c24df1728623d072f344ab

9 years agoam 921c7a62: Merge "ART: Fix invalid access and DCHECK in verifier"
Andreas Gampe [Sat, 27 Jun 2015 01:17:27 +0000 (01:17 +0000)]
am 921c7a62: Merge "ART: Fix invalid access and DCHECK in verifier"

* commit '921c7a62ba9dd6a4a855b08eca7cc1aae081adeb':
  ART: Fix invalid access and DCHECK in verifier

9 years agoMerge "ART: Fix invalid access and DCHECK in verifier"
Andreas Gampe [Sat, 27 Jun 2015 01:04:07 +0000 (01:04 +0000)]
Merge "ART: Fix invalid access and DCHECK in verifier"

9 years agoART: Fix invalid access and DCHECK in verifier
Andreas Gampe [Sat, 27 Jun 2015 00:33:47 +0000 (17:33 -0700)]
ART: Fix invalid access and DCHECK in verifier

If we get a throwing failure when setting types from the signature,
the work instruction index is still invalid. Do not try to copy the
line then.

As a throwing failure might happen in the above instance, but the
flow analysis expects to have a cleared failure flag before processing
each instruction, clear the flag.

Bug: 21645819
Bug: 22080519

(cherry picked from commit 3ae8da0a803370be9dd410226438f636af553e22)

Change-Id: I224c4dad98fa5bb50e62210f0ee30c0dd020e3a6

9 years agoam 2d0ad78f: Merge "ART: Fix streaming tracing issues"
Andreas Gampe [Fri, 26 Jun 2015 21:32:40 +0000 (21:32 +0000)]
am 2d0ad78f: Merge "ART: Fix streaming tracing issues"

* commit '2d0ad78f50cae58d1ca11a497614ca3e1178acc3':
  ART: Fix streaming tracing issues

9 years agoMerge "ART: Fix streaming tracing issues"
Andreas Gampe [Fri, 26 Jun 2015 21:25:19 +0000 (21:25 +0000)]
Merge "ART: Fix streaming tracing issues"

9 years agoART: Fix streaming tracing issues
Andreas Gampe [Tue, 23 Jun 2015 05:53:45 +0000 (22:53 -0700)]
ART: Fix streaming tracing issues

Fix a lock ordering issue in streaming-mode tracing.

Fix a moving-GC issue in streaming-mode tracing. DexCache
objects are not good keys for a map.

Expose streaming mode for testing in run-tests.

Bug: 21760614

(cherry picked from commit b91205e40fe692061edde19ecb87d51414a7fcee)

Change-Id: Idcd0575684ee3cc0cec3f81b4fdd0d5988c11e8c

9 years agoam 83f0a080: Merge "Require mutator lock for DeleteLocalRef"
Mathieu Chartier [Fri, 26 Jun 2015 20:46:46 +0000 (20:46 +0000)]
am 83f0a080: Merge "Require mutator lock for DeleteLocalRef"

* commit '83f0a080b68e9cff9333af030f20f242a7ac9168':
  Require mutator lock for DeleteLocalRef

9 years agoMerge "Require mutator lock for DeleteLocalRef"
Mathieu Chartier [Fri, 26 Jun 2015 20:08:26 +0000 (20:08 +0000)]
Merge "Require mutator lock for DeleteLocalRef"

9 years agoRequire mutator lock for DeleteLocalRef
Mathieu Chartier [Fri, 26 Jun 2015 17:47:08 +0000 (10:47 -0700)]
Require mutator lock for DeleteLocalRef

There was a race condition where suspended threads could call
DeleteLocalRef while the GC was marking their roots. This could
cause the GC to attempt to mark a null object.

Bug: 22119403

Change-Id: I962c717bb87b2acb2a4710a2d7ab16793e031401

9 years agoam 8d1a8c00: Merge "ART: Ignore repeated field indexes when loading a class."
Vladimir Marko [Fri, 26 Jun 2015 17:32:40 +0000 (17:32 +0000)]
am 8d1a8c00: Merge "ART: Ignore repeated field indexes when loading a class."

* commit '8d1a8c00b89775a251ac5e26a557f81ac1491a44':
  ART: Ignore repeated field indexes when loading a class.

9 years agoMerge "ART: Ignore repeated field indexes when loading a class."
Vladimir Marko [Fri, 26 Jun 2015 17:25:29 +0000 (17:25 +0000)]
Merge "ART: Ignore repeated field indexes when loading a class."

9 years agoam b485915a: Merge "Revert "Revert "ART: Implement try/catch blocks in Builder"""
David Brazdil [Fri, 26 Jun 2015 15:02:31 +0000 (15:02 +0000)]
am b485915a: Merge "Revert "Revert "ART: Implement try/catch blocks in Builder"""

* commit 'b485915afd8a6396df7863b651dfe832038fd680':
  Revert "Revert "ART: Implement try/catch blocks in Builder""

9 years agoMerge "Revert "Revert "ART: Implement try/catch blocks in Builder"""
David Brazdil [Fri, 26 Jun 2015 14:52:36 +0000 (14:52 +0000)]
Merge "Revert "Revert "ART: Implement try/catch blocks in Builder"""

9 years agoART: Ignore repeated field indexes when loading a class.
Vladimir Marko [Wed, 24 Jun 2015 13:28:03 +0000 (14:28 +0100)]
ART: Ignore repeated field indexes when loading a class.

This provides a deterministic behavior for classes with
duplicate field indexes in class_data_item and avoids
failures when verifying the field ordering in debug build.

Regression test not feasible without hand-edited dex file.
(Smali deduplicates field definitions.)

Bug: 21868015
Change-Id: I4f97ba005e063686f8f44248ed7f1286d987888a

9 years agoRevert "Revert "ART: Implement try/catch blocks in Builder""
David Brazdil [Fri, 26 Jun 2015 10:33:45 +0000 (10:33 +0000)]
Revert "Revert "ART: Implement try/catch blocks in Builder""

This patch enables the GraphBuilder to generate blocks and edges which
represent the exceptional control flow when try/catch blocks are
present in the code. Actual compilation is still delegated to Quick
and Baseline ignores the additional code.

To represent the relationship between try and catch blocks, Builder
splits the edges which enter/exit a try block and links the newly
created blocks to the corresponding exception handlers. This layout
will later enable the SsaBuilder to correctly infer the dominators of
the catch blocks and to produce the appropriate reverse post ordering.
It will not, however, allow for building the complete SSA form of the
catch blocks and consequently optimizing such blocks.

To this end, a new TryBoundary control-flow instruction is introduced.
Codegen treats it the same as a Goto but it allows for additional
successors (the handlers).

This reverts commit 3e18738bd338e9f8363b26bc895f38c0ec682824.

Change-Id: I4f5ea961848a0b83d8db3673763861633e9bfcfb

9 years agoam 4a08e17a: Merge "Minor fixes to mips64 for the arch-specific optimisation framework."
Roland Levillain [Fri, 26 Jun 2015 11:43:14 +0000 (11:43 +0000)]
am 4a08e17a: Merge "Minor fixes to mips64 for the arch-specific optimisation framework."

* commit '4a08e17a9db0f68b9623849bc288c31a47868fbc':
  Minor fixes to mips64 for the arch-specific optimisation framework.

9 years agoMerge "Minor fixes to mips64 for the arch-specific optimisation framework."
Roland Levillain [Fri, 26 Jun 2015 11:33:01 +0000 (11:33 +0000)]
Merge "Minor fixes to mips64 for the arch-specific optimisation framework."

9 years agoam d3eaade8: Merge "Revert "ART: Implement try/catch blocks in Builder""
David Brazdil [Fri, 26 Jun 2015 10:10:43 +0000 (10:10 +0000)]
am d3eaade8: Merge "Revert "ART: Implement try/catch blocks in Builder""

* commit 'd3eaade87ac079accca30473ef0a3b38ab600828':
  Revert "ART: Implement try/catch blocks in Builder"

9 years agoam 610a0499: Merge "Revert "ART: Fix gtests after try/catch change""
David Brazdil [Fri, 26 Jun 2015 10:10:41 +0000 (10:10 +0000)]
am 610a0499: Merge "Revert "ART: Fix gtests after try/catch change""

* commit '610a04994ea5988bd6e2e056b658182ec9c445e3':
  Revert "ART: Fix gtests after try/catch change"

9 years agoMerge "Revert "ART: Implement try/catch blocks in Builder""
David Brazdil [Fri, 26 Jun 2015 10:00:03 +0000 (10:00 +0000)]
Merge "Revert "ART: Implement try/catch blocks in Builder""

9 years agoRevert "ART: Implement try/catch blocks in Builder"
David Brazdil [Fri, 26 Jun 2015 09:59:52 +0000 (09:59 +0000)]
Revert "ART: Implement try/catch blocks in Builder"

Causes OutOfMemory issues, need to investigate.

This reverts commit 0b5c7d1994b76090afcc825e737f2b8c546da2f8.

Change-Id: I263e6cc4df5f9a56ad2ce44e18932ca51d7e349f

9 years agoMerge "Revert "ART: Fix gtests after try/catch change""
David Brazdil [Fri, 26 Jun 2015 09:59:19 +0000 (09:59 +0000)]
Merge "Revert "ART: Fix gtests after try/catch change""

9 years agoRevert "ART: Fix gtests after try/catch change"
David Brazdil [Fri, 26 Jun 2015 09:59:06 +0000 (09:59 +0000)]
Revert "ART: Fix gtests after try/catch change"

Need to revert the whole try/catch CL until issues are fixed.

This reverts commit a65930de077a4d7c1110e66ccd950061a85353d0.

Change-Id: Idd69215c87230a8616923665a55fe81891c78bec

9 years agoExercise sun.misc.Unsafe.compareAndSwapObject.
Roland Levillain [Fri, 26 Jun 2015 09:44:53 +0000 (10:44 +0100)]
Exercise sun.misc.Unsafe.compareAndSwapObject.

Change-Id: I25aad20be3363aace5189a8134f3484f8675c701

9 years agoam 6808a0e5: Merge "ART: Fix gtests after try/catch change"
David Brazdil [Fri, 26 Jun 2015 09:38:45 +0000 (09:38 +0000)]
am 6808a0e5: Merge "ART: Fix gtests after try/catch change"

* commit '6808a0e50a3caca2ccdf22e87cae1796d886d9aa':
  ART: Fix gtests after try/catch change

9 years agoam 2f81cd8f: Merge "ART: Implement try/catch blocks in Builder"
David Brazdil [Fri, 26 Jun 2015 09:38:43 +0000 (09:38 +0000)]
am 2f81cd8f: Merge "ART: Implement try/catch blocks in Builder"

* commit '2f81cd8f4ff21caf133024795bd5ae028c9f68cd':
  ART: Implement try/catch blocks in Builder

9 years agoam e4a15549: Merge "List test as flaky."
Nicolas Geoffray [Fri, 26 Jun 2015 09:38:42 +0000 (09:38 +0000)]
am e4a15549: Merge "List test as flaky."

* commit 'e4a15549608b1c5b1e1cb32f840a8467602dcc14':
  List test as flaky.

9 years agoMerge "ART: Fix gtests after try/catch change"
David Brazdil [Fri, 26 Jun 2015 09:33:32 +0000 (09:33 +0000)]
Merge "ART: Fix gtests after try/catch change"

9 years agoART: Fix gtests after try/catch change
David Brazdil [Fri, 26 Jun 2015 09:26:47 +0000 (10:26 +0100)]
ART: Fix gtests after try/catch change

The try/catch CL changed the order in which instructions were added
into entry/exit blocks which broke the sensitive gtests. This patch
swaps the order back.

Change-Id: Ib337491e5571a2cd38d6784275642f008886cc2a

9 years agoMerge "ART: Implement try/catch blocks in Builder"
David Brazdil [Fri, 26 Jun 2015 08:56:45 +0000 (08:56 +0000)]
Merge "ART: Implement try/catch blocks in Builder"

9 years agoMerge "List test as flaky."
Nicolas Geoffray [Fri, 26 Jun 2015 08:25:03 +0000 (08:25 +0000)]
Merge "List test as flaky."

9 years agoList test as flaky.
Nicolas Geoffray [Fri, 26 Jun 2015 08:24:16 +0000 (09:24 +0100)]
List test as flaky.

bug:22106064
Change-Id: I54b7d38162bebdd1338d498f4f89734ffe28c563

9 years agoam eeca5451: Merge "ART: Only print stripped dex2oat command line"
Andreas Gampe [Fri, 26 Jun 2015 02:40:58 +0000 (02:40 +0000)]
am eeca5451: Merge "ART: Only print stripped dex2oat command line"

* commit 'eeca5451918dc36aab02a46e945330d3d4a9c18e':
  ART: Only print stripped dex2oat command line

9 years agoMerge "ART: Only print stripped dex2oat command line"
Andreas Gampe [Fri, 26 Jun 2015 02:32:14 +0000 (02:32 +0000)]
Merge "ART: Only print stripped dex2oat command line"

9 years agoART: Only print stripped dex2oat command line
Andreas Gampe [Tue, 19 May 2015 06:22:54 +0000 (23:22 -0700)]
ART: Only print stripped dex2oat command line

To curb logcat noise, strip many dex2oat parameters from the
logcat printout.

Bug: 20501758
Change-Id: Ifc367f91f593916e0773af1ca950c798f129889f

9 years agoam 52ce9a2d: Merge "ART: Fix kEverything compiler filter"
buzbee [Thu, 25 Jun 2015 23:15:14 +0000 (23:15 +0000)]
am 52ce9a2d: Merge "ART: Fix kEverything compiler filter"

* commit '52ce9a2d8d36a5f2f09c4de37182cd356cbd34cf':
  ART: Fix kEverything compiler filter