OSDN Git Service

android-x86/art.git
9 years agoGenerate just single ARM mapping symbol.
David Srbecky [Thu, 21 May 2015 18:11:18 +0000 (19:11 +0100)]
Generate just single ARM mapping symbol.

It is unnecessary to keep repeating the $t symbol if there
are no $d symbols.  The last $t should still be in effect.

This shrinks the .symtab section by half.

Change-Id: Ic57c8c2d412c10f0d040e966379ec524ece87d4a

9 years agoMerge "Fix the size of a StackHandleScope in art::CompilerDriver."
Roland Levillain [Thu, 21 May 2015 12:49:31 +0000 (12:49 +0000)]
Merge "Fix the size of a StackHandleScope in art::CompilerDriver."

9 years agoMerge "Revert "Introduce a NearLabel in thumb2.""
Nicolas Geoffray [Thu, 21 May 2015 12:26:43 +0000 (12:26 +0000)]
Merge "Revert "Introduce a NearLabel in thumb2.""

9 years agoRevert "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

9 years agoMerge "Also encode the InvokeType in an InlineInfo."
Nicolas Geoffray [Thu, 21 May 2015 11:11:17 +0000 (11:11 +0000)]
Merge "Also encode the InvokeType in an InlineInfo."

9 years agoAlso 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

9 years agoMerge "ART: Rename graph dump file name to 'graph.cfg'"
David Brazdil [Thu, 21 May 2015 11:08:59 +0000 (11:08 +0000)]
Merge "ART: Rename graph dump file name to 'graph.cfg'"

9 years agoART: 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

9 years agoMerge "ART: Implement next-line assertions in Checker"
David Brazdil [Thu, 21 May 2015 10:38:41 +0000 (10:38 +0000)]
Merge "ART: Implement next-line assertions in Checker"

9 years agoMerge "Introduce a NearLabel in thumb2."
Nicolas Geoffray [Thu, 21 May 2015 10:29:26 +0000 (10:29 +0000)]
Merge "Introduce a NearLabel in thumb2."

9 years agoART: Implement next-line assertions in Checker
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

9 years agoMerge "ART: Refactor and simplify matching in Checker"
David Brazdil [Thu, 21 May 2015 09:16:24 +0000 (09:16 +0000)]
Merge "ART: Refactor and simplify matching in Checker"

9 years agoART: 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

9 years agoMerge "Intercept JNI invocation of String.<init> methods."
Jeff Hao [Thu, 21 May 2015 02:17:02 +0000 (02:17 +0000)]
Merge "Intercept JNI invocation of String.<init> methods."

9 years agoIntercept 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

9 years agoMerge "ART: Use v2 version of NativeBridge struct"
Andreas Gampe [Thu, 21 May 2015 01:03:10 +0000 (01:03 +0000)]
Merge "ART: Use v2 version of NativeBridge struct"

9 years agoART: 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

9 years agoMerge "Fix a cts crash around proxy class fields."
Hiroshi Yamauchi [Thu, 21 May 2015 00:52:25 +0000 (00:52 +0000)]
Merge "Fix a cts crash around proxy class fields."

9 years agoFix 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

9 years agoMerge "ART: Fix gtest dependency"
Andreas Gampe [Wed, 20 May 2015 23:28:04 +0000 (23:28 +0000)]
Merge "ART: Fix gtest dependency"

9 years agoART: 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

9 years agoMerge "ART: Blacklist CFI test for JIT"
Andreas Gampe [Wed, 20 May 2015 21:52:35 +0000 (21:52 +0000)]
Merge "ART: Blacklist CFI test for JIT"

9 years agoART: 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

9 years agoMerge "ART: Fix RegisterNative order"
Andreas Gampe [Wed, 20 May 2015 21:18:27 +0000 (21:18 +0000)]
Merge "ART: Fix RegisterNative order"

9 years agoART: 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

9 years agoMerge "ART: Blacklist CFI test for non-compiled run-tests"
Andreas Gampe [Wed, 20 May 2015 20:59:55 +0000 (20:59 +0000)]
Merge "ART: Blacklist CFI test for non-compiled run-tests"

9 years agoART: 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

9 years agoMerge "ART: Refactor UnstartedRuntime for testing"
Andreas Gampe [Wed, 20 May 2015 19:42:10 +0000 (19:42 +0000)]
Merge "ART: Refactor UnstartedRuntime for testing"

9 years agoART: 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

9 years agoMerge "Switch to using ELF-64 for 64-bit architectures."
David Srbecky [Wed, 20 May 2015 19:40:53 +0000 (19:40 +0000)]
Merge "Switch to using ELF-64 for 64-bit architectures."

9 years agoMerge "ART: CFI Test"
Andreas Gampe [Wed, 20 May 2015 18:38:56 +0000 (18:38 +0000)]
Merge "ART: CFI Test"

9 years agoART: 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

9 years agoIntroduce a NearLabel in thumb2.
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

9 years agoMerge "Add tests for InstanceOf's and CheckCast's MustDoNullCheck"
Calin Juravle [Wed, 20 May 2015 16:19:38 +0000 (16:19 +0000)]
Merge "Add tests for InstanceOf's and CheckCast's MustDoNullCheck"

9 years agoAdd 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

9 years agoMerge "Remove unnecessary clinit checks"
Calin Juravle [Wed, 20 May 2015 16:13:49 +0000 (16:13 +0000)]
Merge "Remove unnecessary clinit checks"

9 years agoRemove 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

9 years agoMerge "Revert "Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1""
Calin Juravle [Wed, 20 May 2015 14:14:43 +0000 (14:14 +0000)]
Merge "Revert "Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1""

9 years agoRevert "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

9 years agoMerge "Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1"
Calin Juravle [Wed, 20 May 2015 13:29:01 +0000 (13:29 +0000)]
Merge "Add test for Change-Id: Ied0412a01922b40a3f5d89bed49707498582abc1"

9 years agoAdd 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

9 years agoMerge "[Optimizing] Thumb2 assembler: use 16bits branches when we can."
Nicolas Geoffray [Wed, 20 May 2015 11:26:29 +0000 (11:26 +0000)]
Merge "[Optimizing] Thumb2 assembler: use 16bits branches when we can."

9 years agoMerge "ART: Add missing Checker file"
David Brazdil [Wed, 20 May 2015 11:21:29 +0000 (11:21 +0000)]
Merge "ART: Add missing Checker file"

9 years agoART: 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

9 years agoMerge "ART: Immutable `variables` dictionary in Checker"
David Brazdil [Wed, 20 May 2015 10:55:44 +0000 (10:55 +0000)]
Merge "ART: Immutable `variables` dictionary in Checker"

9 years agoART: 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

9 years ago[Optimizing] Thumb2 assembler: use 16bits branches when we can.
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

9 years agoMerge "Don't hardcode the location of the caller."
Nicolas Geoffray [Wed, 20 May 2015 10:14:00 +0000 (10:14 +0000)]
Merge "Don't hardcode the location of the caller."

9 years agoDon'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

9 years agoMerge "ART: Fix broken Checker test"
David Brazdil [Wed, 20 May 2015 08:49:58 +0000 (08:49 +0000)]
Merge "ART: Fix broken Checker test"

9 years agoART: 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

9 years agoMerge "ART: Stricter matching of Checker lines"
David Brazdil [Wed, 20 May 2015 08:10:06 +0000 (08:10 +0000)]
Merge "ART: Stricter matching of Checker lines"

9 years agoMerge "Mark CheckCast's and InstanceOf's input as !CanBeNull if used before in a...
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"

9 years agoSwitch to using ELF-64 for 64-bit architectures.
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

9 years agoART: Stricter matching of Checker lines
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

9 years agoMerge "Test and fix bug checking status of secondary multidex files."
Richard Uhler [Tue, 19 May 2015 15:52:08 +0000 (15:52 +0000)]
Merge "Test and fix bug checking status of secondary multidex files."

9 years agoMerge "Fix build - large frame size of ElfWriterQuick<ElfTypes>::Write."
David Srbecky [Tue, 19 May 2015 15:37:43 +0000 (15:37 +0000)]
Merge "Fix build - large frame size of ElfWriterQuick<ElfTypes>::Write."

9 years agoFix 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

9 years agoMerge "Eliminate redundant constructor barriers when inlining."
Calin Juravle [Tue, 19 May 2015 14:57:08 +0000 (14:57 +0000)]
Merge "Eliminate redundant constructor barriers when inlining."

9 years agoEliminate 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

9 years agoMerge "Support generation of CFI in .debug_frame format."
David Srbecky [Tue, 19 May 2015 14:49:13 +0000 (14:49 +0000)]
Merge "Support generation of CFI in .debug_frame format."

9 years agoSupport 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

9 years agoMerge "Fix debuggable compiler flag detection for secondary dex files"
Sebastien Hertz [Tue, 19 May 2015 12:39:36 +0000 (12:39 +0000)]
Merge "Fix debuggable compiler flag detection for secondary dex files"

9 years agoFix 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

9 years agoMerge "Don't do a null test in MarkGCCard if the value cannot be null."
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."

9 years agoFix the size of a StackHandleScope in art::CompilerDriver.
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

9 years agoMerge "ART: Change huge-method warning in verifier"
Andreas Gampe [Tue, 19 May 2015 06:54:58 +0000 (06:54 +0000)]
Merge "ART: Change huge-method warning in verifier"

9 years agoMerge "ART: Add verbose:deopt logging"
Andreas Gampe [Tue, 19 May 2015 05:50:52 +0000 (05:50 +0000)]
Merge "ART: Add verbose:deopt logging"

9 years agoART: 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

9 years agoART: Change huge-method warning in verifier
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

9 years agoMerge changes Ia1f2269a,I2ac93038
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.

9 years agoPrint more info on mark sweep invalid ref crash.
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

9 years agoEnable tlab by default for the read barrier config.
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

9 years agoDon't do a null test in MarkGCCard if the value cannot be null.
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

9 years agoMark CheckCast's and InstanceOf's input as !CanBeNull if used before in a NullCheck
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

9 years agoMerge "ART: Rephrase test comments, update Checker README"
David Brazdil [Mon, 18 May 2015 16:46:21 +0000 (16:46 +0000)]
Merge "ART: Rephrase test comments, update Checker README"

9 years agoTest and fix bug checking status of secondary multidex files.
Richard Uhler [Thu, 14 May 2015 20:21:13 +0000 (13:21 -0700)]
Test and fix bug checking status of secondary multidex files.

We were accidentally returning 'false' instead of 'true' to indicate a native
multidex file with an up-to-date primary dex file checksum but out-of-date
secondary dex file checksum is out of date.

Bug: 21022815
(cherry picked from commit a5a1c13a74225a1db3c54dc108fcd161b867bb00)

Change-Id: I0cc56d2d49858a4af91ca8b05aa8bd3c17bb44be

9 years agoMerge "Opt compiler: ARM64: Use ldp/stp on arm64 for slow paths."
Nicolas Geoffray [Mon, 18 May 2015 15:25:39 +0000 (15:25 +0000)]
Merge "Opt compiler: ARM64: Use ldp/stp on arm64 for slow paths."

9 years agoMerge "ART: Mark constructor 'explicit'"
David Brazdil [Mon, 18 May 2015 15:06:10 +0000 (15:06 +0000)]
Merge "ART: Mark constructor 'explicit'"

9 years agoART: Mark constructor 'explicit'
David Brazdil [Mon, 18 May 2015 15:04:53 +0000 (16:04 +0100)]
ART: Mark constructor 'explicit'

Fixes a cpp-lint error.

Change-Id: Ibd2c84a6f171a5ddb9aa1a3b9e23c1e5a30537f0

9 years agoMerge "ART: Revert change to LiveRange::Dump"
David Brazdil [Mon, 18 May 2015 14:25:28 +0000 (14:25 +0000)]
Merge "ART: Revert change to LiveRange::Dump"

9 years agoMerge "Stack walking of inlined frames."
Nicolas Geoffray [Mon, 18 May 2015 14:14:47 +0000 (14:14 +0000)]
Merge "Stack walking of inlined frames."

9 years agoART: Revert change to LiveRange::Dump
David Brazdil [Fri, 15 May 2015 15:44:05 +0000 (16:44 +0100)]
ART: Revert change to LiveRange::Dump

Changes back the LiveRange printing format to "[start,end)" for better
clarity. However, it removes the space after comma due to b/1189305
and prints the "ranges" attribute with curly brackets to improve
readability.

This is a resubmission of CL Ic83025fa78d6f1edb5e0e39d66160182b0198ab8
which fixes a compilation issue on target.

Bug: 21189305
Change-Id: Ic232c02ba19a710ead67793a039f99c0345353c7

9 years agoStack walking of inlined frames.
Nicolas Geoffray [Fri, 15 May 2015 12:20:41 +0000 (13:20 +0100)]
Stack walking of inlined frames.

Be "true" to the stack visitor design, which seems to be:
1) Carry minimal state, so this CL just adds an inlining depth to it.
2) Compute needed information for each method, which is what GetDexPc,
   GetMethod, and GetVRegFromOptimized code do.

Change-Id: I3d14126766f12216a7b448ce856259f1e7f37395

9 years agoMerge "Revert "ART: Revert change to LiveRange::Dump""
David Brazdil [Mon, 18 May 2015 13:57:33 +0000 (13:57 +0000)]
Merge "Revert "ART: Revert change to LiveRange::Dump""

9 years agoRevert "ART: Revert change to LiveRange::Dump"
David Brazdil [Mon, 18 May 2015 13:57:11 +0000 (13:57 +0000)]
Revert "ART: Revert change to LiveRange::Dump"

This reverts commit 294a0509cf811061b8009ade61e76a1f94e248b2.

Need to investigate a compilation error.

Change-Id: I62020f6e546c9faf5f4a2ed6cc1f7e1499c2fa30

9 years agoART: Rephrase test comments, update Checker README
David Brazdil [Mon, 18 May 2015 13:50:13 +0000 (14:50 +0100)]
ART: Rephrase test comments, update Checker README

Addressing minor comments on a previous CL.

Change-Id: Ic011adc578111fc162480ed09723ff5d48690fe5

9 years agoMerge "ART: Revert change to LiveRange::Dump"
David Brazdil [Mon, 18 May 2015 13:38:17 +0000 (13:38 +0000)]
Merge "ART: Revert change to LiveRange::Dump"

9 years agoART: Revert change to LiveRange::Dump
David Brazdil [Fri, 15 May 2015 15:44:05 +0000 (16:44 +0100)]
ART: Revert change to LiveRange::Dump

Changes back the LiveRange printing format to "[start,end)" for better
clarity. However, it removes the space after comma due to b/1189305
and prints the "ranges" attribute with curly brackets to improve
readability.

Bug: 21189305
Change-Id: Ic83025fa78d6f1edb5e0e39d66160182b0198ab8

9 years agoMerge "Support InlineInfo in StackMap."
Nicolas Geoffray [Mon, 18 May 2015 13:00:29 +0000 (13:00 +0000)]
Merge "Support InlineInfo in StackMap."

9 years agoMerge "Fix libcore buildbot failure."
Narayan Kamath [Mon, 18 May 2015 12:40:32 +0000 (12:40 +0000)]
Merge "Fix libcore buildbot failure."

9 years agoFix libcore buildbot failure.
Narayan Kamath [Mon, 18 May 2015 12:35:24 +0000 (13:35 +0100)]
Fix libcore buildbot failure.

... due to a duplicate suppression. test_PacketSocketAddress has been
moved to libcore/knownfailures.txt.

Change-Id: I5c9cc98938d46607cba5a799e9c45b864ec22bf8

9 years agoSupport InlineInfo in StackMap.
Nicolas Geoffray [Thu, 14 May 2015 11:41:51 +0000 (12:41 +0100)]
Support InlineInfo in StackMap.

Change-Id: I9956091775cedc609fdae7dec1433fcb8858a477

9 years agoMerge "Don't emit bkpt, takes extra space for nothing."
Nicolas Geoffray [Mon, 18 May 2015 11:20:07 +0000 (11:20 +0000)]
Merge "Don't emit bkpt, takes extra space for nothing."

9 years agoMerge "ART: Removed redundant Phis as part of DCE"
David Brazdil [Mon, 18 May 2015 11:14:35 +0000 (11:14 +0000)]
Merge "ART: Removed redundant Phis as part of DCE"

9 years agoART: Removed redundant Phis as part of DCE
David Brazdil [Mon, 18 May 2015 11:06:52 +0000 (12:06 +0100)]
ART: Removed redundant Phis as part of DCE

Removing dead blocks can render some phis redundant but they do not
get removed. This patch adds running SsaRedundantPhiElimination to
adress that.

Change-Id: Iec9a16f3c20b2d5b5607cd5aaf802917c155a0f1

9 years agoMerge "Callee/caller save logic in register allocator."
Nicolas Geoffray [Mon, 18 May 2015 09:42:57 +0000 (09:42 +0000)]
Merge "Callee/caller save logic in register allocator."

9 years agoCallee/caller save logic in register allocator.
Nicolas Geoffray [Fri, 17 Apr 2015 08:15:11 +0000 (09:15 +0100)]
Callee/caller save logic in register allocator.

Prevent intervals that do not span a 'will-call' safepoint
to allocate a callee-save register when caller-saves
are available.

Change-Id: I6e613ab54b087f433bbc433aa62847fbca423377

9 years agoMerge "ART: Print C1vis lists as [v1,...,vN]"
David Brazdil [Mon, 18 May 2015 09:19:23 +0000 (09:19 +0000)]
Merge "ART: Print C1vis lists as [v1,...,vN]"

9 years agoDon't emit bkpt, takes extra space for nothing.
Nicolas Geoffray [Mon, 18 May 2015 08:49:16 +0000 (09:49 +0100)]
Don't emit bkpt, takes extra space for nothing.

Change-Id: Id091dcdc950b590e5be55c4fa31d7779308e1a2c