OSDN Git Service

android-x86/art.git
7 years agoMerge "MIPS64: Check for MSA presence in each MSA instruction"
Aart Bik [Fri, 24 Mar 2017 17:29:03 +0000 (17:29 +0000)]
Merge "MIPS64: Check for MSA presence in each MSA instruction"

7 years agoMerge "Implement a SIMD spilling slot."
Aart Bik [Fri, 24 Mar 2017 17:02:49 +0000 (17:02 +0000)]
Merge "Implement a SIMD spilling slot."

7 years agoMerge "Silence ulimit in run-test"
Orion Hodson [Fri, 24 Mar 2017 16:48:44 +0000 (16:48 +0000)]
Merge "Silence ulimit in run-test"

7 years agoMerge "Deterministic DexCache in heap images."
Vladimir Marko [Fri, 24 Mar 2017 15:57:02 +0000 (15:57 +0000)]
Merge "Deterministic DexCache in heap images."

7 years agoMerge "Testrunner: Print colored text only when printing on terminal"
Shubham Ajmera [Fri, 24 Mar 2017 15:16:20 +0000 (15:16 +0000)]
Merge "Testrunner: Print colored text only when printing on terminal"

7 years agoSilence ulimit in run-test
Orion Hodson [Fri, 24 Mar 2017 11:24:10 +0000 (11:24 +0000)]
Silence ulimit in run-test

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

7 years agoMerge "MIPS64: Remove memcpy() from java.lang.String.getChars intrinsic."
Treehugger Robot [Fri, 24 Mar 2017 11:49:55 +0000 (11:49 +0000)]
Merge "MIPS64: Remove memcpy() from java.lang.String.getChars intrinsic."

7 years agoMerge "MIPS32: Remove memcpy() from java.lang.String.getChars intrinsic."
Treehugger Robot [Fri, 24 Mar 2017 11:46:55 +0000 (11:46 +0000)]
Merge "MIPS32: Remove memcpy() from java.lang.String.getChars intrinsic."

7 years agoMerge "Revert "Revert^4 "CHA for interface method."""
Nicolas Geoffray [Fri, 24 Mar 2017 08:59:45 +0000 (08:59 +0000)]
Merge "Revert "Revert^4 "CHA for interface method."""

7 years agoRevert "Revert^4 "CHA for interface method.""
Nicolas Geoffray [Fri, 24 Mar 2017 08:59:22 +0000 (08:59 +0000)]
Revert "Revert^4 "CHA for interface method.""

Still failing on the bots.

This reverts commit fb185130f35bbfe2ba1875974ed39ef0b3c7a77f.

Change-Id: I1629e237dd41ce4784ccadbfc346352dfcbdb137

7 years agoMerge "Revert "Make original dex file be more deduplicated""
Nicolas Geoffray [Fri, 24 Mar 2017 08:57:02 +0000 (08:57 +0000)]
Merge "Revert "Make original dex file be more deduplicated""

7 years agoRevert "Make original dex file be more deduplicated"
Nicolas Geoffray [Fri, 24 Mar 2017 08:55:08 +0000 (08:55 +0000)]
Revert "Make original dex file be more deduplicated"

Bug: 31455788

This reverts commit 9556cb2bfc6788656d53a9ddb2159ca2040f6e38.

Change-Id: If22f2bd9d1b788c2a784dbe0e7f0c2304d8e4a59

7 years agoImplement a SIMD spilling slot.
Aart Bik [Thu, 23 Mar 2017 23:17:37 +0000 (16:17 -0700)]
Implement a SIMD spilling slot.

Rationale:
The last ART vectorizer break-out CL    \O/
This ensures spilling on x86 and x86_4 is correct.
Also, it paves the way to wider SIMD on ARM and MIPS.

Test: test-art-host
Bug: 34083438

Change-Id: I5b27d18c2045f3ab70b64c335423b3ff2a507ac2

7 years agoMerge "Reduce test 051-threads to 128 threads instead of 512"
Mathieu Chartier [Thu, 23 Mar 2017 22:59:19 +0000 (22:59 +0000)]
Merge "Reduce test 051-threads to 128 threads instead of 512"

7 years agoTestrunner: Print colored text only when printing on terminal
Shubham Ajmera [Thu, 23 Mar 2017 01:33:37 +0000 (18:33 -0700)]
Testrunner: Print colored text only when printing on terminal

Test: ./art/test/testrunner/testrunner.py
Change-Id: Ica9701d6acd459d47fb63a722234fa17b141c33f

7 years agoMerge "Add test.py script to run gtest and run-test"
Shubham Ajmera [Thu, 23 Mar 2017 22:34:10 +0000 (22:34 +0000)]
Merge "Add test.py script to run gtest and run-test"

7 years agoMerge "Remove test logic from Android.run-test.mk"
Shubham Ajmera [Thu, 23 Mar 2017 22:33:37 +0000 (22:33 +0000)]
Merge "Remove test logic from Android.run-test.mk"

7 years agoAdd test.py script to run gtest and run-test
Shubham Ajmera [Thu, 23 Mar 2017 20:58:23 +0000 (13:58 -0700)]
Add test.py script to run gtest and run-test

By default, it will run both run-test and gtest
If either of the two are explicilty asked for, it will
not run the other one.

Options:
--run-test : To run run-test
--gtest : To run gtest
-j : Number of jobs
--host: for host tests
--target: for target tests
All the other arguments will be passed to the run-test testrunner.

Test: ./art/test.py --host --target -j12 --run-test --gtest
Change-Id: I2fc4ebb900fb72db83165c6ae1615b8bdcfc33f4

7 years agoReduce test 051-threads to 128 threads instead of 512
Mathieu Chartier [Thu, 23 Mar 2017 20:48:11 +0000 (13:48 -0700)]
Reduce test 051-threads to 128 threads instead of 512

It is suspected that 512 threads can timeout on loaded machines.

Bug: 36542176
Test: test/run-test --host 051
Change-Id: I8e4493d40edd74e845119b59956e4213dc750eab

7 years agoMerge "Make original dex file be more deduplicated"
Treehugger Robot [Thu, 23 Mar 2017 20:11:46 +0000 (20:11 +0000)]
Merge "Make original dex file be more deduplicated"

7 years agoMIPS64: Remove memcpy() from java.lang.String.getChars intrinsic.
Chris Larsen [Thu, 23 Mar 2017 16:02:56 +0000 (09:02 -0700)]
MIPS64: Remove memcpy() from java.lang.String.getChars intrinsic.

Test: run-test --64 --optimizing 020-string
Test: run-test --64 020-string
Test: run-test --64 --no-prebuild --optimizing 020-string
Test: run-test --64 --no-prebuild 020-string
Test: mma -j2 ART_TEST_OPTIMIZING=true test-art-target-run-test
Test: mma test-art-target-gtest -j2
Test: booted MIPS64R6 emulator.

Note: All tests run against MIPS64 QEMU.

Change-Id: I8ad3e39c66a489779476f7e9f9f88cd0c6270c20

7 years agoMIPS32: Remove memcpy() from java.lang.String.getChars intrinsic.
Chris Larsen [Thu, 23 Mar 2017 18:25:12 +0000 (11:25 -0700)]
MIPS32: Remove memcpy() from java.lang.String.getChars intrinsic.

Test: run-test --optimizing 020-string
Test: run-test 020-string
Test: run-test --no-prebuild --optimizing 020-string
Test: run-test --no-prebuild 020-string
Test: mma -j2 ART_TEST_OPTIMIZING=true test-art-target-run-test
Test: booted MIPS32R2 emulator.

Note: Tested against both the MIPS32R2, and MIPS64R6 emulators.

Change-Id: I3219bc47a3657b82c82b6ac94d0b8c82eb6f9bb9

7 years agoMerge "Revert^4 "CHA for interface method.""
Mingyao Yang [Thu, 23 Mar 2017 19:26:50 +0000 (19:26 +0000)]
Merge "Revert^4 "CHA for interface method.""

7 years agoRemove test logic from Android.run-test.mk
Shubham Ajmera [Wed, 22 Mar 2017 17:07:19 +0000 (10:07 -0700)]
Remove test logic from Android.run-test.mk

As python testrunner replaces it.

This change removes the following targets:
test-art-host-run-test-[variant]

The following targets are still supported:
test-art-host-run-test
test-art-target-run-test
test-art-run-test

Each of the above targets invoke the new testrunner.
They don't pass any concurrency value to the testrunner
and the testrunner itself decides the concurrency
depending upon the type of tests.

Test: make -j test-art-host-run-test
      make -j test-art-target-run-test
      make -j test-art-run-test
      ./art/test/testrunner/testrunner.py --host
      ./art/test/testrunner/testrunner.py --target

Change-Id: I64a87d0f2e62c29b4d9c14527f9a83810ae7edc7

7 years agoMerge "Saves full XMM state along suspend check's slow path."
Aart Bik [Thu, 23 Mar 2017 16:00:04 +0000 (16:00 +0000)]
Merge "Saves full XMM state along suspend check's slow path."

7 years agoMerge "Change 1/2 spill slots to more general number of spill slots."
Aart Bik [Thu, 23 Mar 2017 15:53:36 +0000 (15:53 +0000)]
Merge "Change 1/2 spill slots to more general number of spill slots."

7 years agoMerge "Properly disassemble cmpeq for x86/x86_64"
Aart Bik [Thu, 23 Mar 2017 15:53:01 +0000 (15:53 +0000)]
Merge "Properly disassemble cmpeq for x86/x86_64"

7 years agoMerge "Replace + by / to avoid vectorization of loop."
Aart Bik [Thu, 23 Mar 2017 15:52:40 +0000 (15:52 +0000)]
Merge "Replace + by / to avoid vectorization of loop."

7 years agoDeterministic DexCache in heap images.
Vladimir Marko [Thu, 16 Mar 2017 16:18:15 +0000 (16:18 +0000)]
Deterministic DexCache in heap images.

Preload each slot in dex cache arrays with the candidate
entry with the lowest index.

Also fix a discrepancy where we used to keep an ArtField*
in the DexCache if we kept the declaring class rather than
based on the class referenced in the corresponding FieldId.
This can result in accessing a field through a FieldId with
an unresolved class as demonstrated by the regression test.

Test: 159-app-image-fields
Test: testrunner.py --host
Bug: 30627598
Change-Id: I34735047cb064ff462cd9859e86a61ddf8615ecd

7 years agoMerge "Revert "Blacklist test that times out.""
Treehugger Robot [Thu, 23 Mar 2017 14:24:20 +0000 (14:24 +0000)]
Merge "Revert "Blacklist test that times out.""

7 years agoRevert "Blacklist test that times out."
Nicolas Geoffray [Thu, 23 Mar 2017 12:42:03 +0000 (12:42 +0000)]
Revert "Blacklist test that times out."

bug: 36501991

This reverts commit 882ea47197b59d812429ea2d788a96d5dcb2b77f.

Change-Id: I4f1dbad2c32422f069b1948df2152d1fb285ec3a

7 years agoMIPS64: Check for MSA presence in each MSA instruction
Goran Jakovljevic [Wed, 15 Mar 2017 14:31:34 +0000 (15:31 +0100)]
MIPS64: Check for MSA presence in each MSA instruction

Test: mma test-art-host-gtest

Change-Id: I123fe1e33de13af6a2b2a76f37f7ad23004a81c0

7 years agoMerge "Fix bot breakages."
Treehugger Robot [Thu, 23 Mar 2017 00:57:50 +0000 (00:57 +0000)]
Merge "Fix bot breakages."

7 years agoChange 1/2 spill slots to more general number of spill slots.
Aart Bik [Tue, 21 Mar 2017 17:55:15 +0000 (10:55 -0700)]
Change 1/2 spill slots to more general number of spill slots.

Rationale:
This prepares requesting a different number of spill slots
during SIMD vectorization.

Bug: 34083438
Test: test-art-host, test-art-host-gtest-register_allocator_test
Change-Id: I6d22966ba483deec72b5eea5061c403c12b2ada7

7 years agoMerge "Add even more logging failed to copy GC error"
Mathieu Chartier [Wed, 22 Mar 2017 23:38:36 +0000 (23:38 +0000)]
Merge "Add even more logging failed to copy GC error"

7 years agoReplace + by / to avoid vectorization of loop.
Aart Bik [Wed, 22 Mar 2017 23:33:11 +0000 (16:33 -0700)]
Replace + by / to avoid vectorization of loop.

Rationale:
Break-out CL of ART Vectorizer. Ensure loop is
not vectorized to avoid messing up checker test.

Bug: 34083438
Test: test-art-host-527-checker-array-access-split
Change-Id: Idab70a03a0f710e1e9b775891d726e1f044df916

7 years agoProperly disassemble cmpeq for x86/x86_64
Aart Bik [Wed, 22 Mar 2017 23:27:27 +0000 (16:27 -0700)]
Properly disassemble cmpeq for x86/x86_64

Rationale:
Break-out CL of ART Vectorizer.

Bug: 34083438
Test: test-art-host
Change-Id: I4027033cbe48a19c426326fc307fe4437b143d61

7 years agoMerge "MIPS64: Extend instruction_set_features_mips64_test"
Aart Bik [Wed, 22 Mar 2017 23:13:38 +0000 (23:13 +0000)]
Merge "MIPS64: Extend instruction_set_features_mips64_test"

7 years agoMerge "Add syntax for adding all class methods to profman"
Mathieu Chartier [Wed, 22 Mar 2017 21:49:32 +0000 (21:49 +0000)]
Merge "Add syntax for adding all class methods to profman"

7 years agoRevert^4 "CHA for interface method."
Mingyao Yang [Thu, 16 Mar 2017 23:19:15 +0000 (16:19 -0700)]
Revert^4 "CHA for interface method."

This reverts commit 43e99be9db10111a2d6e094882cd06c248c69e11.

Also fix the issue that tries to change invoke-interface to
an invoke-virtual of a cross-dexfile proxy method. Added a
testcase.

Test: run-libcore-tests.sh --mode=host --variant=X64 --debug
Test: ART_TEST_JIT=true m -j20 test-art-host-run-test
Change-Id: Iacdf9d7ad93590e8163ed59d5838d70700a69018

7 years agoAdd even more logging failed to copy GC error
Mathieu Chartier [Wed, 22 Mar 2017 20:15:01 +0000 (13:15 -0700)]
Add even more logging failed to copy GC error

Add logging for object address and type.

Bug: 36516822
Test: m
Change-Id: I636044af673d9adc1079269b408fcdeecc33d21d

7 years agoSaves full XMM state along suspend check's slow path.
Aart Bik [Wed, 22 Mar 2017 03:14:07 +0000 (20:14 -0700)]
Saves full XMM state along suspend check's slow path.

Rationale:
Break-out CL of ART Vectorizer. We need to save 128-bit
of data (default ABI of ART runtime only saves 64-bit)
Note that this is *only* done for xmm registers that
are live, so overhead is not too big.

Bug: 34083438
Test: test-art-host
Change-Id: Ic89988b0acb0c104634271d0c6c3e29b6596d59b

7 years agoAdd syntax for adding all class methods to profman
Mathieu Chartier [Tue, 21 Mar 2017 20:37:41 +0000 (13:37 -0700)]
Add syntax for adding all class methods to profman

Used to generate methods from the class list. The logic adds all
the methods if the method string is "*". The class is also added to
the profile.

Bug: 36457259

Test: mm test-art-host-gtest-profile_assistant_test -j32

Change-Id: Ibee856646b94eccc48d9ef6566475be74e77a0cd

7 years agoMerge "Speed up test 080-oom-throw"
Mathieu Chartier [Wed, 22 Mar 2017 19:56:09 +0000 (19:56 +0000)]
Merge "Speed up test 080-oom-throw"

7 years agoMerge "Log the errno code for failed flock() invocations"
Calin Juravle [Wed, 22 Mar 2017 18:31:26 +0000 (18:31 +0000)]
Merge "Log the errno code for failed flock() invocations"

7 years agoSpeed up test 080-oom-throw
Mathieu Chartier [Wed, 22 Mar 2017 17:02:31 +0000 (10:02 -0700)]
Speed up test 080-oom-throw

Reduce heap size, optimize blowup. The test just checks that OOME
get thrown for a fe basic operations. This is the same on all heap
sizes, just slower for larger heaps.

Before:
real  1m13.247s
user  1m11.115s
sys 0m1.834s

After:
real  0m26.604s
user  0m25.470s
sys 0m0.696s

Bug: 36501991
Test: time test/run-test --host 080-oom-throw

Change-Id: Id9d1ba702949a1f6070f6f20fb457e1749f90f25

7 years agoMake original dex file be more deduplicated
Alex Light [Tue, 21 Mar 2017 18:21:36 +0000 (11:21 -0700)]
Make original dex file be more deduplicated

Now when retransformClasses is called we will use the DexCache from
the transformed class to hold the original dex file. This means that
there should be fewer redundant copies of dex files lying around from
class redefinition.

Bug: 31455788
Test: mma -j40 test-art-host-gtest
Test: ./test/testrunner/testrunner.py --host -j40

Change-Id: I60150e436d79aabb36da31ec679cb7ec4c820573

7 years agoLog the errno code for failed flock() invocations
Calin Juravle [Wed, 22 Mar 2017 03:02:07 +0000 (20:02 -0700)]
Log the errno code for failed flock() invocations

ScopedFlock was asserting the success of flock()
invocation without logging errno. This CL adds the errno log
before the abort.

Test: m
Bug: 36369345
Change-Id: I24209784b795c37463fb790fcd0793369eeab492

7 years agoFix bot breakages.
Nicolas Geoffray [Wed, 22 Mar 2017 12:26:32 +0000 (12:26 +0000)]
Fix bot breakages.

bug:36169180
test: testrunner.py -b
Change-Id: Ibfe035d5d7fb18d95d4b5a32e1e68967f1889bdd

7 years agoMerge "Blacklist test that times out."
Nicolas Geoffray [Wed, 22 Mar 2017 10:53:29 +0000 (10:53 +0000)]
Merge "Blacklist test that times out."

7 years agoBlacklist test that times out.
Nicolas Geoffray [Wed, 22 Mar 2017 10:52:08 +0000 (10:52 +0000)]
Blacklist test that times out.

bug: 36501991
Change-Id: Ibfa6541fdea781fe9862049eccbcacb9b174553f

7 years agoMerge "ARM: Avoid branches to branches"
Nicolas Geoffray [Wed, 22 Mar 2017 10:26:17 +0000 (10:26 +0000)]
Merge "ARM: Avoid branches to branches"

7 years agoMerge "Assign pointer to quick code for copied methods"
Nicolas Geoffray [Wed, 22 Mar 2017 10:24:19 +0000 (10:24 +0000)]
Merge "Assign pointer to quick code for copied methods"

7 years agoMerge changes I17d48a60,I90bc4912
Treehugger Robot [Tue, 21 Mar 2017 23:04:53 +0000 (23:04 +0000)]
Merge changes I17d48a60,I90bc4912

* changes:
  ART: Add dex2oat return code for runtime failure
  ART: Add dex2oat return codes

7 years agoMerge "Run gtests in art-test"
Shubham Ajmera [Tue, 21 Mar 2017 20:33:03 +0000 (20:33 +0000)]
Merge "Run gtests in art-test"

7 years agoMerge "Avoid use of pthread_getschedparam (except on the Mac)"
Treehugger Robot [Tue, 21 Mar 2017 18:53:43 +0000 (18:53 +0000)]
Merge "Avoid use of pthread_getschedparam (except on the Mac)"

7 years agoMerge "tools: Add golem/build-target and golem/env scripts."
Treehugger Robot [Tue, 21 Mar 2017 17:38:34 +0000 (17:38 +0000)]
Merge "tools: Add golem/build-target and golem/env scripts."

7 years agoAvoid use of pthread_getschedparam (except on the Mac)
Brian Carlstrom [Mon, 20 Mar 2017 22:03:42 +0000 (15:03 -0700)]
Avoid use of pthread_getschedparam (except on the Mac)

Squashed commit of two cherry-picks:

    During Thread::DumpState the pthread may have exited.
    We have the tid, use that instead.

    Test: m -j50 test-art-host -k
    Test: adb shell kill -3 `pid system_server`
    Bug: 36445592

    (cherry picked from commit 08e762782a1e352c329945e0df3f35da7e71ad8a)

    Restore broken code for the Mac

    Test: m -j48
    Bug: 36445592

    (cherry picked from commit 4b16f0b860f4d59601706305b2949b98db586a47)

Test: m -j48 && flashall && m -j8 test-art-host
Bug: 36445592
Change-Id: I96d51614f569338d85de0fd59188445df3289dfd

7 years agoMerge "Downgrade duplicate method DCHECKs to WARNINGs"
Treehugger Robot [Tue, 21 Mar 2017 16:18:14 +0000 (16:18 +0000)]
Merge "Downgrade duplicate method DCHECKs to WARNINGs"

7 years agoMerge "ART: Remove com.android.dex.Dex from well_known_classes."
Narayan Kamath [Tue, 21 Mar 2017 10:44:52 +0000 (10:44 +0000)]
Merge "ART: Remove com.android.dex.Dex from well_known_classes."

7 years agoMerge "Some more blacklisting."
Nicolas Geoffray [Tue, 21 Mar 2017 10:32:24 +0000 (10:32 +0000)]
Merge "Some more blacklisting."

7 years agoSome more blacklisting.
Nicolas Geoffray [Tue, 21 Mar 2017 10:22:02 +0000 (10:22 +0000)]
Some more blacklisting.

bug:36467228
bug:36365552
Change-Id: Ic7c21dc229b55a8ef3f8aec99e835ebb1e9ca312

7 years agoMIPS64: Extend instruction_set_features_mips64_test
Goran Jakovljevic [Mon, 20 Mar 2017 08:11:06 +0000 (09:11 +0100)]
MIPS64: Extend instruction_set_features_mips64_test

Added "mips64r6" case and compared against "default".

Test: mma test-art-target-gtest-instruction_set_features_mips64_test

Change-Id: I1937912d69393fdd69a0e9779b597393dfa0bacf

7 years agoMerge "Remove extra comma in knownfailures.json"
Calin Juravle [Tue, 21 Mar 2017 02:04:49 +0000 (02:04 +0000)]
Merge "Remove extra comma in knownfailures.json"

7 years agoRemove extra comma in knownfailures.json
Calin Juravle [Tue, 21 Mar 2017 02:02:48 +0000 (19:02 -0700)]
Remove extra comma in knownfailures.json

Test: testrunner.py --host
Change-Id: I4e374a419fa2fed19bbd1b86ce13f53c71d7b8bb

7 years agoART: Add dex2oat return code for runtime failure
Andreas Gampe [Mon, 20 Mar 2017 23:35:24 +0000 (16:35 -0700)]
ART: Add dex2oat return code for runtime failure

Add a return code for failure to create a runtime. Add a test.

Bug: 36336122
Test: m test-art-host-gtest-dex2oat_test
Change-Id: I17d48a6052ead7a138d77c87832968a7294c3593

7 years agoMerge "jdwp: switch to SOCK_SEQPACKET."
Treehugger Robot [Mon, 20 Mar 2017 23:24:32 +0000 (23:24 +0000)]
Merge "jdwp: switch to SOCK_SEQPACKET."

7 years agoART: Add dex2oat return codes
Andreas Gampe [Mon, 20 Mar 2017 22:48:52 +0000 (15:48 -0700)]
ART: Add dex2oat return codes

Refactor exit codes for dex2oat and export them. In preparation for
installd usage.

Bug: 36336122
Test: m test-art-host
Change-Id: I90bc49128886719f7595105ecc40405ddf821850

7 years agoMerge "Fix missing comma in knownfailures.json"
Calin Juravle [Mon, 20 Mar 2017 21:49:00 +0000 (21:49 +0000)]
Merge "Fix missing comma in knownfailures.json"

7 years agoFix missing comma in knownfailures.json
Calin Juravle [Mon, 20 Mar 2017 21:45:15 +0000 (14:45 -0700)]
Fix missing comma in knownfailures.json

Test: testrunner.py ...
Change-Id: I3c23b9be732074cacde8db75c9da0da4ead98ac9

7 years agojdwp: switch to SOCK_SEQPACKET.
Josh Gao [Mon, 20 Mar 2017 18:33:34 +0000 (11:33 -0700)]
jdwp: switch to SOCK_SEQPACKET.

When sending the process's PID to adbd, we use
TEMP_FAILURE_RETRY(send(...)), and check if the result is non-negative.
However, this could theoretically return short, leaving adbd waiting
for the rest of the PID. Switch the socket to a SOCK_SEQPACKET to
sidestep all of this.

Bug: http://b/36411868
Test: adb jdwp
Change-Id: I0ec75912ac579868f77554e3c6db23c7ab95a34c

7 years agoMerge "Disable the use of inline caches in AOT mode"
Calin Juravle [Mon, 20 Mar 2017 19:38:10 +0000 (19:38 +0000)]
Merge "Disable the use of inline caches in AOT mode"

7 years agoDisable the use of inline caches in AOT mode
Calin Juravle [Mon, 20 Mar 2017 18:42:13 +0000 (11:42 -0700)]
Disable the use of inline caches in AOT mode

Until we figure out why we see the crashes in b/36371709.

Test: m test-art-host
Bug: 36371709
Change-Id: If47f917373d26825f0b8121bb8b5e0b77ff83c01

7 years agoDowngrade duplicate method DCHECKs to WARNINGs
Alex Light [Fri, 17 Mar 2017 22:10:32 +0000 (15:10 -0700)]
Downgrade duplicate method DCHECKs to WARNINGs

These DCHECKs were causing spurious failures when testing with
debug ART. Duplicate methods could cause multiple methods in
a class to have the same name and signature. Overriding these
methods could make it so that methods are owned by the wrong type.
Though the corrupted methods arrays could be a cause for concern
(hence the DCHECKs) but in the most common case it should be fine
as the duplicated methods cannot be invoked.

As both of these situations can be caused by some versions of
proguard and are present in some released apps, we are downgrading
these to warnings even on Debug builds.

Bug: 32549051
Bug: 32546154
Bug: 36446088

Test: ./test/testrunner/testrunner.py --host -j40
Change-Id: Ib26f30718726a9064056855192cef302f3df1eeb

7 years agoMerge "Revert "Revert "Introduce a number of MSA instructions for MIPS64"""
Aart Bik [Mon, 20 Mar 2017 17:14:10 +0000 (17:14 +0000)]
Merge "Revert "Revert "Introduce a number of MSA instructions for MIPS64"""

7 years agoART: Remove com.android.dex.Dex from well_known_classes.
Narayan Kamath [Mon, 20 Mar 2017 11:35:30 +0000 (11:35 +0000)]
ART: Remove com.android.dex.Dex from well_known_classes.

Unused after change 6b2dc3156a2140a5bfd9cbbf5d7dad332ab5f5bd.

Test: make build-art-host
Change-Id: Ib2259c4a3ac1ee7320284a2e2fc08bbc39f9a89b

7 years agoMerge "Don't special case kRuntimeISA for getting image info."
Richard Uhler [Mon, 20 Mar 2017 08:43:26 +0000 (08:43 +0000)]
Merge "Don't special case kRuntimeISA for getting image info."

7 years agoMerge "Fix the artificial dependency in ARM/ARM64 SystemArrayCopy intrinsics."
Roland Levillain [Sun, 19 Mar 2017 16:15:33 +0000 (16:15 +0000)]
Merge "Fix the artificial dependency in ARM/ARM64 SystemArrayCopy intrinsics."

7 years agoMerge "Refactor SystemArrayCopy intrinsics."
Roland Levillain [Sat, 18 Mar 2017 23:42:14 +0000 (23:42 +0000)]
Merge "Refactor SystemArrayCopy intrinsics."

7 years agoMerge "More blacklisting."
Treehugger Robot [Sat, 18 Mar 2017 15:03:22 +0000 (15:03 +0000)]
Merge "More blacklisting."

7 years agoMore blacklisting.
Nicolas Geoffray [Sat, 18 Mar 2017 13:18:24 +0000 (13:18 +0000)]
More blacklisting.

bug: 36377828
Change-Id: I364fc321ac9c02ce6038e5e105d596f889aeb34a

7 years agoMerge "Revert "Make sigchain actually own the signal chain.""
Jin Qian [Sat, 18 Mar 2017 02:56:08 +0000 (02:56 +0000)]
Merge "Revert "Make sigchain actually own the signal chain.""

7 years agoRevert "Make sigchain actually own the signal chain."
Jin Qian [Sat, 18 Mar 2017 02:51:37 +0000 (02:51 +0000)]
Revert "Make sigchain actually own the signal chain."

This reverts commit 7600fa9234e02cf5108a3a82babf3d3ab82fcddd.

Change-Id: Ia46db2a7df0c0ac07107a8db06f42ff1afd4a97e

7 years agoMerge "Make sigchain actually own the signal chain."
Josh Gao [Sat, 18 Mar 2017 01:42:22 +0000 (01:42 +0000)]
Merge "Make sigchain actually own the signal chain."

7 years agoMake sigchain actually own the signal chain.
Josh Gao [Thu, 16 Mar 2017 00:40:42 +0000 (17:40 -0700)]
Make sigchain actually own the signal chain.

sigchain exists to make sure that art's signal handler is at the front,
but it currently does this by putting the fault manager in the actual
signal handler slot and having that handler call into sigchain when it
doesn't want to handle a signal. sigchain also has a "special signal
handler" (used for native bridge) that runs before user handlers, but
after ART's.

Move maintenance of the signal chain into sigchain itself, and use the
same mechanism to handle the ART handler and the native bridge handler.

Also, clean up some bugs:
  - InvokeUserSignalHandler was using the wrapper sigprocmask instead
    of the actual one.
  - Use SIG_SETMASK instead of SIG_BLOCK between calling handlers, in
    case one of the handlers changes the signal mask.
  - Correctly handle sigaction without SA_SIGINFO.

Bug: http://b/36205469
Bug: http://b/36262089
Test: NPE with dalvikvm with/without TEST_NESTED_SIGNAL defined (arm/aarch64)
Change-Id: I416b13de800d3e23424cf20688ccfd7e4e48a111

7 years agoMerge "Accept output profile path from dalvikvm command"
Calin Juravle [Fri, 17 Mar 2017 22:03:49 +0000 (22:03 +0000)]
Merge "Accept output profile path from dalvikvm command"

7 years agoRun gtests in art-test
Shubham Ajmera [Thu, 16 Mar 2017 23:37:02 +0000 (16:37 -0700)]
Run gtests in art-test

Treehugger uses art-test and unless we provide some other target
for gtests, this change will allow treehugger continuously running
gtests.

Test: manual
Change-Id: I709fdbb24f500a6fc32a2fa13f3d07a6135a86ef

7 years agoMerge "Testrunner: Add timeout support"
Shubham Ajmera [Fri, 17 Mar 2017 21:28:00 +0000 (21:28 +0000)]
Merge "Testrunner: Add timeout support"

7 years agoTestrunner: Add timeout support
Shubham Ajmera [Thu, 16 Mar 2017 20:31:35 +0000 (13:31 -0700)]
Testrunner: Add timeout support

Bug: 36051655
Test: manual
Change-Id: I7117b1e23870b2a417bb5cee62efff51d85a95a5

7 years agoMerge "Add byte count to section"
David Sehr [Fri, 17 Mar 2017 20:25:38 +0000 (20:25 +0000)]
Merge "Add byte count to section"

7 years agoAccept output profile path from dalvikvm command
Calin Juravle [Fri, 17 Mar 2017 02:05:09 +0000 (19:05 -0700)]
Accept output profile path from dalvikvm command

Test: run dalvikvm with -Xps-profile-path
Bug: 36032648

Change-Id: I34640afe1cf0e7b192ad082ccde2784faab1ba4c

7 years agoFix the artificial dependency in ARM/ARM64 SystemArrayCopy intrinsics.
Roland Levillain [Fri, 17 Mar 2017 15:15:21 +0000 (15:15 +0000)]
Fix the artificial dependency in ARM/ARM64 SystemArrayCopy intrinsics.

Ensure that the base source address register (`src_curr_addr`) is
assigned from the `src` register after `src` is made dependent on the
lock word of `src`.

Before this CL, the artificial (or "fake") dependency of `src` on
`tmp` was present, but because `src_curr_addr` was computed from `src`
*before* that artificial dependency, it meant that it was basically
useless. This could explain some stale reference bugs.

After this CL, `src_curr_addr` is computed from `src` *after* the
artificial dependency.

Test: m test-art-target on Baker read barrier configuration.
Bug: 12687968
Change-Id: If30a2e35ca04b0b6d054e2a6c6b1e9c6879cf4a9

7 years agoRefactor SystemArrayCopy intrinsics.
Roland Levillain [Thu, 16 Mar 2017 11:25:59 +0000 (11:25 +0000)]
Refactor SystemArrayCopy intrinsics.

Test: m test-art-host
Test: m test-art-target
Change-Id: I2f9ccdbb831030e670996b97e0c422f505b3abf6

7 years agoMerge "Increase resolved classes save delay to 5s"
Mathieu Chartier [Fri, 17 Mar 2017 17:40:06 +0000 (17:40 +0000)]
Merge "Increase resolved classes save delay to 5s"

7 years agoAdd byte count to section
David Sehr [Wed, 15 Mar 2017 17:42:46 +0000 (10:42 -0700)]
Add byte count to section

Dump the number of bytes, pages, and percentage for each section in the dex file.

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

7 years agoMerge "MIPS64: Add MSA instruction set feature option"
Aart Bik [Fri, 17 Mar 2017 16:09:20 +0000 (16:09 +0000)]
Merge "MIPS64: Add MSA instruction set feature option"

7 years agoMerge "Blacklist two tests due to timeout."
Nicolas Geoffray [Fri, 17 Mar 2017 14:41:27 +0000 (14:41 +0000)]
Merge "Blacklist two tests due to timeout."

7 years agoBlacklist two tests due to timeout.
Nicolas Geoffray [Fri, 17 Mar 2017 11:55:14 +0000 (11:55 +0000)]
Blacklist two tests due to timeout.

bug: 36377828
Test: test-art-host testrunner.py
Change-Id: Ibe5e4cc6d9bf027cba4de6f545d5b16ed925f7c9

7 years agoMerge "MIPS64: Adjust Base and Offset"
Treehugger Robot [Fri, 17 Mar 2017 12:00:30 +0000 (12:00 +0000)]
Merge "MIPS64: Adjust Base and Offset"

7 years agoMerge "Do not assume type relationship when recording "not assignable""
Treehugger Robot [Fri, 17 Mar 2017 10:49:28 +0000 (10:49 +0000)]
Merge "Do not assume type relationship when recording "not assignable""