OSDN Git Service
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
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
Andreas Gampe [Tue, 30 Jun 2015 17:42:23 +0000 (17:42 +0000)]
Merge "Change 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
Andreas Gampe [Tue, 30 Jun 2015 17:37:26 +0000 (17:37 +0000)]
Merge "ART: 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
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.
Roland Levillain [Tue, 30 Jun 2015 15:05:03 +0000 (15:05 +0000)]
Merge "Make 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
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
Andreas Gampe [Mon, 29 Jun 2015 21:01:14 +0000 (21:01 +0000)]
Merge "ART: Fix CFI annotation for art_quick_aput_obj"
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
Yusuke Sato [Mon, 29 Jun 2015 17:49:28 +0000 (17:49 +0000)]
Merge "Rename ZipEntryName to ZipString"
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
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.
Nicolas Geoffray [Mon, 29 Jun 2015 14:03:00 +0000 (14:03 +0000)]
Merge "Do 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
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.""
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."""
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
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."
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.""
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
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.
Nicolas Geoffray [Mon, 29 Jun 2015 11:03:34 +0000 (11:03 +0000)]
Merge "Do 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
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.
Roland Levillain [Mon, 29 Jun 2015 08:17:39 +0000 (08:17 +0000)]
Merge "Exercise sun.misc.Unsafe.compareAndSwapObject."
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.
Bill Buzbee [Sat, 27 Jun 2015 14:06:42 +0000 (14:06 +0000)]
Merge "Quick: 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
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()
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
Mathieu Chartier [Sat, 27 Jun 2015 03:08:44 +0000 (03:08 +0000)]
Merge "Fixed a nullptr bug in SweepAllocationRecords()"
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"
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
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
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
Andreas Gampe [Sat, 27 Jun 2015 01:04:07 +0000 (01:04 +0000)]
Merge "ART: 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
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
Andreas Gampe [Fri, 26 Jun 2015 21:25:19 +0000 (21:25 +0000)]
Merge "ART: 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
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
Mathieu Chartier [Fri, 26 Jun 2015 20:08:26 +0000 (20:08 +0000)]
Merge "Require 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
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.
Vladimir Marko [Fri, 26 Jun 2015 17:25:29 +0000 (17:25 +0000)]
Merge "ART: Ignore repeated field indexes when loading a class."
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""
David Brazdil [Fri, 26 Jun 2015 14:52:36 +0000 (14:52 +0000)]
Merge "Revert "Revert "ART: Implement try/catch blocks in Builder"""
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
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
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.
Roland Levillain [Fri, 26 Jun 2015 11:33:01 +0000 (11:33 +0000)]
Merge "Minor fixes to mips64 for the arch-specific optimisation framework."
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"
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"
David Brazdil [Fri, 26 Jun 2015 10:00:03 +0000 (10:00 +0000)]
Merge "Revert "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
David Brazdil [Fri, 26 Jun 2015 09:59:19 +0000 (09:59 +0000)]
Merge "Revert "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
Roland Levillain [Fri, 26 Jun 2015 09:44:53 +0000 (10:44 +0100)]
Exercise sun.misc.Unsafe.compareAndSwapObject.
Change-Id: I25aad20be3363aace5189a8134f3484f8675c701
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
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
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.
David Brazdil [Fri, 26 Jun 2015 09:33:32 +0000 (09:33 +0000)]
Merge "ART: 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
David Brazdil [Fri, 26 Jun 2015 08:56:45 +0000 (08:56 +0000)]
Merge "ART: Implement try/catch blocks in Builder"
Nicolas Geoffray [Fri, 26 Jun 2015 08:25:03 +0000 (08:25 +0000)]
Merge "List 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
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
Andreas Gampe [Fri, 26 Jun 2015 02:32:14 +0000 (02:32 +0000)]
Merge "ART: 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
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
Igor Murashkin [Thu, 25 Jun 2015 23:15:12 +0000 (23:15 +0000)]
am
6056c8fb: Merge "interpreter: Fix string init for soft-failed invokes"
* commit '
6056c8fb5d397e0cb97221dc70def239597c252e':
interpreter: Fix string init for soft-failed invokes
buzbee [Thu, 25 Jun 2015 23:07:46 +0000 (23:07 +0000)]
Merge "ART: Fix kEverything compiler filter"
Igor Murashkin [Thu, 25 Jun 2015 23:07:42 +0000 (23:07 +0000)]
Merge "interpreter: Fix string init for soft-failed invokes"
buzbee [Thu, 25 Jun 2015 22:53:45 +0000 (15:53 -0700)]
ART: Fix kEverything compiler filter
Previously the kEverything filter failed to compile class
initializers. Now it will.
Bug:
19576257
Change-Id: I189d2b5b379aee112c4e95f8d3e6c32abab6ed41
Igor Murashkin [Thu, 25 Jun 2015 22:18:12 +0000 (15:18 -0700)]
interpreter: Fix string init for soft-failed invokes
Bug:
22040916
Change-Id: Id5b6f0f29e763c31bab4d85877cd8aaf02334e48
Mathieu Chartier [Thu, 25 Jun 2015 22:14:39 +0000 (22:14 +0000)]
am
d7f3c38f: Merge "Make allocation tracker use less memory"
* commit '
d7f3c38f1b1d23c08b91abb474e08da3105689f8':
Make allocation tracker use less memory
Mathieu Chartier [Thu, 25 Jun 2015 22:02:33 +0000 (22:02 +0000)]
Merge "Make allocation tracker use less memory"
Yusuke Sato [Thu, 25 Jun 2015 21:56:49 +0000 (14:56 -0700)]
Rename ZipEntryName to ZipString
This is for https://android-review.googlesource.com/#/c/156771/.
Bug:
21957428
Change-Id: Ibfbaf556a16e314654402f73405f0f92b0d8d106
Man Cao [Tue, 23 Jun 2015 23:38:25 +0000 (16:38 -0700)]
Make allocation tracker use less memory
The allocation tracker no longer keeps recently allocated objects live.
Instead it just keeps their class objects live as strong roots. This fixed
the gc-stress test failure for 098-ddmc.
Also fixed the issue in DisableNewSystemWeak() for allocation tracker,
by making new allocation to wait until GC's sweeping to complete. I didn't
feel any significant slowdown with this wait.
Bug:
20037135
Change-Id: I6a98188832cf7ee478007e3788e742dc6e18f7b8
Andreas Gampe [Thu, 25 Jun 2015 21:01:11 +0000 (21:01 +0000)]
am
dfda6d74: Merge "Fixed bug in debugging information in dex file"
* commit '
dfda6d74f97891d1b61027de9b4dca9bcd7c197d':
Fixed bug in debugging information in dex file
Andreas Gampe [Thu, 25 Jun 2015 20:51:42 +0000 (20:51 +0000)]
Merge "Fixed bug in debugging information in dex file"
Andreas Gampe [Thu, 25 Jun 2015 19:42:40 +0000 (19:42 +0000)]
am
f3274f85: Merge "ART: Reset runtime_throw_failure flag"
* commit '
f3274f8514636e7f52171a2e6b018017b34784e5':
ART: Reset runtime_throw_failure flag
Andreas Gampe [Thu, 25 Jun 2015 19:34:41 +0000 (19:34 +0000)]
Merge "ART: Reset runtime_throw_failure flag"
Andreas Gampe [Thu, 25 Jun 2015 17:26:40 +0000 (10:26 -0700)]
ART: Reset runtime_throw_failure flag
The flag is instruction-specific. It transports the info from Fail
to the main loop. It must be cleared after each iteration.
Introduce a second flag to store whether we saw such a failure at
all.
Update test expectations.
Bug:
22080519
Change-Id: I32be914819946233babaa4cb7343844d97b61ba5
Andreas Gampe [Thu, 25 Jun 2015 17:34:31 +0000 (17:34 +0000)]
am
292edf0d: Merge "ART: Set methods to preverified in verify-none"
* commit '
292edf0dacca4b0220522c9b4465638da18dadf4':
ART: Set methods to preverified in verify-none
Aart Bik [Wed, 24 Jun 2015 23:33:32 +0000 (16:33 -0700)]
Fixed bug in debugging information in dex file
Rationale:
Not resetting signature field may cause "leaking" old extended
value into new non-extended value (exposed while implementing
an Art-based dexdump; it affects all debug iterators though)
Bug:
17442393
Change-Id: I4d1e2357ab7e0d77dbcf09786f24ac5cc54160b9
Andreas Gampe [Thu, 25 Jun 2015 17:24:31 +0000 (17:24 +0000)]
Merge "ART: Set methods to preverified in verify-none"
Andreas Gampe [Wed, 24 Jun 2015 23:25:33 +0000 (16:25 -0700)]
ART: Set methods to preverified in verify-none
Actually mark all methods to be verified, so that the interpreter
doesn't do access checks. Speedup is about 2x on a Nexus 6 when booting
in verify-none mode.
Bug:
22040916
Change-Id: I2d6c8df2a68eae6e358da2639d980cb8bfcc1560
Richard Uhler [Thu, 25 Jun 2015 17:09:15 +0000 (17:09 +0000)]
am
1f77078d: Merge "Do not try to compile resource-only dex files."
* commit '
1f77078d818648415f9cf193c2b36ae56bd1cf38':
Do not try to compile resource-only dex files.
Richard Uhler [Thu, 25 Jun 2015 16:52:45 +0000 (16:52 +0000)]
Merge "Do not try to compile resource-only dex files."
David Brazdil [Thu, 11 Jun 2015 10:17:49 +0000 (11:17 +0100)]
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).
Change-Id: I415b985596d5bebb7b1bb358a46e08b7b04bb53a
Richard Uhler [Wed, 24 Jun 2015 15:44:19 +0000 (08:44 -0700)]
Do not try to compile resource-only dex files.
This changes behavior in the case where we are asked to load a dex
file that does not exist or has no classes.dex entry.
Previously we would run dex2oat, which would log an error message and
fail. Now we skip running dex2oat, we report the DexOptStatus as
kNoDexOptNeeded, and we do not try to fall back to the missing
original dex files.
Bug:
21722039
(cherry picked from commit
cb44b11a926696e34b3dc44288e762b4303cc128)
Change-Id: I84a85dc9ece54bcc0a5283f871e09bf68471c6e7
Nicolas Geoffray [Thu, 25 Jun 2015 15:13:53 +0000 (15:13 +0000)]
am
7467fa30: Merge "Pass LD_USE_LOAD_BIAS to the art script."
* commit '
7467fa30adceb7287e70075b7c8de0cdade60c4c':
Pass LD_USE_LOAD_BIAS to the art script.
Nicolas Geoffray [Thu, 25 Jun 2015 15:03:18 +0000 (15:03 +0000)]
Merge "Pass LD_USE_LOAD_BIAS to the art script."
Nicolas Geoffray [Thu, 25 Jun 2015 14:53:54 +0000 (15:53 +0100)]
Pass LD_USE_LOAD_BIAS to the art script.
The move to using dlopen requires it on the host.
Change-Id: I593818eac4e7c9ea15adbb86c5204e51f776cae4
Nicolas Geoffray [Thu, 25 Jun 2015 10:48:43 +0000 (10:48 +0000)]
am
6c52aaf4: Merge "Disable test for all runs."
* commit '
6c52aaf45256c858476c0ec4bba8fbb116349275':
Disable test for all runs.
Nicolas Geoffray [Thu, 25 Jun 2015 10:41:39 +0000 (10:41 +0000)]
Merge "Disable test for all runs."