OSDN Git Service
Nicolas Geoffray [Tue, 26 May 2015 14:12:51 +0000 (14:12 +0000)]
Merge "Make inlining deterministic."
Nicolas Geoffray [Tue, 26 May 2015 13:35:06 +0000 (14:35 +0100)]
Make inlining deterministic.
Only the case where two methods are not in the same dex
file could lead to undeterministic behavior.
bug:
20037935
Change-Id: I1a7642a979302b17e76d196894437c1aacbbbe9d
David Brazdil [Tue, 26 May 2015 13:23:51 +0000 (13:23 +0000)]
Merge "ART: Update graph's exit block field if removed"
Sebastien Hertz [Tue, 26 May 2015 13:00:34 +0000 (13:00 +0000)]
Merge "JDWP: fix breakpoint on catch statement"
David Brazdil [Tue, 26 May 2015 11:05:55 +0000 (12:05 +0100)]
ART: Update graph's exit block field if removed
Running DCE on an infinite loop will delete the exit block but the
corresponding field is currently not cleared in the parent graph.
This does not cause any problems at the moment as that information is
only used in codegens to DCHECK that a block is not the exit block.
However, it will be necessary to update the inliner once we start to
inline methods with loops.
With this patch, DCE will update the HGraph::exit_block_ field. DCHECK
was also added to HGraph::InlineInto to make sure that the inlined
graph does have an exit block.
Change-Id: Ia8ddca375bbc6830cd919af6059a52cc9b73a023
Sebastien Hertz [Tue, 26 May 2015 09:53:39 +0000 (11:53 +0200)]
JDWP: fix breakpoint on catch statement
Setting a breakpoint on a catch statement in the source actually
installs the breakpoint on a DEX move-exception instruction. At this
point, an exception is pending in the current thread.
The issue is no exception must be pending in the current thread to
report the breakpoint event. This is required to be able to call JNI
functions to create JDWP ids.
This CL fixes it by clearing the pending exception before reporting
event and restore it after reporting the event.
Bug:
21382373
Change-Id: Id3c60cca398135a3e0859a1ccb645b9c99d5ca76
Nicolas Geoffray [Tue, 26 May 2015 10:02:31 +0000 (10:02 +0000)]
Merge "Do not use dex_compilation_unit after inlining."
Andreas Gampe [Fri, 22 May 2015 23:07:36 +0000 (23:07 +0000)]
Merge "ARM64: Move xSELF from x18 to x19."
Hiroshi Yamauchi [Fri, 22 May 2015 22:30:43 +0000 (22:30 +0000)]
Merge "Revert "Switch to using ELF-64 for 64-bit architectures.""
Hiroshi Yamauchi [Fri, 22 May 2015 22:28:59 +0000 (22:28 +0000)]
Revert "Switch to using ELF-64 for 64-bit architectures."
This reverts commit
a3a49fe863e0bcf423ed0b4082136d1439fb2e79.
Change-Id: I0afabec15f5d9110de0d4105cbab7d040f2b86e2
Nicolas Geoffray [Fri, 22 May 2015 14:45:52 +0000 (14:45 +0000)]
Merge "Return an invalid StackMap when one cannot be found."
Nicolas Geoffray [Fri, 22 May 2015 14:45:36 +0000 (14:45 +0000)]
Merge "Revert "Revert "Introduce a NearLabel in thumb2."""
Nicolas Geoffray [Fri, 22 May 2015 14:37:09 +0000 (15:37 +0100)]
Do not use dex_compilation_unit after inlining.
It's incompatible with inlining, as inlined invokes/load class/new
can be from another dex file.
Change-Id: I8897b6a012942bc8e136f2bea70252d3fb3a7fa5
Nicolas Geoffray [Thu, 21 May 2015 12:32:34 +0000 (12:32 +0000)]
Revert "Revert "Introduce a NearLabel in thumb2.""
This reverts commit
1f277e3cef6c33cd35e91123978491d83338d2ad.
- Fix CompareAndBranch to not use cbz/cbnz with high registers.
- Add a test for CompareAndBranch with the *inc file, as the
other assembler test infrastructure does not handle labels.
Change-Id: If552bf1112b96caa3b9bb6c73c4b40bb90a33db7
Nicolas Geoffray [Fri, 22 May 2015 13:01:33 +0000 (14:01 +0100)]
Return an invalid StackMap when one cannot be found.
This avoids aborting when handling a crash.
Change-Id: Ie5b5d48061fa9258b349b0284f7b00c5855d9fbd
Serban Constantinescu [Wed, 22 Apr 2015 15:24:46 +0000 (16:24 +0100)]
ARM64: Move xSELF from x18 to x19.
This patch moves xSELF to callee saved x19 and removes support for
ETR (external thread register), previously used across native calls.
Change-Id: Icee07fbb9292425947f7de33d10a0ddf98c7899b
Signed-off-by: Serban Constantinescu <serban.constantinescu@linaro.org>
Andreas Gampe [Thu, 21 May 2015 21:57:46 +0000 (21:57 +0000)]
Merge "ART: Sometimes even empty methods take forever to verify"
Andreas Gampe [Thu, 21 May 2015 21:06:46 +0000 (14:06 -0700)]
ART: Sometimes even empty methods take forever to verify
In cases of very high load and/or bad scheduling, the verifier may
take longer than the threshold duration to verify an empty method.
The LargeMethod detection needs to accept that the code_item may
be null.
Bug:
21364300
(cherry picked from commit
8110447356f559688d6290563e912af7f8d4709b)
Change-Id: Iceff3e4688cc1a5fe7a836f7a9bf6c49a392b618
Nicolas Geoffray [Thu, 21 May 2015 17:24:31 +0000 (17:24 +0000)]
Merge "Update failures"
Andreas Gampe [Thu, 21 May 2015 17:09:21 +0000 (17:09 +0000)]
Merge "ART: Blacklist CFI test for Heap Poisoning"
Andreas Gampe [Thu, 21 May 2015 17:01:42 +0000 (10:01 -0700)]
ART: Blacklist CFI test for Heap Poisoning
The test expects Java frames on the stack.
Change-Id: I19e7429f06fac107c2cf9f85325e8f071e5799fb
Wojciech Staszkiewicz [Thu, 21 May 2015 16:43:09 +0000 (17:43 +0100)]
Update failures
Some failures have been removed too eagerly, this CL reverts that.
Change-Id: I897b1b7f936d2c001c44db604905c22242797e46
David Srbecky [Thu, 21 May 2015 15:36:21 +0000 (15:36 +0000)]
Merge "Write 64-bit address in DWARF if we are on 64-bit architecture."
Nicolas Geoffray [Thu, 21 May 2015 15:00:46 +0000 (15:00 +0000)]
Merge "Update libcore failures"
Wojciech Staszkiewicz [Thu, 21 May 2015 14:29:30 +0000 (15:29 +0100)]
Update libcore failures
Updated libcore failures.
Change-Id: I570846220c5b4dea43fd39a4a777c37eb3595a08
Roland Levillain [Thu, 21 May 2015 12:49:31 +0000 (12:49 +0000)]
Merge "Fix the size of a StackHandleScope in art::CompilerDriver."
Nicolas Geoffray [Thu, 21 May 2015 12:26:43 +0000 (12:26 +0000)]
Merge "Revert "Introduce a NearLabel in thumb2.""
Nicolas Geoffray [Thu, 21 May 2015 12:26:31 +0000 (12:26 +0000)]
Revert "Introduce a NearLabel in thumb2."
Fails some benchmarks and libcore tests.
This reverts commit
db0bbab279534974dca507946c66cff2d05dc9f9.
Change-Id: I5d1afef5ede87e65d61f49529027c5c2f35b17fb
Nicolas Geoffray [Thu, 21 May 2015 11:11:17 +0000 (11:11 +0000)]
Merge "Also encode the InvokeType in an InlineInfo."
Nicolas Geoffray [Wed, 20 May 2015 17:48:31 +0000 (18:48 +0100)]
Also encode the InvokeType in an InlineInfo.
This will be needed to recover the call stack.
Change-Id: I2fe10785eb1167939c8cce1862b2d7f4066e16ec
David Brazdil [Thu, 21 May 2015 11:08:59 +0000 (11:08 +0000)]
Merge "ART: Rename graph dump file name to 'graph.cfg'"
David Brazdil [Thu, 21 May 2015 11:06:13 +0000 (12:06 +0100)]
ART: Rename graph dump file name to 'graph.cfg'
Change-Id: I91f6a6bf5efac5b3bba92b9a89e22e1b7be6e02f
David Brazdil [Thu, 21 May 2015 10:38:41 +0000 (10:38 +0000)]
Merge "ART: Implement next-line assertions in Checker"
Nicolas Geoffray [Thu, 21 May 2015 10:29:26 +0000 (10:29 +0000)]
Merge "Introduce a NearLabel in thumb2."
David Brazdil [Tue, 19 May 2015 17:29:40 +0000 (18:29 +0100)]
ART: Implement next-line assertions in Checker
Some tests require verifying an exact sequence of lines in the graph
dump. This was already possible by inserting 'CHECK-NOT: {{.*}}'
between the individual lines, but hardly a convenient way of doing so.
This patch introduces a new 'CHECK-NEXT' kind of assertions that
replaces the old method and will become useful for testing assembly.
Change-Id: I1bb951707bda44320166dc7ef828866a6957a113
David Brazdil [Thu, 21 May 2015 09:16:24 +0000 (09:16 +0000)]
Merge "ART: Refactor and simplify matching in Checker"
David Brazdil [Wed, 20 May 2015 13:57:54 +0000 (14:57 +0100)]
ART: Refactor and simplify matching in Checker
Change-Id: Ib8a2b51488f66a7239e799f5fa5910b4ac2dfe08
Jeff Hao [Thu, 21 May 2015 02:17:02 +0000 (02:17 +0000)]
Merge "Intercept JNI invocation of String.<init> methods."
Jeff Hao [Wed, 20 May 2015 03:30:23 +0000 (20:30 -0700)]
Intercept JNI invocation of String.<init> methods.
libmono uses JNI AllocObject and CallNonvirtualVoidMethod to create and
initialize a string instead of using the recommended NewObject. This
change adds an intercept to change the String.<init> call to a
StringFactory call instead. Then, it uses the object id of the original
string object referrer and maps it to the result of the StringFactory.
Bug:
21288130
(cherry picked from commit
15e9ad1d028d7f12cb598b075453173532a00d91)
Change-Id: I3421c43722c07397da4a398c2ca9110e1d40bcfa
Andreas Gampe [Thu, 21 May 2015 01:03:10 +0000 (01:03 +0000)]
Merge "ART: Use v2 version of NativeBridge struct"
Andreas Gampe [Thu, 21 May 2015 01:01:30 +0000 (18:01 -0700)]
ART: Use v2 version of NativeBridge struct
Update the struct to the new version, but without implementation.
Bug:
20217701
Change-Id: Ic23a60b949f119c7d8b0e7cb27a61e6c16532a23
Hiroshi Yamauchi [Thu, 21 May 2015 00:52:25 +0000 (00:52 +0000)]
Merge "Fix a cts crash around proxy class fields."
Hiroshi Yamauchi [Wed, 20 May 2015 22:51:29 +0000 (15:51 -0700)]
Fix a cts crash around proxy class fields.
org.apache.harmony.tests.java.io.SerializationStressTest4#test_writeObject_Proxy
As the static fields of proxy classes share the dex file indices, they
shouldn't be resolved in the dex cache or else Field::GetArtField()
may return a wrong art field that belong to a different proxy class.
(cherry pick commit
a56ce5e267c9744ed99e40ae5cd9b527971e1d63)
Bug:
20557050
Change-Id: If672c0e67bc49e672e34d75ffbe29c65f5a423b9
Andreas Gampe [Wed, 20 May 2015 23:28:04 +0000 (23:28 +0000)]
Merge "ART: Fix gtest dependency"
Andreas Gampe [Wed, 20 May 2015 23:09:36 +0000 (16:09 -0700)]
ART: Fix gtest dependency
Gtests should depend on the debug version of libart-disassembler.
Bug:
21273194
Change-Id: Iaf216a1c0cff650296ebf83fe4e8352f5614cb28
Andreas Gampe [Wed, 20 May 2015 21:52:35 +0000 (21:52 +0000)]
Merge "ART: Blacklist CFI test for JIT"
Andreas Gampe [Wed, 20 May 2015 21:50:06 +0000 (14:50 -0700)]
ART: Blacklist CFI test for JIT
The test expects Java frames on the stack.
Change-Id: I485a7a2a3d15fb52c207bd8723bed3b01289c000
Andreas Gampe [Wed, 20 May 2015 21:18:27 +0000 (21:18 +0000)]
Merge "ART: Fix RegisterNative order"
Andreas Gampe [Mon, 18 May 2015 22:52:22 +0000 (15:52 -0700)]
ART: Fix RegisterNative order
First check for both direct and virtual methods in the current class,
then move to the parent.
Optimize registration by checking first whether the current method
under test is native. This slows down registering implementations
in parent classes. Add a CheckJNI warning for this.
Add a run-test to check the behavior. Fix host comparison testing.
Bug:
19569721
Change-Id: I61e77117d96310632aad123d7f1279d0f834dc99
Andreas Gampe [Wed, 20 May 2015 20:59:55 +0000 (20:59 +0000)]
Merge "ART: Blacklist CFI test for non-compiled run-tests"
Andreas Gampe [Wed, 20 May 2015 20:55:00 +0000 (13:55 -0700)]
ART: Blacklist CFI test for non-compiled run-tests
The test expects Java frames on the stack.
Change-Id: I37914ad6a3c82264ee189492611469928a786f67
Andreas Gampe [Wed, 20 May 2015 19:42:10 +0000 (19:42 +0000)]
Merge "ART: Refactor UnstartedRuntime for testing"
Andreas Gampe [Sat, 16 May 2015 02:24:12 +0000 (19:24 -0700)]
ART: Refactor UnstartedRuntime for testing
Expose the UnstartedRuntime implementation functions as private static
methods of a class. Add a gtest that can invoke these functions. Add
sample tests for String and Memory.
Bug:
21173514
Change-Id: Ib5bde6347fafaf7607c642542ea7d5938ff4b1df
David Srbecky [Wed, 20 May 2015 19:40:53 +0000 (19:40 +0000)]
Merge "Switch to using ELF-64 for 64-bit architectures."
Andreas Gampe [Wed, 20 May 2015 18:38:56 +0000 (18:38 +0000)]
Merge "ART: CFI Test"
Andreas Gampe [Thu, 23 Apr 2015 01:57:06 +0000 (18:57 -0700)]
ART: CFI Test
Add a run-test that unwinds the process and a forked
process to see whether CFI information is enough
to see Java methods.
In-process unwinding is turned off for now, as it
requires dlopen for oat files.
Black-listed for 64-bit, as libunwind expects 64-bit
ELF files.
Change-Id: I9fe53e448b6cb2ea3d516526c42596dcc2446d98
Nicolas Geoffray [Wed, 20 May 2015 11:31:08 +0000 (12:31 +0100)]
Introduce a NearLabel in thumb2.
This tells the assembler that the user knows the encoding
can be in 16bits.
Change-Id: Idf36c38beb1e07a69862c972484aeb08326a0499
Calin Juravle [Wed, 20 May 2015 16:19:38 +0000 (16:19 +0000)]
Merge "Add tests for InstanceOf's and CheckCast's MustDoNullCheck"
Guillaume "Vermeille" Sanchez [Wed, 20 May 2015 14:19:21 +0000 (15:19 +0100)]
Add tests for InstanceOf's and CheckCast's MustDoNullCheck
Change-Id: I6a2b9293d91d27193625f5c61b0b64733a0c0d82
Calin Juravle [Wed, 20 May 2015 16:13:49 +0000 (16:13 +0000)]
Merge "Remove unnecessary clinit checks"
Calin Juravle [Tue, 19 May 2015 17:46:01 +0000 (18:46 +0100)]
Remove unnecessary clinit checks
Bug:
20852802
Change-Id: Ia6db8017ac22d45456845704a69ddffcc6917f4e
Calin Juravle [Wed, 20 May 2015 14:14:43 +0000 (14:14 +0000)]
Merge "Revert "Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1""
Calin Juravle [Wed, 20 May 2015 14:14:18 +0000 (14:14 +0000)]
Revert "Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1"
This reverts commit
0f675d8d70934762a5ed70f0734bd19eecfe9680.
The test name is too long...
Change-Id: I4496501e73dcf6424e9c58b331e3d3b241aa7917
Calin Juravle [Wed, 20 May 2015 13:29:01 +0000 (13:29 +0000)]
Merge "Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1"
Guillaume "Vermeille" Sanchez [Tue, 19 May 2015 19:34:09 +0000 (20:34 +0100)]
Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1
Change-Id: I3e9cbd0f5ba55f9044ddc7c7bec67b5193b90e75
Nicolas Geoffray [Wed, 20 May 2015 11:26:29 +0000 (11:26 +0000)]
Merge "[Optimizing] Thumb2 assembler: use 16bits branches when we can."
David Brazdil [Wed, 20 May 2015 11:21:29 +0000 (11:21 +0000)]
Merge "ART: Add missing Checker file"
David Brazdil [Wed, 20 May 2015 11:19:40 +0000 (12:19 +0100)]
ART: Add missing Checker file
Change-Id: I97a7ff931644a6a062ba76abb759fd02d1c52530
David Brazdil [Wed, 20 May 2015 10:55:44 +0000 (10:55 +0000)]
Merge "ART: Immutable `variables` dictionary in Checker"
David Brazdil [Wed, 20 May 2015 10:03:22 +0000 (11:03 +0100)]
ART: Immutable `variables` dictionary in Checker
Python's lack of read-only references makes passing state information
to other functions unsafe. This patch adds an immutable dictionary
class to Checker and uses it when passing around current values of
variables.
Change-Id: I54f2eac54d4d59e16daa74364e6d91a6cc953f6f
Nicolas Geoffray [Wed, 20 May 2015 10:25:27 +0000 (11:25 +0100)]
[Optimizing] Thumb2 assembler: use 16bits branches when we can.
We cannot relocate branches, but we can at least encode branches
on 16bits when the target is known.
Change-Id: Icb6116ed974fc97e03622ac80d914c2c06f4cba2
Nicolas Geoffray [Wed, 20 May 2015 10:14:00 +0000 (10:14 +0000)]
Merge "Don't hardcode the location of the caller."
Nicolas Geoffray [Tue, 19 May 2015 17:58:54 +0000 (18:58 +0100)]
Don't hardcode the location of the caller.
This is to avoid shooting ourselves in the foot when
dealing with inlined frames. Instead, use common methods
for fetching the caller and its dex pc.
Change-Id: I3467a7b50cf163022d332e80356f0aab747de252
David Brazdil [Wed, 20 May 2015 08:49:58 +0000 (08:49 +0000)]
Merge "ART: Fix broken Checker test"
David Brazdil [Wed, 20 May 2015 08:39:50 +0000 (09:39 +0100)]
ART: Fix broken Checker test
MemoryBarrier test checked for Return instead of ReturnVoid. Checker
does not allow that after its recent update.
Change-Id: Id90f4ccc8a1416e24550b1f7cbf7fdae21a33783
David Brazdil [Wed, 20 May 2015 08:10:06 +0000 (08:10 +0000)]
Merge "ART: Stricter matching of Checker lines"
Calin Juravle [Tue, 19 May 2015 17:37:28 +0000 (17:37 +0000)]
Merge "Mark CheckCast's and InstanceOf's input as !CanBeNull if used before in a NullCheck"
David Srbecky [Tue, 19 May 2015 17:21:54 +0000 (18:21 +0100)]
Switch to using ELF-64 for 64-bit architectures.
Bug:
21297086
Change-Id: I4914e097ceffa58ddbe567d23ab563b0d9db1f66
David Brazdil [Mon, 18 May 2015 16:45:17 +0000 (17:45 +0100)]
ART: Stricter matching of Checker lines
This patch refactors the MatchLines function of Checker and changes it
so that regular expressions must match entire words of C1vis output.
Previously, this could lead to false positives because assertion 'xyz'
translated to 'xyz.*' and hence testing for id 'i12' could be satisfied
by the presence of 'i123'.
Change-Id: Iaeb486c53519b450ea0cd40042ff3048b38d5a7b
Richard Uhler [Tue, 19 May 2015 15:52:08 +0000 (15:52 +0000)]
Merge "Test and fix bug checking status of secondary multidex files."
David Srbecky [Tue, 19 May 2015 15:37:43 +0000 (15:37 +0000)]
Merge "Fix build - large frame size of ElfWriterQuick<ElfTypes>::Write."
David Srbecky [Tue, 19 May 2015 15:30:51 +0000 (16:30 +0100)]
Fix build - large frame size of ElfWriterQuick<ElfTypes>::Write.
Change-Id: I0d1b7f6ca18a992bb7619a08a2cb0ed538578410
Calin Juravle [Tue, 19 May 2015 14:57:08 +0000 (14:57 +0000)]
Merge "Eliminate redundant constructor barriers when inlining."
Calin Juravle [Thu, 14 May 2015 14:15:42 +0000 (15:15 +0100)]
Eliminate redundant constructor barriers when inlining.
Bug:
20410297
Change-Id: I2097743d00eb795d050d390b1918e38c7f41d506
David Srbecky [Tue, 19 May 2015 14:49:13 +0000 (14:49 +0000)]
Merge "Support generation of CFI in .debug_frame format."
David Srbecky [Wed, 6 May 2015 17:27:35 +0000 (18:27 +0100)]
Support generation of CFI in .debug_frame format.
.debug_frame section is almost identical to .eh_frame section.
There are only minor differences in the CIE and FDE headers.
The main difference is that .eh_frame is intended to be used
at runtime for exception handling and is therefore allocated
within the running program whereas .debug_frame is not.
This makes .debug_frame easier to remove using standard tools.
"objcopy --strip-debug" removes .debug_frame, but not .eh_frame.
(although objcopy can be still be forced to remove .eh_frame)
Similarly, we might want to separate the CFI to separate debug
file or include it as compressed .gnu_debugdata section.
It is more appropriate to use .debug_frame for this purpose.
Bug:
20556771
Change-Id: I9d91a333b9fb37523fd6fafccfad89b21d2477af
Sebastien Hertz [Tue, 19 May 2015 12:39:36 +0000 (12:39 +0000)]
Merge "Fix debuggable compiler flag detection for secondary dex files"
Sebastien Hertz [Wed, 13 May 2015 10:14:05 +0000 (12:14 +0200)]
Fix debuggable compiler flag detection for secondary dex files
Compiles secondary dex files like the primary dex file: if it has
been compiled with the --debuggable flag, compile secondary dex files
with the --debuggable flag too.
Therefore, dex files loaded at runtime are compiled the same way as
dex files compiled at install time on the classpath (excluding the
boot image that is not compiled debuggable).
Also adds debuggable key in the oat header and bump the oat version.
Bug:
20944228
Change-Id: I59119f3468adb27ab1d6026f2cefbebbd814224c
Nicolas Geoffray [Tue, 19 May 2015 11:43:08 +0000 (11:43 +0000)]
Merge "Don't do a null test in MarkGCCard if the value cannot be null."
Roland Levillain [Tue, 19 May 2015 09:44:25 +0000 (10:44 +0100)]
Fix the size of a StackHandleScope in art::CompilerDriver.
Change-Id: Id6fbbbbfc5dcf9920e630699d4c1afc1b86f858f
Andreas Gampe [Tue, 19 May 2015 06:54:58 +0000 (06:54 +0000)]
Merge "ART: Change huge-method warning in verifier"
Andreas Gampe [Tue, 19 May 2015 05:50:52 +0000 (05:50 +0000)]
Merge "ART: Add verbose:deopt logging"
Andreas Gampe [Tue, 19 May 2015 04:41:13 +0000 (21:41 -0700)]
ART: Add verbose:deopt logging
Add verbose logging for deoptimization. Can be enabled with the
regular command line option "-verbose:_".
Change-Id: Iab63e02f3a4e0a213fc61efed1118fe829feeaa4
Andreas Gampe [Tue, 19 May 2015 03:50:12 +0000 (20:50 -0700)]
ART: Change huge-method warning in verifier
Change the logging to be included in the took-a-long-time warning,
instead of being a non-descriptive standalone. This should reduce
the noise.
Bug:
21149450
Change-Id: Ia4493dd12f54a8452a46541f6da86530584016ea
Hiroshi Yamauchi [Mon, 18 May 2015 21:59:22 +0000 (21:59 +0000)]
Merge changes Ia1f2269a,I2ac93038
* changes:
Print more info on mark sweep invalid ref crash.
Enable tlab by default for the read barrier config.
Hiroshi Yamauchi [Fri, 15 May 2015 22:23:30 +0000 (15:23 -0700)]
Print more info on mark sweep invalid ref crash.
- Add extra info about the field holder.
- Suspend threads when verifying roots.
(cherry pick commit
1e1a47204984e3b72c4a753a2beb704350f38373)
Bug:
20557050
Change-Id: Ia1f2269aaa3b1a81d0594e781e439a5decfb82f9
Hiroshi Yamauchi [Fri, 15 May 2015 23:24:24 +0000 (16:24 -0700)]
Enable tlab by default for the read barrier config.
Bug:
12687968
Change-Id: I2ac930386aebe5aaacbccf1b950c376df0d9c81b
Nicolas Geoffray [Mon, 18 May 2015 13:22:09 +0000 (14:22 +0100)]
Don't do a null test in MarkGCCard if the value cannot be null.
Change-Id: I45687f6d3505178e2fc3689eac9cb6ab1b2c1e29
Guillaume "Vermeille" Sanchez [Thu, 23 Apr 2015 20:35:11 +0000 (21:35 +0100)]
Mark CheckCast's and InstanceOf's input as !CanBeNull if used before in a NullCheck
Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1
David Brazdil [Mon, 18 May 2015 16:46:21 +0000 (16:46 +0000)]
Merge "ART: Rephrase test comments, update Checker README"