OSDN Git Service

android-x86/art.git
7 years agoMerge "ART: Remove unused DexToDex level."
Treehugger Robot [Tue, 28 Mar 2017 00:17:01 +0000 (00:17 +0000)]
Merge "ART: Remove unused DexToDex level."

7 years agoMerge changes I45940d2d,I100b6246,Ie0ba58b3,I7943e7a6,I172cef38, ...
Treehugger Robot [Mon, 27 Mar 2017 23:10:36 +0000 (23:10 +0000)]
Merge changes I45940d2d,I100b6246,Ie0ba58b3,I7943e7a6,I172cef38, ...

* changes:
  Remove signal mask checks from native bridge tests.
  sigchain: fix sigaction(signal, nullptr, &sa).
  sigchain: make SIG_DFL handling less broken.
  sigchain: allow use of sigprocmask inside handlers.
  sigchainlib: hopefully fix darwin build breakage.
  Revert^2: "Make sigchain actually own the signal chain.""

7 years agoMerge "Testrunner: Fix output parsing issue"
Treehugger Robot [Mon, 27 Mar 2017 22:40:38 +0000 (22:40 +0000)]
Merge "Testrunner: Fix output parsing issue"

7 years agoART: Remove unused DexToDex level.
Andreas Gampe [Mon, 27 Mar 2017 21:57:30 +0000 (14:57 -0700)]
ART: Remove unused DexToDex level.

There is only "skip" and "optimize." We no longer have a required
tier, as constructor fencing is now elision-based.

Bug: 36653594
Test: m test-art-host
Change-Id: Ide874a581fc5f887d020b3d32507e3973e7fd9a4

7 years agoRemove signal mask checks from native bridge tests.
Josh Gao [Mon, 27 Mar 2017 20:56:23 +0000 (13:56 -0700)]
Remove signal mask checks from native bridge tests.

Bug: http://b/36205469
Bug: http://b/36262089
Change-Id: I45940d2d189b6e144eb2f6ebb6d24fd70e3bd206

7 years agoMerge "One more test to disable for CHA."
Nicolas Geoffray [Mon, 27 Mar 2017 20:10:35 +0000 (20:10 +0000)]
Merge "One more test to disable for CHA."

7 years agoMerge "Ensure 'modified' field of ArtClassDefinition is always initialized."
Treehugger Robot [Mon, 27 Mar 2017 19:40:19 +0000 (19:40 +0000)]
Merge "Ensure 'modified' field of ArtClassDefinition is always initialized."

7 years agoOne more test to disable for CHA.
Nicolas Geoffray [Mon, 27 Mar 2017 19:34:56 +0000 (20:34 +0100)]
One more test to disable for CHA.

bug:36344221
Change-Id: I03f6a3d9c6da9c3cd7e838a0c34a2cca0ab29f26

7 years agoMerge "Testrunner: Temporarily fix long Dex File name issue"
Treehugger Robot [Mon, 27 Mar 2017 19:02:08 +0000 (19:02 +0000)]
Merge "Testrunner: Temporarily fix long Dex File name issue"

7 years agoMerge "Ensure jvmtiCapabilities structs are initialized."
Treehugger Robot [Mon, 27 Mar 2017 18:27:38 +0000 (18:27 +0000)]
Merge "Ensure jvmtiCapabilities structs are initialized."

7 years agoTestrunner: Fix output parsing issue
Shubham Ajmera [Fri, 24 Mar 2017 23:19:48 +0000 (16:19 -0700)]
Testrunner: Fix output parsing issue

Android build system determines failure info in the build log
by looking for a line starting with "FAILED: ".

The new format of the testrunner makes sure that the build system
is able to parse the error from the log.

Test: ./art/test.py -r -t 00
Change-Id: Iab29f254f600d4c3ee74cae2675da3a624e724ef

7 years agoEnsure 'modified' field of ArtClassDefinition is always initialized.
Alex Light [Sat, 25 Mar 2017 00:28:30 +0000 (17:28 -0700)]
Ensure 'modified' field of ArtClassDefinition is always initialized.

This field was not always being initialized due to the use of a
default constructor. This meant we would go down unintended code paths
in some circumstances.

Test: ./test.py --host -j40
Bug: 36602266

Change-Id: Iba3521d4a2fa752a7ba59dcbcbbd30e0c09869ff

7 years agoEnsure jvmtiCapabilities structs are initialized.
Alex Light [Mon, 27 Mar 2017 16:50:36 +0000 (09:50 -0700)]
Ensure jvmtiCapabilities structs are initialized.

We were not zero-ing a handful of jvmtiCapabilities structs.

Bug: 31455788
Test: ./test.py --host -j40
Change-Id: Ia8c67a10e3b9068bb198392d48831b36290953bf

7 years agoMerge "Check for unattached threads in JVMTI functions"
Treehugger Robot [Mon, 27 Mar 2017 16:22:16 +0000 (16:22 +0000)]
Merge "Check for unattached threads in JVMTI functions"

7 years agoMerge "Revert "Improve user-friendliness of art script.""
Orion Hodson [Mon, 27 Mar 2017 14:54:52 +0000 (14:54 +0000)]
Merge "Revert "Improve user-friendliness of art script.""

7 years agoRevert "Improve user-friendliness of art script."
Orion Hodson [Mon, 27 Mar 2017 14:44:43 +0000 (14:44 +0000)]
Revert "Improve user-friendliness of art script."

Breaks jdwp test on device.

This reverts commit 35710a024c487c9e12a9a3ad72f22b10056e1a82.

Change-Id: Ib693e8588eef297495c1d55e4f55cd2ec8ef2bf3

7 years agoMerge "Initialize art_method_ in HGraph."
Treehugger Robot [Mon, 27 Mar 2017 13:50:43 +0000 (13:50 +0000)]
Merge "Initialize art_method_ in HGraph."

7 years agoInitialize art_method_ in HGraph.
Nicolas Geoffray [Mon, 27 Mar 2017 11:56:16 +0000 (12:56 +0100)]
Initialize art_method_ in HGraph.

Spotted by Ivan Maidanski!

Benign as HGraph is allocated on the arena, and arenas
are always zero initialized.

test: test-art-host
Change-Id: Id8abe421e732dcf7a760f118b16b85fe1fac7c78

7 years agoMerge "MIPS64: Improve method entry/exit code"
Treehugger Robot [Mon, 27 Mar 2017 10:59:44 +0000 (10:59 +0000)]
Merge "MIPS64: Improve method entry/exit code"

7 years agoMerge ""Revert^6 "CHA for interface method.""""
Nicolas Geoffray [Mon, 27 Mar 2017 10:53:39 +0000 (10:53 +0000)]
Merge ""Revert^6 "CHA for interface method.""""

7 years agoMerge "Revert "Revert "Make original dex file be more deduplicated"""
Treehugger Robot [Mon, 27 Mar 2017 09:35:04 +0000 (09:35 +0000)]
Merge "Revert "Revert "Make original dex file be more deduplicated"""

7 years agoMerge "Add 'dist' to gtest targets to avoid jack issues."
Nicolas Geoffray [Mon, 27 Mar 2017 09:08:04 +0000 (09:08 +0000)]
Merge "Add 'dist' to gtest targets to avoid jack issues."

7 years agoAdd 'dist' to gtest targets to avoid jack issues.
Nicolas Geoffray [Mon, 27 Mar 2017 09:06:14 +0000 (10:06 +0100)]
Add 'dist' to gtest targets to avoid jack issues.

Change-Id: Ibde8ba3e64817859b2bd61e575ea45057c96cd8e

7 years agoMerge "ARM: Reduce the number of branches generated for HCondition and HSelect"
Nicolas Geoffray [Mon, 27 Mar 2017 08:10:13 +0000 (08:10 +0000)]
Merge "ARM: Reduce the number of branches generated for HCondition and HSelect"

7 years agoMerge "ARM: Improve the code generated for HInstanceOf"
Nicolas Geoffray [Mon, 27 Mar 2017 08:09:43 +0000 (08:09 +0000)]
Merge "ARM: Improve the code generated for HInstanceOf"

7 years agoMerge "Improve user-friendliness of art script."
Orion Hodson [Mon, 27 Mar 2017 08:08:53 +0000 (08:08 +0000)]
Merge "Improve user-friendliness of art script."

7 years ago"Revert^6 "CHA for interface method."""
Nicolas Geoffray [Mon, 27 Mar 2017 08:00:18 +0000 (08:00 +0000)]
"Revert^6 "CHA for interface method."""

Update test expectations for CHA tests flaking on no-dex2oat.

bug:36344221

This reverts commit 27ef25f084017421ca05508208f436b5fc11df73.

Change-Id: Ie92adc7a2ec3b3081a1c57d71f8c89247e58cd46

7 years agoMerge "Improvements in the Inliner."
Nicolas Geoffray [Mon, 27 Mar 2017 07:57:46 +0000 (07:57 +0000)]
Merge "Improvements in the Inliner."

7 years agoMerge "Makefile cleanup/fix after refactoring."
Nicolas Geoffray [Sat, 25 Mar 2017 14:10:03 +0000 (14:10 +0000)]
Merge "Makefile cleanup/fix after refactoring."

7 years agoMakefile cleanup/fix after refactoring.
Nicolas Geoffray [Sat, 25 Mar 2017 14:05:28 +0000 (14:05 +0000)]
Makefile cleanup/fix after refactoring.

1) Put hprof-conf in ART_TEST_HOST_RUN_TEST_DEPENDENCIES
2) Remove duplicated code.

Change-Id: I11d141a13e94292f5a2bfefe1016be39aaece019

7 years agoMerge "Fix issue with Android.run-test.mk"
Nicolas Geoffray [Sat, 25 Mar 2017 12:45:22 +0000 (12:45 +0000)]
Merge "Fix issue with Android.run-test.mk"

7 years agoTestrunner: Temporarily fix long Dex File name issue
Shubham Ajmera [Fri, 24 Mar 2017 21:44:10 +0000 (14:44 -0700)]
Testrunner: Temporarily fix long Dex File name issue

Instead of passing long test names, it passes a directory with shorter name.

Bug: 36039166
Test: TMPDIR=/usr/local/google/home/shubhamajmera/aosp/tmp1 \
      TEMP=/usr/local/google/home/shubhamajmera/aosp/tmp1 \
      TMP=/usr/local/google/home/shubhamajmera/aosp/tmp1 \
      ./art/test.py \
      -t test-art-host-run-test-debug-prebuild-interpreter-relocate-npatchoat-ntrace-cms-checkjni-picimage-npictest-ndebuggable-201-built-in-except-detail-messages64 \
      -r

Change-Id: Id361e130301a23cd0c0d10a16cdd0dc48882c22b

7 years agoCheck for unattached threads in JVMTI functions
Alex Light [Fri, 24 Mar 2017 21:22:56 +0000 (14:22 -0700)]
Check for unattached threads in JVMTI functions

Calling the JVMTI functions with an unattached thread is required to
return JVMTI_ERROR_UNATTACHED_THREAD.

Test: ./test.py --host -j40
Bug: 36576873
Change-Id: I312b4e0a5e5fb66961f6efcc36d9480626c3461f

7 years agoFix issue with Android.run-test.mk
Alex Light [Fri, 24 Mar 2017 22:23:27 +0000 (15:23 -0700)]
Fix issue with Android.run-test.mk

We were clearing 2 makefile variables that was needed for our
buildbots to run correctly.

Test: m clean && ./test.py --target -j8
Test: m clean && ./test.py --host -j40
Change-Id: Ic15ccf6701bf12b7ee5aeddf940e0c343677c8b0

7 years agoRevert "Revert "Make original dex file be more deduplicated""
Alex Light [Fri, 24 Mar 2017 15:21:34 +0000 (15:21 +0000)]
Revert "Revert "Make original dex file be more deduplicated""

This reverts commit a7c04c4fe6623985ba2d0cca942d5e1e584f4358.

Reason for revert: Issue with target buildbots was fixed

Test: m clean && ./test.py --target -j8
Bug: 31455788

Change-Id: If00ef9433a9308810a40ea4e0d809987c934cef8

7 years agoMerge "Move backtrace logic to backtrace_helper.h"
Mathieu Chartier [Fri, 24 Mar 2017 18:52:17 +0000 (18:52 +0000)]
Merge "Move backtrace logic to backtrace_helper.h"

7 years agosigchain: fix sigaction(signal, nullptr, &sa).
Josh Gao [Fri, 24 Mar 2017 03:04:58 +0000 (20:04 -0700)]
sigchain: fix sigaction(signal, nullptr, &sa).

Previously, our wrapped sigaction would forward to the actual sigaction
if new_action was null.

Test: ./test.py -r --host -t 004-SignalTest
Change-Id: I100b6246c58f331a44b9201cf61405251b85111d

7 years agoMerge "Remove TimeZoneTest.testAllDisplayNames() failure"
Joachim Sauer [Fri, 24 Mar 2017 17:36:21 +0000 (17:36 +0000)]
Merge "Remove TimeZoneTest.testAllDisplayNames() failure"

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 agoMove backtrace logic to backtrace_helper.h
Mathieu Chartier [Fri, 24 Mar 2017 06:51:34 +0000 (23:51 -0700)]
Move backtrace logic to backtrace_helper.h

Refactor this out so we can use it other places.

Test: test/run-test --host --gcstress --dev --64 048

Change-Id: I1c357714badd417a67a34cd5d371ddbf1282a179

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 agoRemove TimeZoneTest.testAllDisplayNames() failure
Joachim Sauer [Fri, 24 Mar 2017 15:15:28 +0000 (15:15 +0000)]
Remove TimeZoneTest.testAllDisplayNames() failure

The test is being removed.

Bug: 22786792
Test: m checkbuild
Change-Id: Ie96a4088985b39bd15ea506830a394da79d5f624

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 agoImprovements in the Inliner.
Nicolas Geoffray [Tue, 28 Feb 2017 17:41:45 +0000 (17:41 +0000)]
Improvements in the Inliner.

- Change from a depth limit to a total number of HInstructions
  inlined limit. Remove the dex2oat depth limit argument.
- Add more stats to diagnose reasons for not inlining.
- Clean up logging to easily parse output.

Individual Ritz benchmarks improve from 3 to 10%.

No change in other heuristics. There was already an instruction budget.
Note that the instruction budget is rarely hit in the "apps" I've tried
with.

Compile-times improve from 5 to 15%.
Code size go from 4% increase (Gms) to 1% decrease (Docs).

bug:35724239
test: test-art-host test-art-target

Change-Id: I5a35c4bd826cf21fead77859709553c5b57608d6

7 years agoImprove user-friendliness of art script.
Orion Hodson [Wed, 22 Mar 2017 13:16:40 +0000 (13:16 +0000)]
Improve user-friendliness of art script.

o Add --help and usage.
o Document common user errors.
o Add flags for gdb and callgrind.

Test: art/tools/run-jdwp-tests.sh --host & manual testing

Change-Id: Ie40b53f31df17c439daf5f6425d5315dcdbe785f

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 agosigchain: make SIG_DFL handling less broken.
Josh Gao [Mon, 20 Mar 2017 23:23:41 +0000 (16:23 -0700)]
sigchain: make SIG_DFL handling less broken.

Abort with a message instead of reraising the signal, which will just
reenter the signal handler when we return.

Before the libsigchain rewrite, we would try to call SIG_IGN (i.e. 1)
as a function, with no error reporting, this improves it to an error
message.

Bug: http://b/32631264
Bug: http://b/36262089
Test: none
Change-Id: Ie0ba58b301dea48eaf3223a83883cd4af3d1576f

7 years agosigchain: allow use of sigprocmask inside handlers.
Josh Gao [Mon, 20 Mar 2017 21:58:25 +0000 (14:58 -0700)]
sigchain: allow use of sigprocmask inside handlers.

When we're inside a signal handler, we don't need to filter out claimed
signals from sigprocmask calls, since return from the signal handler
will restore the previous signal mask. Use the handling_signal thread
local to pass sigprocmask through when we're in a signal handler.

Bug: http://b/36205469
Bug: http://b/36262089
Change-Id: I7943e7a68c7929d9244cef83ddeb3d64243d8840

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 agosigchainlib: hopefully fix darwin build breakage.
Josh Gao [Mon, 20 Mar 2017 21:17:23 +0000 (14:17 -0700)]
sigchainlib: hopefully fix darwin build breakage.

Hopefully fix the following darwin build breakage:

  MacOSX10.10.sdk/usr/include/ucontext.h:43:2:
    error: The deprecated ucontext routines require _XOPEN_SOURCE to be defined

Bug: http://b/36205469
Bug: http://b/36262089
Change-Id: I172cef3872053e8c3b0d2c428f3f1e2eaf9540dc

7 years agoRevert^2: "Make sigchain actually own the signal chain.""
Josh Gao [Mon, 20 Mar 2017 23:26:42 +0000 (16:26 -0700)]
Revert^2: "Make sigchain actually own the signal chain.""

This reverts commit 33dca562d5ed9f52f63ced2334c066333ca073e9.

Bug: http://b/36205469
Bug: http://b/36262089
Original-Change-Id: I416b13de800d3e23424cf20688ccfd7e4e48a111
Change-Id: I1267be72c32ed73d1079a572d0b8907556526dde

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 agoMIPS64: Improve method entry/exit code
Alexey Frunze [Wed, 22 Mar 2017 03:16:05 +0000 (20:16 -0700)]
MIPS64: Improve method entry/exit code

Improvements:
- the stack frame is (de)allocated in one step instead of two
- the return address register, RA, is restored early for better
  instruction scheduling
- eliminate unused delay slot

Test: test-art-host-gtest
Test: booted MIPS64 (with 2nd arch MIPS32R2) in QEMU

Change-Id: I55172bd167ed1baced82bc1d542213b93b13c2ce

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 agoARM: Improve the code generated for HInstanceOf
Anton Kirilov [Fri, 17 Mar 2017 12:30:44 +0000 (12:30 +0000)]
ARM: Improve the code generated for HInstanceOf

Test: m test-art-target-run-test-009-instanceof
Test: m test-art-target-run-test-422-instanceof
Test: m test-art-target-run-test-494-checker-instanceof-tests
Test: m test-art-target-run-test-500-instanceof
Test: m test-art-target-run-test-530-instanceof-checkcast
Test: m test-art-target-run-test-603-checker-instanceof
Change-Id: Ia5e1421403605659d0f53bc794acb5e5b0af0c5e

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 agoARM: Reduce the number of branches generated for HCondition and HSelect
Anton Kirilov [Thu, 16 Mar 2017 11:47:12 +0000 (11:47 +0000)]
ARM: Reduce the number of branches generated for HCondition and HSelect

Test: m test-art-target-run-test-570-checker-select
Change-Id: I87d2e87eb2fd30355101df07eb3754b013cedf63

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