OSDN Git Service

android-x86/art.git
7 years agojni: test CriticalNative with generic jni
Igor Murashkin [Wed, 28 Sep 2016 20:23:19 +0000 (13:23 -0700)]
jni: test CriticalNative with generic jni

Previously this combination was uncovered due to a missing
line in the macro definition.

Bug: 31400248
Test: make test-art-host
Change-Id: I5407f46f2394edc028c9b74dc783899a3a2f6588

7 years agojni: Punt to generic JNI for mips
Igor Murashkin [Mon, 26 Sep 2016 17:10:17 +0000 (10:10 -0700)]
jni: Punt to generic JNI for mips

Preopting dex the bootclasspath causes dex2oat to crash for MIPS builds.
Disable JNI compiler for MIPS until it supports @CriticalNative.

Test: lunch aosp_mips-eng && make && make test-art-host
Bug: 31743474
Change-Id: I802f1e61863c4bb54a1bd884a4c9ce9a75bab62b

7 years agojni: Implement generic JNI support for @CriticalNative/@FastNative
Igor Murashkin [Tue, 13 Sep 2016 22:57:37 +0000 (15:57 -0700)]
jni: Implement generic JNI support for @CriticalNative/@FastNative

Also:
* Extend existing test cases to check generic JNI for the above.
* Re-enable previously blacklisted @CriticalNative JNI run-tests.

Bug: 31400248
Change-Id: I436ed00c8b8880e936a0c3483bc0dc251f0c0ce2

7 years agoMerge changes Id749f453,Ie3ce9dd8
Colin Cross [Tue, 20 Sep 2016 16:43:36 +0000 (16:43 +0000)]
Merge changes Id749f453,Ie3ce9dd8

* changes:
  Always run oatdumps tests
  Disable oatdumps device build

7 years agoMerge "Make javac always use Java 7 when running tests using javac and dx"
Nicolas Geoffray [Tue, 20 Sep 2016 16:41:24 +0000 (16:41 +0000)]
Merge "Make javac always use Java 7 when running tests using javac and dx"

7 years agoMerge "ARM: Use vstm/vldm for live floating point registers save/restore in SlowPathC...
Treehugger Robot [Tue, 20 Sep 2016 13:48:31 +0000 (13:48 +0000)]
Merge "ARM: Use vstm/vldm for live floating point registers save/restore in SlowPathCode."

7 years agoARM: Use vstm/vldm for live floating point registers save/restore in SlowPathCode.
Artem Serov [Fri, 15 Jul 2016 13:00:56 +0000 (14:00 +0100)]
ARM: Use vstm/vldm for live floating point registers save/restore in SlowPathCode.

Test: m test-art-target; m test-art-host

Change-Id: Id22271c572bb698728444bef90d5c7487ab84b1a

7 years agoMerge "ARM: Remove extra argument from RUNTIME_CURRENT uses."
Treehugger Robot [Tue, 20 Sep 2016 11:08:05 +0000 (11:08 +0000)]
Merge "ARM: Remove extra argument from RUNTIME_CURRENT uses."

7 years agoMerge "ARM: Use stm/ldm for live registers save/restore in SlowPathCode."
Treehugger Robot [Tue, 20 Sep 2016 10:36:22 +0000 (10:36 +0000)]
Merge "ARM: Use stm/ldm for live registers save/restore in SlowPathCode."

7 years agoARM: Remove extra argument from RUNTIME_CURRENT uses.
Vladimir Marko [Tue, 20 Sep 2016 09:18:53 +0000 (10:18 +0100)]
ARM: Remove extra argument from RUNTIME_CURRENT uses.

Missed this in
    https://android-review.googlesource.com/238842

Test: Manually invoke clang as specified in bug 31607479.
Test: Rely on TreeHugger for the rest.
Bug: 31607479
Bug: 29259539
Change-Id: I540f7dcfffec5acb33b91e2bb4e0bb64708378e0

7 years agoMake javac always use Java 7 when running tests using javac and dx
Søren Gjesse [Mon, 19 Sep 2016 09:12:51 +0000 (11:12 +0200)]
Make javac always use Java 7 when running tests using javac and dx

This adds "-source 1.7 -target 1.7" to JAVAC when --build-with-javac-dx
is specified.

Also make sure that dx is not run when --jvm is passed.

Test: art/test/run-test --host --build-with-javac-dx 003-omnibus-opcodes
Test: art/test/run-test --host --build-with-javac-dx 005-annotations
Test: art/test/run-test --host --build-with-javac-dx 023-many-interfaces
Test: art/test/run-test --host --build-with-javac-dx 056-const-string-jumbo
Test: art/test/run-test --host --build-with-javac-dx 091-override-package-private-method
Test: art/test/run-test --host --build-with-javac-dx 111-unresolvable-exception
Test: art/test/run-test --host --build-with-javac-dx 113-multidex
Test: art/test/run-test --host --build-with-javac-dx 124-missing-classes
Test: art/test/run-test --host --build-with-javac-dx 126-miranda-multidex
Test: art/test/run-test --host --build-with-javac-dx 127-checker-secondarydex
Test: art/test/run-test --host --build-with-javac-dx 131-structural-change
Test: art/test/run-test --host --build-with-javac-dx 138-duplicate-classes-check2
Test: art/test/run-test --host --build-with-javac-dx 303-verification-stress
Test: art/test/run-test --host --build-with-javac-dx 551-checker-shifter-operand
Test: art/test/run-test --host --build-with-javac-dx 555-checker-regression-x86const

Test: art/test/run-test --host 003-omnibus-opcodes
Test: art/test/run-test --host 005-annotations
Test: art/test/run-test --host 023-many-interfaces
Test: art/test/run-test --host 056-const-string-jumbo
Test: art/test/run-test --host 091-override-package-private-method
Test: art/test/run-test --host 111-unresolvable-exception
Test: art/test/run-test --host 113-multidex
Test: art/test/run-test --host 124-missing-classes
Test: art/test/run-test --host 126-miranda-multidex
Test: art/test/run-test --host 127-checker-secondarydex
Test: art/test/run-test --host 131-structural-change
Test: art/test/run-test --host 138-duplicate-classes-check2
Test: art/test/run-test --host 303-verification-stress
Test: art/test/run-test --host 551-checker-shifter-operand
Test: art/test/run-test --host 555-checker-regression-x86const

Test: art/test/run-test --jvm 003-omnibus-opcodes
Test: art/test/run-test --jvm 005-annotations
Test: art/test/run-test --jvm 023-many-interfaces
Test: art/test/run-test --jvm 056-const-string-jumbo
Test: art/test/run-test --jvm 091-override-package-private-method
Test: art/test/run-test --jvm 111-unresolvable-exception
Test: art/test/run-test --jvm 113-multidex
Test: art/test/run-test --jvm 124-missing-classes
Test: art/test/run-test --jvm 126-miranda-multidex
Test: art/test/run-test --jvm 127-checker-secondarydex
Test: art/test/run-test --jvm 131-structural-change
Test: art/test/run-test --jvm 138-duplicate-classes-check2
Test: art/test/run-test --jvm 303-verification-stress
Test: art/test/run-test --jvm 551-checker-shifter-operand
Test: art/test/run-test --jvm 555-checker-regression-x86const

Change-Id: I60f8a973c0dd425988abe55223bdef426c772b97

7 years agoMerge "Increase host frame size limit for SANITIZE_HOST"
Treehugger Robot [Tue, 20 Sep 2016 00:37:20 +0000 (00:37 +0000)]
Merge "Increase host frame size limit for SANITIZE_HOST"

7 years agoMerge "Integrate built-in bisection search with runtest"
Treehugger Robot [Tue, 20 Sep 2016 00:12:51 +0000 (00:12 +0000)]
Merge "Integrate built-in bisection search with runtest"

7 years agoMerge "Shorten long test names"
Aart Bik [Mon, 19 Sep 2016 23:35:23 +0000 (23:35 +0000)]
Merge "Shorten long test names"

7 years agoShorten long test names
Wojciech Staszkiewicz [Mon, 19 Sep 2016 17:06:09 +0000 (10:06 -0700)]
Shorten long test names

Long Android.run-test.mk targets cause testing framework to
misbehave. Issues occur in no-prebuild mode when --output-path
parameter generated by the make system is too long. When this
happens oat generation fails silently in oat_file_assistant.cc
during creation of empty vdex and oat files.

Creation fails because file names, which are as long as absolute path
to source dex file, are longer than 255 characters Linux file name
limit.

Because oat generation fails silently affected tests pass even though
they were effectively ran in interpreter mode, instead of intended
default mode.

This CL shortens test names to be at most 35 characters. This helps
make the tests more reliable.

Test: m test-art-run-test
Bug: 31597671
Change-Id: Ic68408ae0c98ffca0c64ca4f5535f4e683a296f0

7 years agoIntegrate built-in bisection search with runtest
Wojciech Staszkiewicz [Thu, 1 Sep 2016 21:43:39 +0000 (14:43 -0700)]
Integrate built-in bisection search with runtest

Adds a --bisection-search switch to run-test. When this switch
is enabled run-test performs bisection bug search for nonchecker
failing tests attempting to find faulty method and optimization.

Adds ART_TEST_BISECTION flag support to Android.run-test.mk.
When this flag is set to true, run-test will run in bisection
search mode.

Bisection search works in no-prebuild mode only.

Test: ART_TEST_BISECTION=true m test-art-run-test

Change-Id: Id2d664a0b35fed366f50a60ce96f1ca6bd123cd4

7 years agoAlways run oatdumps tests
Colin Cross [Mon, 19 Sep 2016 20:02:47 +0000 (13:02 -0700)]
Always run oatdumps tests

ART_BUILD_HOST_STATIC is meaningless now, the static tools are always
available.  Add oatdumpds as a dependency of the host oatdump tests, and
always enable the oatdump static tests.

Test: m -j test-art-host-gtest-oatdump_test
Change-Id: Id749f453f82489dc81a2c9042d3cc3120ea3d308

7 years agoIncrease host frame size limit for SANITIZE_HOST
Colin Cross [Mon, 19 Sep 2016 19:25:31 +0000 (12:25 -0700)]
Increase host frame size limit for SANITIZE_HOST

When SANITIZE_HOST=address, art/test/137-cfi/cfi.cc fails with:
error: stack frame size of 1944 bytes in function 'Java_Main_unwindInProcess'
Increase the frame size when SANITIZE_HOST is set, the same way it is
increased for device builds.

Test: m -j libarttest SANITIZE_HOST=address
Test: run-test --host 137
Change-Id: I08d8492e6629159b0e0306cb9499debbe6bb865c

7 years agoDisable oatdumps device build
Colin Cross [Mon, 19 Sep 2016 19:57:18 +0000 (12:57 -0700)]
Disable oatdumps device build

oatdumps is only supposed to build for the host.

Test: mmma -j art
Change-Id: Ie3ce9dd8340bfc226e7f3125491875f9c18b388a

7 years agoMerge "Improve sharpening for read barrier image HLoadClass"
Treehugger Robot [Mon, 19 Sep 2016 20:04:19 +0000 (20:04 +0000)]
Merge "Improve sharpening for read barrier image HLoadClass"

7 years agoMerge "Fix mac build"
Treehugger Robot [Mon, 19 Sep 2016 19:47:40 +0000 (19:47 +0000)]
Merge "Fix mac build"

7 years agoMerge "Revert "Revert "test: Remove icu cleanup hack"""
Treehugger Robot [Mon, 19 Sep 2016 18:28:07 +0000 (18:28 +0000)]
Merge "Revert "Revert "test: Remove icu cleanup hack"""

7 years agoFix mac build
Colin Cross [Mon, 19 Sep 2016 17:40:05 +0000 (10:40 -0700)]
Fix mac build

Move darwin disabling to art_test_defaults to disable mac build for
libarttest.

Test: mmma -j art on mac
Change-Id: I972245ddbacea274087d9231e4788bd9f2d6fe6b

7 years agoImprove sharpening for read barrier image HLoadClass
Mathieu Chartier [Fri, 16 Sep 2016 21:16:42 +0000 (14:16 -0700)]
Improve sharpening for read barrier image HLoadClass

Handle MarkInBoot image for LoadKind::kReferrersClass. This reduces
read barriers for the boot image if the referring class is in
the boot image.

Only really helps CC case, TODO avoid doing the work for non CC?

ARM64 CC baker boot.oat: 48006064 -> 47916736

Bug: 29516974

Test: test-art-host CC baker

Change-Id: Ibfa0cf0a3b888ad0e53c2d95a38e330b79e7443c

7 years agoMerge "Ensure class is initialized when reading its fields from debugger."
Treehugger Robot [Mon, 19 Sep 2016 17:34:41 +0000 (17:34 +0000)]
Merge "Ensure class is initialized when reading its fields from debugger."

7 years agoMerge "Convert art runtests to Android.bp"
Colin Cross [Mon, 19 Sep 2016 17:12:37 +0000 (17:12 +0000)]
Merge "Convert art runtests to Android.bp"

7 years agoConvert art runtests to Android.bp
Colin Cross [Fri, 16 Sep 2016 20:47:21 +0000 (13:47 -0700)]
Convert art runtests to Android.bp

Build the art runtest libraries with Android.bp.  The host test
libraries move from out/host/linux-x86/lib[64] to
out/host/linux-x86/nativetest[64], and the device test libraires from
/data/artest/${TARGET_ARCH} to /data/nativetest[64]/art/${TARGET_ARCH},
which requires adding nativetest to the library search path, and fixing
some tests to support multiple entries in library search paths.

Test: m -j test-art-host
Test: m -j test-art-target
Change-Id: I2118a3292f22f275954ddd7cdd4e12287fe47808

7 years agoMerge "Remove the `CanTriggerGC` side-effects on a few instructions."
Roland Levillain [Mon, 19 Sep 2016 16:59:14 +0000 (16:59 +0000)]
Merge "Remove the `CanTriggerGC` side-effects on a few instructions."

7 years agoRevert "Revert "test: Remove icu cleanup hack""
Igor Murashkin [Mon, 19 Sep 2016 16:12:22 +0000 (16:12 +0000)]
Revert "Revert "test: Remove icu cleanup hack""

This reverts commit 3c73829dbd9993b821171cdfe604d69a8330a20b.

Change-Id: Ib911f65456f522d0d8ac732aa3fa646217f126ca

7 years agoMerge "Include `nodes.h` in `nodes_shared.h` to help editing tools."
Treehugger Robot [Mon, 19 Sep 2016 16:06:00 +0000 (16:06 +0000)]
Merge "Include `nodes.h` in `nodes_shared.h` to help editing tools."

7 years agoMerge "Minor induction variable analysis changes."
Aart Bik [Mon, 19 Sep 2016 15:11:36 +0000 (15:11 +0000)]
Merge "Minor induction variable analysis changes."

7 years agoMerge "ARM: VIXL32: Implement a disassembler."
Roland Levillain [Mon, 19 Sep 2016 14:17:04 +0000 (14:17 +0000)]
Merge "ARM: VIXL32: Implement a disassembler."

7 years agoARM: Use stm/ldm for live registers save/restore in SlowPathCode.
Artem Serov [Mon, 11 Jul 2016 09:41:45 +0000 (10:41 +0100)]
ARM: Use stm/ldm for live registers save/restore in SlowPathCode.

In case when there is more than 4 register to save/restore in the
SlowPathCode stm/ldm can save some code size.

Test: m test-art-target; m test-art-host

Change-Id: I2d5b44bab58b67207105302cd7d8ee3300b9040a

7 years agoInclude `nodes.h` in `nodes_shared.h` to help editing tools.
Alexandre Rames [Mon, 19 Sep 2016 12:56:18 +0000 (13:56 +0100)]
Include `nodes.h` in `nodes_shared.h` to help editing tools.

This include does not change anything to compilation, but it helps
editing tools (e.g. YouCompleteMe) to show proper error messages when
editing that file.

Test: mma -j40

Change-Id: I5ebd03040cfc90daa41faf85f273a86525207f19

7 years agoRemove the `CanTriggerGC` side-effects on a few instructions.
Alexandre Rames [Mon, 19 Sep 2016 12:54:30 +0000 (13:54 +0100)]
Remove the `CanTriggerGC` side-effects on a few instructions.

The side-effect was specified for these instructions as they call
runtime. We now have a list of entrypoints that we know cannot trigger
GC. We can avoid requiring the side-effect for those.

Test: Run ART test suite on Nexus 5X and host.

Change-Id: I0e0e6a4d701ce6c75aff486cb0d1bc7fe2e8dda4

7 years agoMerge "MIPS64: Fix overlapping use of "in" & "out" registers."
Nicolas Geoffray [Mon, 19 Sep 2016 12:38:05 +0000 (12:38 +0000)]
Merge "MIPS64: Fix overlapping use of "in" & "out" registers."

7 years agoMerge "Move ART_HOST_TEST_DIR to Android.common_test.mk"
Treehugger Robot [Mon, 19 Sep 2016 11:41:32 +0000 (11:41 +0000)]
Merge "Move ART_HOST_TEST_DIR to Android.common_test.mk"

7 years agoMerge "MIPS32: Improve storing of constants in fields and array elements"
Treehugger Robot [Mon, 19 Sep 2016 09:20:18 +0000 (09:20 +0000)]
Merge "MIPS32: Improve storing of constants in fields and array elements"

7 years agoMerge "Revert "test: Remove icu cleanup hack""
Treehugger Robot [Mon, 19 Sep 2016 08:30:51 +0000 (08:30 +0000)]
Merge "Revert "test: Remove icu cleanup hack""

7 years agoRevert "test: Remove icu cleanup hack"
Colin Cross [Sun, 18 Sep 2016 00:27:24 +0000 (17:27 -0700)]
Revert "test: Remove icu cleanup hack"

This reverts commit d4b294c14bd4e1654b276b931ee035b895b8e6cd.
Without this hack, the gCommonICUDataArray seems to
non-deterministically accumulate entries, and sometimes overflows,
causing test failures.

Bug: 31469648
Test: gdb /data/nativetest64/art/arm64/art_runtime_compiler_tests/reflection_test
Change-Id: Ie5a5b7b957de79758a227bfd2919b4cd0155cde8

7 years agoMerge "Remove TypeLookupTable from DexFile."
Treehugger Robot [Sat, 17 Sep 2016 20:29:44 +0000 (20:29 +0000)]
Merge "Remove TypeLookupTable from DexFile."

7 years agoMerge "Fix 2ND arch gtest testing."
Nicolas Geoffray [Sat, 17 Sep 2016 13:39:09 +0000 (13:39 +0000)]
Merge "Fix 2ND arch gtest testing."

7 years agoMove ART_HOST_TEST_DIR to Android.common_test.mk
Dan Willemsen [Sat, 17 Sep 2016 00:11:36 +0000 (17:11 -0700)]
Move ART_HOST_TEST_DIR to Android.common_test.mk

I'm improving Kati's re-run detection, and this $(shell echo $$PPID) now
now causes us to reparse all of the makefiles every time, since it
really does change on each execution. But if you aren't running the ART
tests, this doesn't actually get used.

So punt this over to only executing when you're including the test
runner -- it's not ideal, since you'll be reparsing the makefiles every
time you want to run the tests. Depending on the desired behavior, this
should be able to be implemented without depending on the PID of Kati,
or the test runner can be moved out of the build system, since most of
the builds here have moved to Soong now.

Bug: 30947985
Test: Compare build.ninja before and after this change, only change is
      the valgrind-test-art-target* targets.
Test: m -j test-art-host
Change-Id: Ibbc0f20e407bf70bce64d3428be5808d78bdaf91

7 years agoRemove TypeLookupTable from DexFile.
David Sehr [Fri, 16 Sep 2016 01:13:52 +0000 (18:13 -0700)]
Remove TypeLookupTable from DexFile.

One more step towards removing runtime dependencies from the DexFile
API.  This severs the ties to OatFile.  Work remains to move MemMap out
of DexFile.

Bug: 22322814
Change-Id: I29e7ad8fd292c7919ed2689dc754b958b88d6819
Test: test-art-host

7 years agoMinor induction variable analysis changes.
Aart Bik [Fri, 16 Sep 2016 17:15:19 +0000 (10:15 -0700)]
Minor induction variable analysis changes.

Rationale:
Few extra comments, added replacement of loop control functionality.
All in preparation of bigger loop optimizations CL.

Change-Id: Ie2243c3c8b57b2901654b05fb200e9d80a0cb641
Test: test-art

7 years agoMerge "Add a comment to dex2oat's parent pid logging"
Aart Bik [Fri, 16 Sep 2016 21:30:54 +0000 (21:30 +0000)]
Merge "Add a comment to dex2oat's parent pid logging"

7 years agoFix 2ND arch gtest testing.
Nicolas Geoffray [Fri, 16 Sep 2016 15:41:43 +0000 (16:41 +0100)]
Fix 2ND arch gtest testing.

Change-Id: I944feac324c49a95904f69d7b03b072e7150c134

7 years agoMerge "Fix a deadlock in the CC collector."
Treehugger Robot [Fri, 16 Sep 2016 17:59:09 +0000 (17:59 +0000)]
Merge "Fix a deadlock in the CC collector."

7 years agoMerge "Move art::Runtime::InitZygote logic from art into frameworks/base."
Treehugger Robot [Fri, 16 Sep 2016 17:23:41 +0000 (17:23 +0000)]
Merge "Move art::Runtime::InitZygote logic from art into frameworks/base."

7 years agoMerge "x86/x86-64: Simplify codegen using helper functions."
Treehugger Robot [Fri, 16 Sep 2016 17:07:31 +0000 (17:07 +0000)]
Merge "x86/x86-64: Simplify codegen using helper functions."

7 years agoMerge "Fix build for VerifierDeps gtest on target"
Treehugger Robot [Fri, 16 Sep 2016 17:05:16 +0000 (17:05 +0000)]
Merge "Fix build for VerifierDeps gtest on target"

7 years agoARM: VIXL32: Implement a disassembler.
Anton Kirilov [Tue, 6 Sep 2016 12:01:03 +0000 (13:01 +0100)]
ARM: VIXL32: Implement a disassembler.

Test: m test-art-host
Test: m test-art-target
Test: manual comparison with the previous oatdump output
Change-Id: I21ae26406200e455b8b036f53d585ea0b1bd11be

7 years agox86/x86-64: Simplify codegen using helper functions.
Vladimir Marko [Fri, 16 Sep 2016 10:32:36 +0000 (11:32 +0100)]
x86/x86-64: Simplify codegen using helper functions.

Simplify comparisons and array element address calculations.

Test: m test-art-host
Change-Id: I2a3f54a3638cf4c24d9e3cac83daba47f0723f72

7 years agoFix build for VerifierDeps gtest on target
David Brazdil [Fri, 16 Sep 2016 15:33:31 +0000 (16:33 +0100)]
Fix build for VerifierDeps gtest on target

Forgot to specify the target for the .jar file.

Bug: 30937355
Change-Id: Id44bdeb91474d8acfdf9e9144da9a4c9f4c6cf55

7 years agoMerge "Implement VerifierDeps encoding/decoding"
Treehugger Robot [Fri, 16 Sep 2016 13:37:32 +0000 (13:37 +0000)]
Merge "Implement VerifierDeps encoding/decoding"

7 years agoMerge "Add a phony target for golem."
Nicolas Geoffray [Fri, 16 Sep 2016 11:44:23 +0000 (11:44 +0000)]
Merge "Add a phony target for golem."

7 years agoAdd a phony target for golem.
Nicolas Geoffray [Fri, 16 Sep 2016 11:28:12 +0000 (12:28 +0100)]
Add a phony target for golem.

To cut down on the size of the build.

Change-Id: Ic7dce1f8b73cf234c3e0163a0c03c7e19d9b02e1

7 years agoMerge "Collect verifier dependencies"
Treehugger Robot [Fri, 16 Sep 2016 11:02:13 +0000 (11:02 +0000)]
Merge "Collect verifier dependencies"

7 years agoImplement VerifierDeps encoding/decoding
David Brazdil [Wed, 14 Sep 2016 10:55:26 +0000 (11:55 +0100)]
Implement VerifierDeps encoding/decoding

This patch implements serialization and deserialization of the data
recorded by VerifierDeps.

Test: m test-art-host-gtest-verifier_deps_test
Bug: 30937355
Change-Id: I19320b8e70d5c5128653d09a5cdb5b6f677a2f2d

7 years agoCollect verifier dependencies
David Brazdil [Tue, 6 Sep 2016 13:04:48 +0000 (14:04 +0100)]
Collect verifier dependencies

MethodVerifier tests whether a DEX method is valid w.r.t. the classes
in class path. Since the APK does not change across OTA updates, it
is not necessary to analyze the bytecode again with MethodVerifier,
as long as its dependencies on the class path (which may have changed)
are satisfied.

This patch introduces VerifierDeps, a class path dependency collector,
and adds hooks into MethodVerifier where classes/methods/fields are
resolved and where assignability of types is tested.

Test: m test-art-host-gtest-verifier_deps_test
Bug: 30937355
Change-Id: Iee0b321d772a5c7d1cb471aaa6e13918310b7e2f

7 years agoMerge "test: Remove icu cleanup hack"
Treehugger Robot [Fri, 16 Sep 2016 08:04:15 +0000 (08:04 +0000)]
Merge "test: Remove icu cleanup hack"

7 years agoMerge "Fix 32-bit device tests"
Nicolas Geoffray [Fri, 16 Sep 2016 07:57:14 +0000 (07:57 +0000)]
Merge "Fix 32-bit device tests"

7 years agoMerge "Fix HOST_PREFER_32_BITS tests"
Nicolas Geoffray [Fri, 16 Sep 2016 07:55:57 +0000 (07:55 +0000)]
Merge "Fix HOST_PREFER_32_BITS tests"

7 years agoFix 32-bit device tests
Colin Cross [Fri, 16 Sep 2016 04:07:29 +0000 (21:07 -0700)]
Fix 32-bit device tests

32-bit tests are installed to /data/nativetest, not /data/nativetest32.

Test: m -j test-art-target-gtest32
Change-Id: I2736d6783dd34550dbfbbe54ffa724cd2b886d8b

7 years agoFix HOST_PREFER_32_BITS tests
Colin Cross [Fri, 16 Sep 2016 03:57:47 +0000 (20:57 -0700)]
Fix HOST_PREFER_32_BITS tests

When HOST_PREFER_32_BITS is set, HOST_ARCH is still x86_64 but art tests
are only built for x86.  Use ART_HOST_ARCH, which will be set to x86,
to find the list of host tests.

Test: m -j HOST_PREFER_32_BITS=true test-art-host-gtest32
Change-Id: I11a9e1b5111c3c06139b44e364fdcd04bb8db4c6

7 years agoMIPS32: Improve storing of constants in fields and array elements
Alexey Frunze [Sat, 3 Sep 2016 05:14:06 +0000 (22:14 -0700)]
MIPS32: Improve storing of constants in fields and array elements

Test: booted MIPS32 in QEMU
Test: test-art-target-run-test-optimizing on CI20
Test: test-art-host-gtest

Change-Id: Ifcf8c1e215e3768711c391e8da6f663bba71f8d9

7 years agoEnsure class is initialized when reading its fields from debugger.
Jeff Hao [Wed, 14 Sep 2016 22:56:35 +0000 (15:56 -0700)]
Ensure class is initialized when reading its fields from debugger.

Bug: 31016523
Test: mm run-jdwp-tests-ri & mm run-jdwp-tests-host
Change-Id: I6bccf8464de7ec1e0c1fdac862cbacf890abede6

7 years agoFix a deadlock in the CC collector.
Hiroshi Yamauchi [Thu, 15 Sep 2016 02:31:25 +0000 (19:31 -0700)]
Fix a deadlock in the CC collector.

Fix a deadlock between CC GC disabling system weaks and thread attach.

See 31500969#2 for more details.

Bug: 31500969
Bug: 12687968
Test: test-art-host with CC. N9 libartd boot. Ritz EAAC.
Change-Id: Ic9a8bfb1c636643a03f4580b811fe890273576b6

7 years agoMerge "Fix mac build"
Treehugger Robot [Fri, 16 Sep 2016 00:57:34 +0000 (00:57 +0000)]
Merge "Fix mac build"

7 years agoMerge "Avoid using memcpy for object header in ConcurrentCopying::Copy"
Mathieu Chartier [Thu, 15 Sep 2016 23:41:17 +0000 (23:41 +0000)]
Merge "Avoid using memcpy for object header in ConcurrentCopying::Copy"

7 years agoFix mac build
Colin Cross [Thu, 15 Sep 2016 23:24:51 +0000 (16:24 -0700)]
Fix mac build

I accidentally dropped the hunks that disabled the mac build when
rebasing.

Change-Id: I412325f71c4bfde7a357b50daeb966e6db32c388

7 years agoAvoid using memcpy for object header in ConcurrentCopying::Copy
Mathieu Chartier [Thu, 15 Sep 2016 20:12:47 +0000 (13:12 -0700)]
Avoid using memcpy for object header in ConcurrentCopying::Copy

Memcpy can do per byte copy, this occasionally caused tearing in
the lockword when read from the source resulting in incorrect
values.

Test: test-art-host CC baker

Bug: 31423258
Change-Id: I13f856835125a3aa331530fb1f16db45d1955c8a

7 years agoMerge changes from topic 'art_tests'
Colin Cross [Thu, 15 Sep 2016 21:47:07 +0000 (21:47 +0000)]
Merge changes from topic 'art_tests'

* changes:
  Convert art gtests to Android.bp
  Convert libart-gtest to Android.bp

7 years agoMerge "Fix run_java_fuzz_test.py imports"
Treehugger Robot [Thu, 15 Sep 2016 21:29:35 +0000 (21:29 +0000)]
Merge "Fix run_java_fuzz_test.py imports"

7 years agoAdd a comment to dex2oat's parent pid logging
Wojciech Staszkiewicz [Thu, 15 Sep 2016 17:30:30 +0000 (10:30 -0700)]
Add a comment to dex2oat's parent pid logging

Adds a comment explaining why we are logging parent pid in dex2oat.

Test: mm -j
Change-Id: I6ed56bb9315a264e8f3d98777e616c4c9e544506

7 years agoMerge "Minor edits in javafuzz"
Treehugger Robot [Thu, 15 Sep 2016 19:42:30 +0000 (19:42 +0000)]
Merge "Minor edits in javafuzz"

7 years agoFix run_java_fuzz_test.py imports
Wojciech Staszkiewicz [Thu, 15 Sep 2016 18:41:16 +0000 (11:41 -0700)]
Fix run_java_fuzz_test.py imports

Make imports works independently of directory the tool is called
from.

Test: run_java_fuzz_test.py

Change-Id: I28cd875948e3e5e58358ecfd6f41e63b808172c9

7 years agoConvert art gtests to Android.bp
Colin Cross [Mon, 12 Sep 2016 22:37:10 +0000 (15:37 -0700)]
Convert art gtests to Android.bp

This splits the compilation and running of the art gtests into two
separate locations.  The tests are now compiled in multiple Android.bp
modules in each directory.  art.go collects the installed locations of
each test and exports it as make variables.  art/build/Android.gtest.mk
converts the list into the rules to run the tests.

This has a few changes in behavior:
  - The rules to build tests are now always defined, and will build as
    part of mmma art or make checkbuild.
  - Host tests are no longer installed into out/host/linux-x86/bin, they
    are in out/host/linux-x86/nativetest[64]/<module name>/<test name>
  - Target tests are now in
    /data/nativetest[64]/art/<arch>/<module name>/<test name>

Test: mmma -j art
Test: m -j test-art-host
Test: m -j test-art-target
Change-Id: Iabcd99d43890e6b693688422b07a283c3226a496

7 years agoConvert libart-gtest to Android.bp
Colin Cross [Mon, 12 Sep 2016 21:35:39 +0000 (14:35 -0700)]
Convert libart-gtest to Android.bp

Change-Id: Ibea17e3e002e6ad3f82158cd3c69d087fa9b15c9

7 years agoMerge "Fix google-explicit-constructor warnings in art."
Chih-hung Hsieh [Thu, 15 Sep 2016 18:16:43 +0000 (18:16 +0000)]
Merge "Fix google-explicit-constructor warnings in art."

7 years agoMinor edits in javafuzz
Aart Bik [Thu, 15 Sep 2016 17:42:02 +0000 (10:42 -0700)]
Minor edits in javafuzz

Rationale:
Missing newline in run script. Updated README with caps for args.

Change-Id: Ic8a46ab5812049401c00d7d37119bfc4034fe2d6
Tests: run_java_fuzz_test.py

7 years agoMerge "Fix moving GC bugs in entrypoints"
Mathieu Chartier [Thu, 15 Sep 2016 17:53:12 +0000 (17:53 +0000)]
Merge "Fix moving GC bugs in entrypoints"

7 years agoMIPS64: Fix overlapping use of "in" & "out" registers.
Chris Larsen [Wed, 14 Sep 2016 22:41:29 +0000 (15:41 -0700)]
MIPS64: Fix overlapping use of "in" & "out" registers.

Test: Boot MIPS64 QEMU
Test: 568-checker-onebit

Change-Id: Ifc89fd8df674b1f3ffcdde52256a35b4a3562d45

7 years agoMerge "Added ability to generate last-value of linear induction. Also added utility...
Treehugger Robot [Thu, 15 Sep 2016 17:34:22 +0000 (17:34 +0000)]
Merge "Added ability to generate last-value of linear induction. Also added utility to update fetches in induction nodes."

7 years agoMerge "Integrate bisection search with javafuzz"
Treehugger Robot [Thu, 15 Sep 2016 17:15:50 +0000 (17:15 +0000)]
Merge "Integrate bisection search with javafuzz"

7 years agoMerge "ARM: Try to emit branches early to save memory."
Treehugger Robot [Thu, 15 Sep 2016 16:25:58 +0000 (16:25 +0000)]
Merge "ARM: Try to emit branches early to save memory."

7 years agoFix google-explicit-constructor warnings in art.
Chih-Hung Hsieh [Thu, 1 Sep 2016 22:08:13 +0000 (15:08 -0700)]
Fix google-explicit-constructor warnings in art.

* Add explicit keyword to conversion constructors,
  or NOLINT for implicit converters.
Bug: 28341362
Test: build with WITH_TIDY=1

Change-Id: I1e1ee2661812944904fedadeff97b620506db47d

7 years agoAdded ability to generate last-value of linear induction.
Aart Bik [Fri, 9 Sep 2016 17:33:50 +0000 (10:33 -0700)]
Added ability to generate last-value of linear induction.
Also added utility to update fetches in induction nodes.

Rationale:
This is a first step towards the larger CL that introduces
a new loop optimization framework in the optimizing compiler
(see https://android-review.googlesource.com/#/c/271392/3).

Change-Id: Ibecd674c8146d9665340e68718c498555646129a
Tests: induction_var_range_test

7 years agoARM: Try to emit branches early to save memory.
Vladimir Marko [Tue, 13 Sep 2016 14:11:50 +0000 (15:11 +0100)]
ARM: Try to emit branches early to save memory.

Try to emit unexpanded branches when binding a Label to
reduce the memory needed for Fixup dependencies. We use
a simple heuristic to limit the time we spend trying
but this heuristic is enough to resolve all branches in
the emitted String.equals() intrinsic.

Test: Run ART test suite on host and Nexus 6.
Test: Manually check memory usage for a certain apk.
Bug: 28603175
Change-Id: I362e07c2c1285ff609cf8df0a00b6b420729b9ce

7 years agoMerge "Revert "Revert "Re-apply "Cleanup run-test and Makefile around boot image...
Nicolas Geoffray [Thu, 15 Sep 2016 11:42:30 +0000 (11:42 +0000)]
Merge "Revert "Revert "Re-apply "Cleanup run-test and Makefile around boot image and PIC.""""

7 years agoMerge "MIPS: Enable the ComparisonsLong test in the code generator test."
Treehugger Robot [Thu, 15 Sep 2016 10:46:43 +0000 (10:46 +0000)]
Merge "MIPS: Enable the ComparisonsLong test in the code generator test."

7 years agoRevert "Revert "Re-apply "Cleanup run-test and Makefile around boot image and PIC."""
Nicolas Geoffray [Wed, 14 Sep 2016 12:33:34 +0000 (12:33 +0000)]
Revert "Revert "Re-apply "Cleanup run-test and Makefile around boot image and PIC."""

This reverts commit 8522758c5ef6050e355613630ff81c2b49373b44.

Change-Id: Ie18417bd3d528673e3da39d92f43f20b853facda

7 years agoMerge "Add missing OVERRIDE qualifiers in code generators."
Roland Levillain [Thu, 15 Sep 2016 09:21:20 +0000 (09:21 +0000)]
Merge "Add missing OVERRIDE qualifiers in code generators."

7 years agoMerge "Move ArrayRef to runtime/base"
David Brazdil [Thu, 15 Sep 2016 09:14:49 +0000 (09:14 +0000)]
Merge "Move ArrayRef to runtime/base"

7 years agoMerge "Fix dexlist_test"
Treehugger Robot [Thu, 15 Sep 2016 09:09:34 +0000 (09:09 +0000)]
Merge "Fix dexlist_test"

7 years agoMerge "Log PPID when running dex2oat"
Treehugger Robot [Thu, 15 Sep 2016 01:23:13 +0000 (01:23 +0000)]
Merge "Log PPID when running dex2oat"

7 years agoFix dexlist_test
Colin Cross [Wed, 14 Sep 2016 20:07:27 +0000 (13:07 -0700)]
Fix dexlist_test

xbin is deprecated, dexlist installs to /system/bin now.

Bug: 31469510
Test: m test-art-target-gtest-dexlist_test
Change-Id: I352ae9eaaf2f9e4ce6682c5022c138b07d29ccca

7 years agoFix moving GC bugs in entrypoints
Mathieu Chartier [Tue, 13 Sep 2016 20:41:24 +0000 (13:41 -0700)]
Fix moving GC bugs in entrypoints

In FindMethodFromCode, there was missing handles for objects used
after a suspend point (ResolveType).

For check_jni, JniMethodEndWithReferenceHandleResult did not
handlarize the return value when calling CheckReferenceResult.

For CheckReferenceResult, the argument was not in a handle.

Bug: 31458474
Change-Id: I06617fc63f1fb63d7c13ad4245223a8c54fa4b98

7 years agoLog PPID when running dex2oat
Wojciech Staszkiewicz [Tue, 13 Sep 2016 19:06:36 +0000 (12:06 -0700)]
Log PPID when running dex2oat

Log parent's pid in dex2oat. Logging happens only in verbose
compiler mode.

This can be used to find out which process executed a dex2oat
instance.

Test: m test-art-host
Change-Id: I49a139ed39a2454649f21275d6be860cbab96f55

7 years agoMIPS: Enable the ComparisonsLong test in the code generator test.
Alexey Frunze [Wed, 14 Sep 2016 22:52:03 +0000 (15:52 -0700)]
MIPS: Enable the ComparisonsLong test in the code generator test.

Test: test-art-host-gtest-codegen_test
Test: test-art-target-gtest-codegen_test (MIPS32R2 & R6, MIPS64)

Change-Id: Ieae0fdb2ed30f262baac0eb7c6b658341c511a47