OSDN Git Service

android-x86/art.git
7 years agoMerge "Remove unneeded build files"
Treehugger Robot [Thu, 16 Feb 2017 02:01:38 +0000 (02:01 +0000)]
Merge "Remove unneeded build files"

7 years agoMerge "Revert "Add test for changing annotations.""
Alex Light [Thu, 16 Feb 2017 01:12:54 +0000 (01:12 +0000)]
Merge "Revert "Add test for changing annotations.""

7 years agoRevert "Add test for changing annotations."
Alex Light [Thu, 16 Feb 2017 01:10:51 +0000 (01:10 +0000)]
Revert "Add test for changing annotations."

This reverts commit 701fc35b59d7d3eb33fb5d3cc90b14d29726ca66.

Reason for revert: annotation order is affected by configuration for some reason!

Change-Id: Ice1406ff41b704915f981d8d379ced9d0793a822
Test: revert

7 years agoMerge "ART: Remove unintended debug logging"
Treehugger Robot [Thu, 16 Feb 2017 01:06:14 +0000 (01:06 +0000)]
Merge "ART: Remove unintended debug logging"

7 years agoMerge "Add jni_libraries_lock_ to expected_mutexes_on_weak_ref_access_."
Hiroshi Yamauchi [Thu, 16 Feb 2017 00:46:55 +0000 (00:46 +0000)]
Merge "Add jni_libraries_lock_ to expected_mutexes_on_weak_ref_access_."

7 years agoMerge "Clean up profman arg checking"
David Sehr [Wed, 15 Feb 2017 23:37:07 +0000 (23:37 +0000)]
Merge "Clean up profman arg checking"

7 years agoMerge "cpp-define-generator: presubmit hook prints better error message"
Treehugger Robot [Wed, 15 Feb 2017 23:08:50 +0000 (23:08 +0000)]
Merge "cpp-define-generator: presubmit hook prints better error message"

7 years agoMerge "Add test for changing annotations."
Treehugger Robot [Wed, 15 Feb 2017 23:05:23 +0000 (23:05 +0000)]
Merge "Add test for changing annotations."

7 years agoAdd jni_libraries_lock_ to expected_mutexes_on_weak_ref_access_.
Hiroshi Yamauchi [Wed, 15 Feb 2017 22:41:26 +0000 (14:41 -0800)]
Add jni_libraries_lock_ to expected_mutexes_on_weak_ref_access_.

Fix a DCHECK failure where jni_libraries_lock_ is unexpectedly held
during a weak ref access.

Bug: 35360959
Test: test-art-host
Change-Id: Ief9e97c03cdff7f350e739f1004925a3689ecaf2

7 years agoART: Remove unintended debug logging
Andreas Gampe [Wed, 15 Feb 2017 22:40:55 +0000 (14:40 -0800)]
ART: Remove unintended debug logging

Test: m
Change-Id: Id6085215d8a9e2d22454894adc3c1e9923e54611

7 years agocpp-define-generator: presubmit hook prints better error message
Igor Murashkin [Wed, 15 Feb 2017 21:05:59 +0000 (13:05 -0800)]
cpp-define-generator: presubmit hook prints better error message

Test: cd art && ../tools/repohooks/pre-upload.py
Bug: 35381554
Change-Id: Ia8536631c8c3117aeb0bf79862757717842b3a2b

7 years agoMerge "ART: Add currentThread cutout to Unstarted Runtime"
Treehugger Robot [Wed, 15 Feb 2017 21:02:26 +0000 (21:02 +0000)]
Merge "ART: Add currentThread cutout to Unstarted Runtime"

7 years agoAdd test for changing annotations.
Alex Light [Tue, 14 Feb 2017 21:27:43 +0000 (13:27 -0800)]
Add test for changing annotations.

Also remove the LOG(WARNING) about not checking for annotations
changes since it doesn't seem the RI checks for this either.

Test: mma -j40 test-art-host
Change-Id: I4b3a2bc9ef6eab6e76dd4ebcea46d968b49ca9dc

7 years agoMerge "Check for duplicate entries when using dexlayout"
Treehugger Robot [Wed, 15 Feb 2017 20:17:25 +0000 (20:17 +0000)]
Merge "Check for duplicate entries when using dexlayout"

7 years agoMerge "Testrunner: Handle case when test_info line exceeds console length"
Shubham Ajmera [Wed, 15 Feb 2017 19:50:10 +0000 (19:50 +0000)]
Merge "Testrunner: Handle case when test_info line exceeds console length"

7 years agoMerge "Add miscellaneous tests for class redefinition."
Treehugger Robot [Wed, 15 Feb 2017 19:31:27 +0000 (19:31 +0000)]
Merge "Add miscellaneous tests for class redefinition."

7 years agoMerge "Use GetPeerFromOtherThread in debugger."
Nicolas Geoffray [Wed, 15 Feb 2017 19:18:05 +0000 (19:18 +0000)]
Merge "Use GetPeerFromOtherThread in debugger."

7 years agoUse GetPeerFromOtherThread in debugger.
Nicolas Geoffray [Wed, 15 Feb 2017 18:27:34 +0000 (18:27 +0000)]
Use GetPeerFromOtherThread in debugger.

Test: run-jdwp-tests.sh --mode=host --variant=X64 --debug
Change-Id: I6b92153752becbad04563d96b824a06c002f8392

7 years agoTestrunner: Handle case when test_info line exceeds console length
Shubham Ajmera [Wed, 15 Feb 2017 18:49:10 +0000 (18:49 +0000)]
Testrunner: Handle case when test_info line exceeds console length

Case when invoked without verbose, testrunner will not print test_info
exceeding the width of the console. It will shrink down the test_name to
meet the requirement.

Test: Verified by locally running the test
Change-Id: Ibc8dff32e79818f7ac72322e5db01218343f3845

7 years agoMerge "ART: Regenerate test data for 952."
Treehugger Robot [Wed, 15 Feb 2017 18:52:30 +0000 (18:52 +0000)]
Merge "ART: Regenerate test data for 952."

7 years agoCheck for duplicate entries when using dexlayout
Mathieu Chartier [Wed, 15 Feb 2017 01:12:20 +0000 (17:12 -0800)]
Check for duplicate entries when using dexlayout

The previous approach always inserted in the CollectionMap. This did
not work correctly if two different objects had the same offset. Since
we constructed a unique_ptr of the object, it would simply get freed
if the insert failed because there was already an object with the same
offset.

This meant that there were some use after free errors for these
objects.

Test: dexlayout -a -b hulu.apk

Bug: 35305951
Change-Id: I217e6d83bf6e051b13b1a601ec25512f40593880

7 years agoMerge "Testrunner: Accept test_name by run-test number"
Shubham Ajmera [Wed, 15 Feb 2017 18:05:40 +0000 (18:05 +0000)]
Merge "Testrunner: Accept test_name by run-test number"

7 years agoMerge "Testrunner: Take default only when no other variant is selected"
Shubham Ajmera [Wed, 15 Feb 2017 18:05:18 +0000 (18:05 +0000)]
Merge "Testrunner: Take default only when no other variant is selected"

7 years agoTestrunner: Accept test_name by run-test number
Shubham Ajmera [Wed, 15 Feb 2017 17:19:44 +0000 (17:19 +0000)]
Testrunner: Accept test_name by run-test number

The change allows the testrunner to accept test numbers for running
a particular test. It runs all the tests for which the prefix matches
with the passed test name.

For test name "001-H", it will run 001-HelloWorld
However, for test name "001", it will run 001-Main and 001-HelloWorld

If it doesn't find any test with matching prefix, it raises ValueError.

Test: Verified by running locally
Bug: 35260706
Change-Id: Ib132d6635b22ade1fd96728ba629fe7d580ba6cf

7 years agoClean up profman arg checking
David Sehr [Wed, 15 Feb 2017 16:54:51 +0000 (08:54 -0800)]
Clean up profman arg checking

Move argument consistency checking to the places the relevant verbs are
being processed.  This eliminates criss-crossing consistency checks that
are correct for one verb but not another.

Bug: none
Test: test-art-host
Change-Id: I520fc8c48675e44959c7de1967642a6ebe4100e4

7 years agoTestrunner: Take default only when no other variant is selected
Shubham Ajmera [Wed, 15 Feb 2017 16:38:16 +0000 (16:38 +0000)]
Testrunner: Take default only when no other variant is selected

If a variant is selected either by setting the environment flag or
passing the variant as an arg to the python testrunner, the default
variant of that type will not be used unless it is explicitly set
by the above methods.

Test: Checked the behavior by running locally.
Change-Id: I6f480249408c0bf406b660e5098f298f21ff2db4

7 years agoART: Regenerate test data for 952.
Orion Hodson [Wed, 15 Feb 2017 15:48:28 +0000 (15:48 +0000)]
ART: Regenerate test data for 952.

Enable any internal users to run generator/build-test.sh.

Bug: 33191717,30550796
Test: art/test/run-test --host --gcstress 952
Change-Id: I2156c12cdf7484cfa296f53f4707e37102a1accb

7 years agoMerge "ARM: Faster read barrier marking entrypoints."
Vladimir Marko [Wed, 15 Feb 2017 13:33:28 +0000 (13:33 +0000)]
Merge "ARM: Faster read barrier marking entrypoints."

7 years agoMerge "Inline methods that throw."
Nicolas Geoffray [Wed, 15 Feb 2017 13:22:10 +0000 (13:22 +0000)]
Merge "Inline methods that throw."

7 years agoMerge "Update verify-profile logic."
Nicolas Geoffray [Wed, 15 Feb 2017 13:19:22 +0000 (13:19 +0000)]
Merge "Update verify-profile logic."

7 years agoMerge "Use a synchronization barrier to fix flakes."
Nicolas Geoffray [Wed, 15 Feb 2017 12:28:00 +0000 (12:28 +0000)]
Merge "Use a synchronization barrier to fix flakes."

7 years agoUpdate verify-profile logic.
Nicolas Geoffray [Mon, 6 Feb 2017 10:28:33 +0000 (10:28 +0000)]
Update verify-profile logic.

To start measuring OTA time improvements correctly, return
verify-profile as non-profile filter of verify-profile.

bug:34715556
Test: device boots, interpret-only is not used
Change-Id: I098a23d6dc958530df4eb94209d07d735576e0eb

7 years agoInline methods that throw.
Nicolas Geoffray [Wed, 8 Feb 2017 15:07:18 +0000 (15:07 +0000)]
Inline methods that throw.

Forked from https://android-review.googlesource.com/214292

test: 637-checker-throw-inline
bug: 30933338
Change-Id: I184be82dfab0710af3f3796e9e486c7817fa9c60

7 years agoUse a synchronization barrier to fix flakes.
Nicolas Geoffray [Tue, 14 Feb 2017 23:38:10 +0000 (23:38 +0000)]
Use a synchronization barrier to fix flakes.

test: test-art-host gcstress
Change-Id: I8ded9ec6efb48729bdfecaf9dc8daea164c6f519

7 years agoMerge "Add a DCHECK in thread::GetPeer."
Nicolas Geoffray [Wed, 15 Feb 2017 09:39:05 +0000 (09:39 +0000)]
Merge "Add a DCHECK in thread::GetPeer."

7 years agoMerge "Change behavior of $noinline$ to now force not inlining."
Nicolas Geoffray [Wed, 15 Feb 2017 09:06:26 +0000 (09:06 +0000)]
Merge "Change behavior of $noinline$ to now force not inlining."

7 years agoMerge "Fix DEX zip open error message printing"
David Sehr [Wed, 15 Feb 2017 05:39:20 +0000 (05:39 +0000)]
Merge "Fix DEX zip open error message printing"

7 years agoMerge "ART: Rewrite test 911"
Treehugger Robot [Wed, 15 Feb 2017 01:59:09 +0000 (01:59 +0000)]
Merge "ART: Rewrite test 911"

7 years agoMerge "ART: Change test 121-modifiers to use smali"
Treehugger Robot [Wed, 15 Feb 2017 01:58:42 +0000 (01:58 +0000)]
Merge "ART: Change test 121-modifiers to use smali"

7 years agoART: Add currentThread cutout to Unstarted Runtime
Andreas Gampe [Tue, 14 Feb 2017 02:52:10 +0000 (18:52 -0800)]
ART: Add currentThread cutout to Unstarted Runtime

Add currentThread() and getThreadState() cutouts to the unstarted
runtime to allow further compile-time initialization. The cutouts
are protected by call-stack checks.

Add tests.

Bug: 34956610
Test: m test-art-host-gtest-unstarted_runtime_test
Change-Id: I6335bccda8bedae90376fc7c47b303576f1ac78b

7 years agoMerge "Address some comments for aog/333864"
Mathieu Chartier [Wed, 15 Feb 2017 01:12:15 +0000 (01:12 +0000)]
Merge "Address some comments for aog/333864"

7 years agoMerge "Revert "Revert "runtime: Mmap uncompressed dex files (in zip) as clean memory"""
Treehugger Robot [Wed, 15 Feb 2017 00:00:49 +0000 (00:00 +0000)]
Merge "Revert "Revert "runtime: Mmap uncompressed dex files (in zip) as clean memory"""

7 years agoAddress some comments for aog/333864
Mathieu Chartier [Tue, 14 Feb 2017 23:16:19 +0000 (15:16 -0800)]
Address some comments for aog/333864

Mostly comment changes.

Bug: 34621054

Test: test-art-host

Change-Id: I95f77651d47a8d0c71d580778d1126ab4aa1d751

7 years agoART: Rewrite test 911
Andreas Gampe [Tue, 14 Feb 2017 22:28:32 +0000 (14:28 -0800)]
ART: Rewrite test 911

Use explicit thread names to avoid output reliance on implicit
thread naming.

Bug: 31684812
Test: m test-art-host-run-test-911-get-stack-trace
Change-Id: I82004fea6f49831b5d378bef2c290b61c694a07a

7 years agoChange behavior of $noinline$ to now force not inlining.
Nicolas Geoffray [Tue, 14 Feb 2017 18:05:28 +0000 (18:05 +0000)]
Change behavior of $noinline$ to now force not inlining.

In order to start supporting more inlining, like inlining
methods that have a throwing branch, we need to change our
testing strategy.

test: test-art-host
Change-Id: I65354884898d86a18e78b96b7c21a8728c83f86d

7 years agoMerge "ART: Add operator == and != with nullptr to Handle"
Treehugger Robot [Tue, 14 Feb 2017 22:11:34 +0000 (22:11 +0000)]
Merge "ART: Add operator == and != with nullptr to Handle"

7 years agoMerge "Fix test scripts to account for new linker behavior"
Treehugger Robot [Tue, 14 Feb 2017 21:48:41 +0000 (21:48 +0000)]
Merge "Fix test scripts to account for new linker behavior"

7 years agoRevert "Revert "runtime: Mmap uncompressed dex files (in zip) as clean memory""
Igor Murashkin [Tue, 14 Feb 2017 21:14:17 +0000 (21:14 +0000)]
Revert "Revert "runtime: Mmap uncompressed dex files (in zip) as clean memory""

This reverts commit 960b2af8a05f0844e78004e2d0d3ae6ab058d430.

Fix failing 071-dex-file-map-clean on target
which was due to an IO race in the run-test script.

Test: make test-art-target
Bug: 27650033
Original-Change-Id: I18efbd392c5980ffe0d983833b6cc581e0237b92
Change-Id: I6f4ff1e85f8326916c2ae0842a32f53fb7901639

7 years agoRemove unneeded build files
Alex Light [Thu, 9 Feb 2017 23:28:53 +0000 (15:28 -0800)]
Remove unneeded build files

Also make run-test default to assuming java8 language source.

Test: mma -j40 test-art-host
Test: ./test/run-test --host --build-with-javac-dx 001-HelloWorld
Change-Id: Id10b0539d919802985a373b1720534735c32434b

7 years agoAdd miscellaneous tests for class redefinition.
Alex Light [Mon, 13 Feb 2017 22:58:18 +0000 (14:58 -0800)]
Add miscellaneous tests for class redefinition.

There were a bunch of edge cases related to class redefinition and
obsolete methods that were never explicitly tested. This adds tests
for some of them.

Specifically we add the following tests:

1) Testing throwing exceptions that move through obsolete methods.
2) Testing Method.invoke of redefined methods.

Test: mma -j40 test-art-host

Change-Id: Ifa920e5d3b56206966acaa3ab2ffa901fd95fd5b

7 years agoMerge "Update test 044 for java-8"
Treehugger Robot [Tue, 14 Feb 2017 21:32:32 +0000 (21:32 +0000)]
Merge "Update test 044 for java-8"

7 years agoMerge "ART: Make dex2oat watchdog configurable"
Treehugger Robot [Tue, 14 Feb 2017 19:53:50 +0000 (19:53 +0000)]
Merge "ART: Make dex2oat watchdog configurable"

7 years agoART: Add operator == and != with nullptr to Handle
Andreas Gampe [Tue, 14 Feb 2017 19:10:34 +0000 (11:10 -0800)]
ART: Add operator == and != with nullptr to Handle

Get it in line with ObjPtr and prettify our code.

Test: m
Change-Id: I1322e2a9bc7a85d7f2441034a19bf4d807b81a0e

7 years agoFix test scripts to account for new linker behavior
Dimitry Ivanov [Tue, 14 Feb 2017 19:06:14 +0000 (11:06 -0800)]
Fix test scripts to account for new linker behavior

Remove /system/lib from the java.library.path to
avoid loading system libraries in classloader-namespace
by dependencies originated from libarttestd.so

Add additional libraries used by libarttestd.so to
the list of public libraries.

Bug: http://b/26833548
Test: m -j32 test-art-target
Change-Id: I8cfb1b1bec17ca32b2c691597a97b4e9d1667a2f

7 years agoMerge "Added a few integral SIMD extensions for x86/x86_64 (SSE)."
Treehugger Robot [Tue, 14 Feb 2017 19:25:17 +0000 (19:25 +0000)]
Merge "Added a few integral SIMD extensions for x86/x86_64 (SSE)."

7 years agoMerge "Revert^6 "Make class redefinition work with native methods on stack.""
Treehugger Robot [Tue, 14 Feb 2017 19:11:26 +0000 (19:11 +0000)]
Merge "Revert^6 "Make class redefinition work with native methods on stack.""

7 years agoFix DEX zip open error message printing
David Sehr [Tue, 14 Feb 2017 18:57:47 +0000 (10:57 -0800)]
Fix DEX zip open error message printing

We were printing the pointer to the error message string rather than the
string itself.

Bug: none
Test: test-art-host
Change-Id: I06bd9afd100c425039847c52df1f4912966053b8

7 years agoARM: Faster read barrier marking entrypoints.
Vladimir Marko [Tue, 14 Feb 2017 17:20:51 +0000 (17:20 +0000)]
ARM: Faster read barrier marking entrypoints.

Avoid MVN for forwarding address check and another one
undoing the first when we hit a forwarding address.

Test: m test-art-target
Bug: 29516974
Change-Id: I9c0ca70a6fe98f0200df27bf7ed776aee039e64d

7 years agoRevert^6 "Make class redefinition work with native methods on stack."
Alex Light [Tue, 14 Feb 2017 15:31:45 +0000 (15:31 +0000)]
Revert^6 "Make class redefinition work with native methods on stack."

We were incorrectly trying to obtain the profiling information of a
native method.

This reverts commit 02b2349b1cd2a78e86b1a7542f8330e6c3aaeb35.

Reason for revert: Fixed test failure with jit configurations

Test: ART_TEST_JIT=true mma -j40 test-art-host

Change-Id: Ic7112104aec64e597d2df80db5dc2a505d2cc2dd

7 years agoMerge "Revert "Enable dex2oat swap test for CC on x86.""
Vladimir Marko [Tue, 14 Feb 2017 16:17:50 +0000 (16:17 +0000)]
Merge "Revert "Enable dex2oat swap test for CC on x86.""

7 years agoRevert "Enable dex2oat swap test for CC on x86."
Vladimir Marko [Tue, 14 Feb 2017 16:16:30 +0000 (16:16 +0000)]
Revert "Enable dex2oat swap test for CC on x86."

Is't still failing and the difference can be
rather huge:
    Expected: (native_alloc_2_) < (native_alloc_1_),
    actual: 379712 vs 248600

Bug: 29259363

This reverts commit 38f5663a970b633f08e144b4dff33633c51352ee.

Change-Id: Ie1d62fbba688aeadffb9d5aafd5b9cf632742ed6

7 years agoMerge "ART: invoke-custom support"
Orion Hodson [Tue, 14 Feb 2017 16:02:32 +0000 (16:02 +0000)]
Merge "ART: invoke-custom support"

7 years agoMerge "ARM64: Improve String.equals() intrinsic for const strings."
Treehugger Robot [Tue, 14 Feb 2017 15:43:22 +0000 (15:43 +0000)]
Merge "ARM64: Improve String.equals() intrinsic for const strings."

7 years agoAdd a DCHECK in thread::GetPeer.
Nicolas Geoffray [Fri, 10 Feb 2017 10:59:22 +0000 (10:59 +0000)]
Add a DCHECK in thread::GetPeer.

Motivated  by https://android-review.googlesource.com/#/c/333205/.

Test: test-art-host run-jdwp-test.sh
Change-Id: I173c060324aa0dc39144db55e3a97e672c012ba8

7 years agoMerge "Revert "Disable libcore tests for now.""
Nicolas Geoffray [Tue, 14 Feb 2017 15:18:32 +0000 (15:18 +0000)]
Merge "Revert "Disable libcore tests for now.""

7 years agoRevert "Disable libcore tests for now."
Nicolas Geoffray [Tue, 14 Feb 2017 15:18:13 +0000 (15:18 +0000)]
Revert "Disable libcore tests for now."

Vogar has been fixed.

bug:35308152

This reverts commit b1cde6a6d0101328e683fe07f81d40a1368eaae9.

Change-Id: I2440da0a97561f6794f8827b536481e1a6536c91

7 years agoART: invoke-custom support
Orion Hodson [Wed, 18 Jan 2017 09:23:12 +0000 (09:23 +0000)]
ART: invoke-custom support

Adds invoke-custom instruction to the interpreter.

Bug: 33191717,30550796
Test: art/test/run-test --host 952
Change-Id: I3b754128649a8b3a00ade79ba2518d0e377f3a1e

7 years agoARM64: Improve String.equals() intrinsic for const strings.
Vladimir Marko [Fri, 10 Feb 2017 15:44:25 +0000 (15:44 +0000)]
ARM64: Improve String.equals() intrinsic for const strings.

And add additional tests to 021-string2.

aosp_angler-userdebug:
  before:
    arm64 boot*.oat: 43324664
    arm64 boot*.oat/string compression: 43411112
  after:
    arm64 boot*.oat: 43300136 (-24528)
    arm64 boot*.oat/string compression: 43345464 (-65648)

The string compression code size difference drops from
86448 to 45328.

Test: m test-art-target on Nexus 6P
Test: m test-art-target on Nexus 6P with string compression enabled.
Bug: 31040547
Change-Id: I99a3777b91b248da2b0ac25abd260f9e5abb2c09

7 years agoMerge "Bump oat version."
Treehugger Robot [Tue, 14 Feb 2017 13:19:15 +0000 (13:19 +0000)]
Merge "Bump oat version."

7 years agoBump oat version.
Vladimir Marko [Tue, 14 Feb 2017 11:34:09 +0000 (11:34 +0000)]
Bump oat version.

Two recent changes should have bumped the oat version but
they did not:
    https://android-review.googlesource.com/336161
    https://android-review.googlesource.com/338409

Test: Rely on Treehugger.
Change-Id: I105f2f2d54953ed808ded92234c06efcc155d313

7 years agoMerge changes I1042e87f,I58b17ecf
Treehugger Robot [Tue, 14 Feb 2017 11:37:33 +0000 (11:37 +0000)]
Merge changes I1042e87f,I58b17ecf

* changes:
  Remove remaining uses of DexFile::GetChecksum.
  Improve checking of multidex dex checksums.

7 years agoMerge "Revert "Revert^4 "Make class redefinition work with native methods on stack."""
Roland Levillain [Tue, 14 Feb 2017 10:50:49 +0000 (10:50 +0000)]
Merge "Revert "Revert^4 "Make class redefinition work with native methods on stack."""

7 years agoRevert "Revert^4 "Make class redefinition work with native methods on stack.""
Roland Levillain [Tue, 14 Feb 2017 10:49:09 +0000 (10:49 +0000)]
Revert "Revert^4 "Make class redefinition work with native methods on stack.""

ART run-test 945-obsolete-native is failing in automated
testing.

This reverts commit 724f77e2fed038d57a3d08fdcf656d703e3473ea.

Change-Id: I4eceb45765826ca442ee8f4800b2bed51f98e662

7 years agoRemove remaining uses of DexFile::GetChecksum.
Richard Uhler [Mon, 6 Feb 2017 15:12:45 +0000 (15:12 +0000)]
Remove remaining uses of DexFile::GetChecksum.

Remove or replace with DexFile::GetMultiDexChecksums as appropriate.

Bug: 34604632
Test: m test-art-host, added image_space_test to test ValidateOatFile.
Change-Id: I1042e87f29a242046d055f0be374ad9fbce4671a

7 years agoImprove checking of multidex dex checksums.
Richard Uhler [Tue, 24 Jan 2017 10:25:21 +0000 (10:25 +0000)]
Improve checking of multidex dex checksums.

* Fall back to odex file for all multidex entries if the apk is stripped,
  not just for the main multidex entry.
* Verify the number of multidex entries has not changed.
* Improve performance by getting all checksums from the apk in one go
  and cache the results instead of repeatedly opening the apk.
* Stop referring to non-main multidex entries as "secondary" dex files.

Bug: 34604632
Test: added tests to dex_file_test and oat_file_assistant_test
Test: m test-art-host

Change-Id: I58b17ecfbc9165a5bfeffd5281ee21d108f64479

7 years agoMerge "ART: Add DEX support for MethodHandle and CallSite info."
Orion Hodson [Tue, 14 Feb 2017 09:00:00 +0000 (09:00 +0000)]
Merge "ART: Add DEX support for MethodHandle and CallSite info."

7 years agoMerge "Revert^3 "Hash-based dex cache type array.""
Treehugger Robot [Tue, 14 Feb 2017 05:40:45 +0000 (05:40 +0000)]
Merge "Revert^3 "Hash-based dex cache type array.""

7 years agoMerge "ART: Correctly handle temporary classes in class-load events (4/3)"
Treehugger Robot [Tue, 14 Feb 2017 04:36:48 +0000 (04:36 +0000)]
Merge "ART: Correctly handle temporary classes in class-load events (4/3)"

7 years agoRevert^3 "Hash-based dex cache type array."
Mathieu Chartier [Tue, 14 Feb 2017 02:32:04 +0000 (18:32 -0800)]
Revert^3 "Hash-based dex cache type array."

Assert failing for "earchbox:search":
F zygote64: class_linker.cc:4612] Check failed: handle_scope_iface.Get() != nullptr

Test: m test-art-host
Bug: 34839984
Bug: 30627598
Bug: 34659969

This reverts commit 85c0f2ac03417f5125bc2ff1dab8109859c67d5c.

Change-Id: I39846c20295af5875b0f945be7035c73ded23135

7 years agoMerge "Revert^4 "Make class redefinition work with native methods on stack.""
Treehugger Robot [Tue, 14 Feb 2017 02:41:57 +0000 (02:41 +0000)]
Merge "Revert^4 "Make class redefinition work with native methods on stack.""

7 years agoART: Correctly handle temporary classes in class-load events (4/3)
Andreas Gampe [Tue, 14 Feb 2017 02:10:09 +0000 (18:10 -0800)]
ART: Correctly handle temporary classes in class-load events (4/3)

When a temporary class is given out in a ClassLoad event, all stored
references need to be fixed up before publishing a ClassPrepare event.

This CL handles objects stored in the heap as referents.

Bug: 31684920
Test: m test-art-host-run-test-912-classes
Change-Id: If140ecae675cd7bc648f622eaf200f8ad8b15438

7 years agoMerge "Deduplicate register maps for both inline and normal stack maps"
Treehugger Robot [Tue, 14 Feb 2017 01:38:18 +0000 (01:38 +0000)]
Merge "Deduplicate register maps for both inline and normal stack maps"

7 years agoUpdate test 044 for java-8
Alex Light [Tue, 14 Feb 2017 01:10:25 +0000 (17:10 -0800)]
Update test 044 for java-8

Jack will create a synthetic default bridge method for interfaces
where there is return-type variance. This changes the output of test
044-proxy very slightly since it ends up choosing the default version
when it is executed.

Test: mma -j40 test-art-host
Change-Id: I4e16eed04b59022e45a80324cd8c8106d21d4aef

7 years agoRevert^4 "Make class redefinition work with native methods on stack."
Alex Light [Sat, 11 Feb 2017 00:43:10 +0000 (00:43 +0000)]
Revert^4 "Make class redefinition work with native methods on stack."

We had a problem where there was a brief period of time where the dex
file for an obsolete method could not be obtained. This meant that not
all functions of ArtMethod could safely be called, causing some
problems.

This reverts commit 38c20d4a694eea44a1bd3af32a6a99512c139358.

Reason for revert: Fixed issues with interp-ac and relocate-npatchoat

Test: ART_TEST_RUN_TEST_RELOCATE_NO_PATCHOAT=true \
      ART_TEST_INTERPRETER_ACCESS_CHECKS=true \
      mma -j40 test-art-host

Change-Id: I04991f3e76813831b6446f97636b6fa404397f36

7 years agoDeduplicate register maps for both inline and normal stack maps
Mathieu Chartier [Thu, 9 Feb 2017 23:57:37 +0000 (15:57 -0800)]
Deduplicate register maps for both inline and normal stack maps

Before it only deduplicated the normal stack map dex register maps.
Code size for a large app: 93341616 -> 92678040 (-0.7%)

Added test.

Bug: 34621054

Test: test-art-host

Change-Id: I4fab4e40915bfa12cb978edbb3cbc19e2cf00954

7 years agoAdded a few integral SIMD extensions for x86/x86_64 (SSE).
Aart Bik [Mon, 13 Feb 2017 22:28:45 +0000 (14:28 -0800)]
Added a few integral SIMD extensions for x86/x86_64 (SSE).

Rationale:
ART vectorizer needs SIMD for integer operations too.

Test: assembler_x86[_64]_test
Bug: 34083438
Change-Id: Id6fec558c617d38cb643839eafcd10e59dcd6e0a

7 years agoMerge "Enable dex2oat swap test for CC on x86."
Treehugger Robot [Mon, 13 Feb 2017 21:34:20 +0000 (21:34 +0000)]
Merge "Enable dex2oat swap test for CC on x86."

7 years agoMerge "Remove special treatment of native method for CHA."
Mingyao Yang [Mon, 13 Feb 2017 21:26:22 +0000 (21:26 +0000)]
Merge "Remove special treatment of native method for CHA."

7 years agoMerge "Disable libcore tests for now."
Nicolas Geoffray [Mon, 13 Feb 2017 20:56:50 +0000 (20:56 +0000)]
Merge "Disable libcore tests for now."

7 years agoDisable libcore tests for now.
Nicolas Geoffray [Mon, 13 Feb 2017 20:55:27 +0000 (20:55 +0000)]
Disable libcore tests for now.

bug:35308152
Test: run-libcore-tests.sh

Change-Id: I77f9a516d6dd99d332a214e838848cdc3fdf359a

7 years agoMerge "Clarify comment on JIT cache flush issue"
Treehugger Robot [Mon, 13 Feb 2017 20:20:47 +0000 (20:20 +0000)]
Merge "Clarify comment on JIT cache flush issue"

7 years agoMerge "Fix the empty checkpoint timeout."
Hiroshi Yamauchi [Mon, 13 Feb 2017 19:21:13 +0000 (19:21 +0000)]
Merge "Fix the empty checkpoint timeout."

7 years agoART: Make dex2oat watchdog configurable
Andreas Gampe [Thu, 19 Jan 2017 04:39:02 +0000 (20:39 -0800)]
ART: Make dex2oat watchdog configurable

Allow the watchdog timeout to be set on the command line. Add a
test.

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

7 years agoEnable dex2oat swap test for CC on x86.
Vladimir Marko [Mon, 13 Feb 2017 18:57:47 +0000 (18:57 +0000)]
Enable dex2oat swap test for CC on x86.

The test should be OK after
    https://android-review.googlesource.com/335763

Test: m ART_USE_READ_BARRIER=true test-art-host-gtest
Bug: 29259363
Change-Id: I16f4051036b247b4f520533e77eaa71d6ff7bb41

7 years agoMerge "ART: Correctly handle temporary classes in class-load events (3/3)"
Treehugger Robot [Mon, 13 Feb 2017 18:39:50 +0000 (18:39 +0000)]
Merge "ART: Correctly handle temporary classes in class-load events (3/3)"

7 years agoMerge "Use VerifierDeps test file for dex2oat swap tests."
Vladimir Marko [Mon, 13 Feb 2017 18:05:06 +0000 (18:05 +0000)]
Merge "Use VerifierDeps test file for dex2oat swap tests."

7 years agoMerge "Revert^2 "Hash-based dex cache type array.""
Vladimir Marko [Mon, 13 Feb 2017 16:53:03 +0000 (16:53 +0000)]
Merge "Revert^2 "Hash-based dex cache type array.""

7 years agoART: Add DEX support for MethodHandle and CallSite info.
Orion Hodson [Fri, 13 Jan 2017 16:43:12 +0000 (16:43 +0000)]
ART: Add DEX support for MethodHandle and CallSite info.

Adds new DEX file map items for CallSiteIds and MethodHandles.

Initializes CallSiteIds and MethodHandles from the DEX file map_list.

Bug: 33191717,30550796
Test: m test-art-host-gtest-dex_file_verifier_test
Change-Id: I3ad9c7342b661c3f6a8264709412650eee6bde01

7 years agoMerge "String Compression for MIPS32 and MIPS64"
Treehugger Robot [Mon, 13 Feb 2017 12:41:55 +0000 (12:41 +0000)]
Merge "String Compression for MIPS32 and MIPS64"

7 years agoMerge changes I425a7d61,I30365ad6
Roland Levillain [Mon, 13 Feb 2017 11:58:38 +0000 (11:58 +0000)]
Merge changes I425a7d61,I30365ad6

* changes:
  Regression test for issue with VIXL AArch64 veneer pool.
  ARM64: Remove all uses of BlockPoolsScope.