OSDN Git Service

android-x86/art.git
7 years agoMerge "MethodHandles: Add a test case for MethodHandles.permuteArguments."
Narayan Kamath [Thu, 10 Nov 2016 13:41:03 +0000 (13:41 +0000)]
Merge "MethodHandles: Add a test case for MethodHandles.permuteArguments."

7 years agoMerge "MethodHandles: Add tests for MethodHandles.filterReturnValue."
Narayan Kamath [Thu, 10 Nov 2016 13:40:28 +0000 (13:40 +0000)]
Merge "MethodHandles: Add tests for MethodHandles.filterReturnValue."

7 years agoMerge "ART jitted code profiling support."
Nicolas Geoffray [Thu, 10 Nov 2016 10:34:10 +0000 (10:34 +0000)]
Merge "ART jitted code profiling support."

7 years agoMerge "Have `make` report a failing gtest run as a top-level target."
Roland Levillain [Thu, 10 Nov 2016 10:19:19 +0000 (10:19 +0000)]
Merge "Have `make` report a failing gtest run as a top-level target."

7 years agoMerge "ART: Temporarily disable test 913 for non-aot configs"
Andreas Gampe [Thu, 10 Nov 2016 07:20:35 +0000 (07:20 +0000)]
Merge "ART: Temporarily disable test 913 for non-aot configs"

7 years agoART: Temporarily disable test 913 for non-aot configs
Andreas Gampe [Thu, 10 Nov 2016 07:17:39 +0000 (23:17 -0800)]
ART: Temporarily disable test 913 for non-aot configs

Until the test is generalized to recognize all allowed outputs,
disable non-default configurations.

Follow-up to commit 8c433b9e45a26e3bde123a5b2697ca801ae8b039 to
also disable for no-relocate configurations.

Bug: 31385354
Test: m ART_TEST_RUN_TEST_NO_RELOCATE=true test-art-host-run-test-913-heaps
Change-Id: If29ffdcca1fbd69bbac559dce99e84dc2592539a

7 years agoMerge "ART: Temporarily disable test 913 for non-aot configs"
Andreas Gampe [Thu, 10 Nov 2016 05:03:06 +0000 (05:03 +0000)]
Merge "ART: Temporarily disable test 913 for non-aot configs"

7 years agoART: Temporarily disable test 913 for non-aot configs
Andreas Gampe [Thu, 10 Nov 2016 03:33:08 +0000 (19:33 -0800)]
ART: Temporarily disable test 913 for non-aot configs

Until the test is generalized to recognize all allowed outputs,
disable non-default configurations.

Bug: 31385354
Test: m ART_TEST_INTERPRETER=true ART_TEST_JIT=true test-art-host-run-test-913-heaps
Change-Id: Iad10879391d8029445032d7b5a69e6ebf2672b9e

7 years agoMerge "Fix heap poisoning build"
Mathieu Chartier [Thu, 10 Nov 2016 02:19:10 +0000 (02:19 +0000)]
Merge "Fix heap poisoning build"

7 years agoFix heap poisoning build
Mathieu Chartier [Thu, 10 Nov 2016 00:33:54 +0000 (16:33 -0800)]
Fix heap poisoning build

Bug: 32577579

Test: mm build-art

Change-Id: I394691334ae2029810e069c768d34077d36679e2

7 years agoMerge "ART: Add reference following code"
Treehugger Robot [Thu, 10 Nov 2016 00:39:22 +0000 (00:39 +0000)]
Merge "ART: Add reference following code"

7 years agoMerge "Add interface check cast fast path to arm, arm64, x86"
Mathieu Chartier [Wed, 9 Nov 2016 23:16:16 +0000 (23:16 +0000)]
Merge "Add interface check cast fast path to arm, arm64, x86"

7 years agoMerge "Revert "Rename vdex-fd to output-vdex-fd, add input-vdex-fd.""
Nicolas Geoffray [Wed, 9 Nov 2016 21:32:14 +0000 (21:32 +0000)]
Merge "Revert "Rename vdex-fd to output-vdex-fd, add input-vdex-fd.""

7 years agoRevert "Rename vdex-fd to output-vdex-fd, add input-vdex-fd."
Nicolas Geoffray [Wed, 9 Nov 2016 21:31:26 +0000 (21:31 +0000)]
Revert "Rename vdex-fd to output-vdex-fd, add input-vdex-fd."

Mishandled create_vdex_filename in installd.

This reverts commit bc654d0cbb4f45057f9482ad81cb613386bbce34.

Change-Id: I78f8fcd1c63133624f5bba01864ab858da0451d1

7 years agoART: Add reference following code
Andreas Gampe [Thu, 3 Nov 2016 18:04:15 +0000 (11:04 -0700)]
ART: Add reference following code

Add FollowReferences support. This is a work in progress.
Specific support for the metadata will be added iteratively.

Add a basic test to 913-heaps.

Bug: 31385354
Test: m test-art-host
Change-Id: I832b05a7397dc96cd9a868020dd7029255f6de87

7 years agoMerge "ART: Refactor some TI test code for reuse"
Treehugger Robot [Wed, 9 Nov 2016 19:27:27 +0000 (19:27 +0000)]
Merge "ART: Refactor some TI test code for reuse"

7 years agoMerge "Allow read side effects for removing dead instructions."
Aart Bik [Wed, 9 Nov 2016 19:06:11 +0000 (19:06 +0000)]
Merge "Allow read side effects for removing dead instructions."

7 years agoAdd interface check cast fast path to arm, arm64, x86
Mathieu Chartier [Sat, 5 Nov 2016 01:13:04 +0000 (18:13 -0700)]
Add interface check cast fast path to arm, arm64, x86

Bug: 12687968
Bug: 32577579

Test: test-art-host, test-art-target CC

Change-Id: Ia57099d499fa704803cc5f0135f0f53fefe39826

7 years agoAllow read side effects for removing dead instructions.
Aart Bik [Mon, 7 Nov 2016 16:49:28 +0000 (08:49 -0800)]
Allow read side effects for removing dead instructions.

Rationale:
Instructions that only have the harmless read side effect may
be removed when dead as well, we were too strict previously.
As proof of concept, this cl also provides more accurate information
on a few string related intrinsics. This removes the dead indexOf
from CaffeineString (17% performance improvement, big bottleneck
of the StringBuffer's toString() still remains in loop).

Test: test-art-host
Change-Id: Id835a8e287e13e1f09be6b46278a039b8865802e

7 years agoMerge "Revert "JIT root tables.""
Nicolas Geoffray [Wed, 9 Nov 2016 17:30:49 +0000 (17:30 +0000)]
Merge "Revert "JIT root tables.""

7 years agoRevert "JIT root tables."
Nicolas Geoffray [Wed, 9 Nov 2016 17:30:31 +0000 (17:30 +0000)]
Revert "JIT root tables."

May be the offender for jit-gcstress failure of 902.

This reverts commit ac3ebc3150760425ed00abd56da48f9a6e0666bc.

Change-Id: I9ea6c9236fd1729fed7d1868dd8a111172932308

7 years agoMerge "Revert "Support kJitTableAddress in x86/arm/arm64.""
Nicolas Geoffray [Wed, 9 Nov 2016 17:30:00 +0000 (17:30 +0000)]
Merge "Revert "Support kJitTableAddress in x86/arm/arm64.""

7 years agoRevert "Support kJitTableAddress in x86/arm/arm64."
Nicolas Geoffray [Wed, 9 Nov 2016 17:29:03 +0000 (17:29 +0000)]
Revert "Support kJitTableAddress in x86/arm/arm64."

Revert this in order to revert https://android-review.googlesource.com/#/c/285781/

This reverts commit 997d1217830c0a18b70faeabd53c04700a87d7d9.

Change-Id: I1888fba1c6f712cae4aec4ea4719b74a46da156c

7 years agoHave `make` report a failing gtest run as a top-level target.
Roland Levillain [Wed, 9 Nov 2016 16:38:42 +0000 (16:38 +0000)]
Have `make` report a failing gtest run as a top-level target.

Before, if an individual gtest such (as
`test-art-host-gtest-output_stream_test64`) was invoked as
`make`'s top-level target and failing, `make` would not
report it as such through its exit status (it would be 0
whatever the result). However, when run as part of a
compound test target (such as
`test-art-host-gtest-output_stream_test` or
`test-art-host-gtest`), `make` would actually report this
test's (and maybe others') failure with a non-zero exit
status. This CL forces `make` to report a non-zero exit
status in the former case without breaking the latter one.

Test: Amend a gtest such as compiler/linker/output_stream_test.cc
    to make it artificially fail, and run it with:
      make test-art-host-gtest-output_stream_test
      make test-art-host-gtest-output_stream_test64
Bug: 31755702

Change-Id: Icbb6fef592f14d73808576e7fcb0e9d7079ec9a2

7 years agoART: Refactor some TI test code for reuse
Andreas Gampe [Wed, 9 Nov 2016 01:02:19 +0000 (17:02 -0800)]
ART: Refactor some TI test code for reuse

Pull out helper code for creating arrays of data.

Bug: 31385354
Test: m test-art-host
Change-Id: I916fffa18f5a61bd17acbdbdaffce5b4c66a33ab

7 years agoMerge "Reduce arena memory usage when changing graph structure."
Treehugger Robot [Wed, 9 Nov 2016 16:42:45 +0000 (16:42 +0000)]
Merge "Reduce arena memory usage when changing graph structure."

7 years agoMerge "Support kJitTableAddress in x86/arm/arm64."
Nicolas Geoffray [Wed, 9 Nov 2016 16:25:23 +0000 (16:25 +0000)]
Merge "Support kJitTableAddress in x86/arm/arm64."

7 years agoMerge "Remove timeout for the 570-checker-osr test"
Treehugger Robot [Wed, 9 Nov 2016 16:01:04 +0000 (16:01 +0000)]
Merge "Remove timeout for the 570-checker-osr test"

7 years agoReduce arena memory usage when changing graph structure.
Vladimir Marko [Wed, 9 Nov 2016 14:11:37 +0000 (14:11 +0000)]
Reduce arena memory usage when changing graph structure.

Use swap() to reuse previously allocated memory. Use
range insertion instead of individual push_back()s.

Test: m test-art-host.
Change-Id: I7174f8cc66937f34b452ff7268a8806ca94e7573

7 years agoMethodHandles: Add a test case for MethodHandles.permuteArguments.
Narayan Kamath [Tue, 8 Nov 2016 19:38:48 +0000 (19:38 +0000)]
MethodHandles: Add a test case for MethodHandles.permuteArguments.

Bug: 30550796
Test: make test-art-host
Change-Id: Idf1f330422a3be769e175f3e46c181d94217b9fa

7 years agoSupport kJitTableAddress in x86/arm/arm64.
Nicolas Geoffray [Wed, 9 Nov 2016 10:36:29 +0000 (10:36 +0000)]
Support kJitTableAddress in x86/arm/arm64.

test: test-art-host test-art-target, angler boots and runs.
Change-Id: I3654ae2809d4d759db76ee1ada1c17f3a9c3b392

7 years agoMerge "Fix 552-checker-sharpening for PIC test."
Treehugger Robot [Wed, 9 Nov 2016 14:20:41 +0000 (14:20 +0000)]
Merge "Fix 552-checker-sharpening for PIC test."

7 years agoRemove timeout for the 570-checker-osr test
Goran Jakovljevic [Fri, 4 Nov 2016 13:31:20 +0000 (14:31 +0100)]
Remove timeout for the 570-checker-osr test

The test is failing when running on emulator or slower devices.
Timeout is not needed anymore since all architectures have support
for OSR.

Test: ./run-test --jit 570-checker-osr

Change-Id: I3e84edfef3487e154e79688b81ad62dba45f9a2f

7 years agoMerge "MethodHandles: Remove obsolete TODO."
Narayan Kamath [Wed, 9 Nov 2016 14:05:33 +0000 (14:05 +0000)]
Merge "MethodHandles: Remove obsolete TODO."

7 years agoMerge "Rename vdex-fd to output-vdex-fd, add input-vdex-fd."
Nicolas Geoffray [Wed, 9 Nov 2016 13:57:23 +0000 (13:57 +0000)]
Merge "Rename vdex-fd to output-vdex-fd, add input-vdex-fd."

7 years agoFix 552-checker-sharpening for PIC test.
Vladimir Marko [Wed, 9 Nov 2016 12:46:38 +0000 (12:46 +0000)]
Fix 552-checker-sharpening for PIC test.

And remove obsolete HLoadString::LoadKind::kDexCacheAddress.

Test: m ART_TEST_PIC_TEST=true test-art-host
Change-Id: I3e7a1a98c2c7eba5ea10954d7efcf743a807c300

7 years agoMethodHandles: Remove obsolete TODO.
Narayan Kamath [Wed, 9 Nov 2016 11:14:38 +0000 (11:14 +0000)]
MethodHandles: Remove obsolete TODO.

It was addressed by change 0d781e6e17a3f6285736c590001b59d50879f13b.

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

7 years agoMethodHandles: Add tests for MethodHandles.filterReturnValue.
Narayan Kamath [Tue, 8 Nov 2016 18:36:16 +0000 (18:36 +0000)]
MethodHandles: Add tests for MethodHandles.filterReturnValue.

Test: make test-art-host
Bug: 30550796
Change-Id: I2c8f25b003cbeee24e7603637169200a02d31e1c

7 years agoMerge "MethodHandles: Add tests for MethodHandle.bindTo."
Narayan Kamath [Wed, 9 Nov 2016 10:41:21 +0000 (10:41 +0000)]
Merge "MethodHandles: Add tests for MethodHandle.bindTo."

7 years agoMethodHandles: Add tests for MethodHandle.bindTo.
Narayan Kamath [Fri, 4 Nov 2016 14:41:19 +0000 (14:41 +0000)]
MethodHandles: Add tests for MethodHandle.bindTo.

Test: make test-art-host
Bug: 30550796
Change-Id: I7e8bd8c8cae5f874f7743fd1a0a361875fcb997e

7 years agoRename vdex-fd to output-vdex-fd, add input-vdex-fd.
Nicolas Geoffray [Mon, 7 Nov 2016 16:23:11 +0000 (16:23 +0000)]
Rename vdex-fd to output-vdex-fd, add input-vdex-fd.

In preparation for installd changes around vdex.

bug:30937355
Test: device boots, oat_file_assistant_test

Change-Id: I7eba67f278a03d77b3e66fd24a96fbfd442db678

7 years agoMerge "JIT root tables."
Nicolas Geoffray [Wed, 9 Nov 2016 09:55:45 +0000 (09:55 +0000)]
Merge "JIT root tables."

7 years agoMerge "MethodHandles: Constructor support"
Orion Hodson [Wed, 9 Nov 2016 08:44:00 +0000 (08:44 +0000)]
Merge "MethodHandles: Constructor support"

7 years agoMerge "ART: Fix tidy warnings"
Treehugger Robot [Wed, 9 Nov 2016 01:48:19 +0000 (01:48 +0000)]
Merge "ART: Fix tidy warnings"

7 years agoMerge "Allow HDeoptimize to co-exist with LSE."
Mingyao Yang [Tue, 8 Nov 2016 23:29:12 +0000 (23:29 +0000)]
Merge "Allow HDeoptimize to co-exist with LSE."

7 years agoMerge "ART: Refactor jfieldID handling"
Treehugger Robot [Tue, 8 Nov 2016 23:21:21 +0000 (23:21 +0000)]
Merge "ART: Refactor jfieldID handling"

7 years agoMerge "Change check cast entrypoint to check instance of"
Mathieu Chartier [Tue, 8 Nov 2016 23:14:22 +0000 (23:14 +0000)]
Merge "Change check cast entrypoint to check instance of"

7 years agoART: Fix tidy warnings
Andreas Gampe [Tue, 8 Nov 2016 16:09:33 +0000 (08:09 -0800)]
ART: Fix tidy warnings

Switch to char versions of find variants.

Add "explicit" constructor variants or refactor and
remove defaults.

Use const references.

Bug: 32619234
Test: m test-art-host
Change-Id: I970cc2f47d6cf8f0c74104b994b075b2fafb3d45

7 years agoART: Refactor jfieldID handling
Andreas Gampe [Tue, 8 Nov 2016 21:20:52 +0000 (13:20 -0800)]
ART: Refactor jfieldID handling

ArtField objects have been native since Marshmallow.
Remove the dependency on being runnable. Refactor the
code into the jni_internal header.

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

7 years agoMerge "ART: Refactor jmethodID handling"
Treehugger Robot [Tue, 8 Nov 2016 21:15:39 +0000 (21:15 +0000)]
Merge "ART: Refactor jmethodID handling"

7 years agoChange check cast entrypoint to check instance of
Mathieu Chartier [Tue, 8 Nov 2016 00:17:26 +0000 (16:17 -0800)]
Change check cast entrypoint to check instance of

Reduces code size since we do not need to reload class before
calling slow path.

TODO: Delete read barriers in the check cast code since the slow
path will retry with the proper read barriers if the check fails.

Bug: 12687968
Bug: 29516974

Test: test-art-host + test-art-target with CC

Change-Id: Ia4eb9bbe3fe2d2016e44523cf0451210828d7b88

7 years agoJIT root tables.
Nicolas Geoffray [Wed, 5 Oct 2016 12:13:50 +0000 (13:13 +0100)]
JIT root tables.

Implement root tables for the JIT. Each JIT compiled method
gets a table allocated before the stack maps.

The table gets visited through Runtime::SweepSystemWeaks.

Implement String roots for x86_64 as an example.

Test: test-art-host test-art-target

Change-Id: Id3d5bc67479e08b52dd4b253e970201203a0f0d2

7 years agoMethodHandles: Constructor support
Orion Hodson [Fri, 4 Nov 2016 11:09:53 +0000 (11:09 +0000)]
MethodHandles: Constructor support

Test: m test-art-host-run-test-956-methodhandles
Bug: 30550796

Change-Id: Ied466d7e0f0f0b472e3a28909ca712dfdb99e422

7 years agoMerge "Fix SimplifyIfs() trying to redirect exception handler edges."
Vladimir Marko [Tue, 8 Nov 2016 13:50:23 +0000 (13:50 +0000)]
Merge "Fix SimplifyIfs() trying to redirect exception handler edges."

7 years agoMerge "Add String.indexOf() benchmark."
Vladimir Marko [Tue, 8 Nov 2016 12:32:17 +0000 (12:32 +0000)]
Merge "Add String.indexOf() benchmark."

7 years agoFix SimplifyIfs() trying to redirect exception handler edges.
Vladimir Marko [Thu, 3 Nov 2016 13:01:28 +0000 (13:01 +0000)]
Fix SimplifyIfs() trying to redirect exception handler edges.

Test: 622-simplifyifs-exception-edges
Test: m test-art-host
Bug: 32545860
Bug: 32546110
Bug: 18051191
Change-Id: I641ed73baace840411fc5651937bbc80e79b0c46

7 years agoMerge "Argument conversions for setter/getter MethodHandles."
Treehugger Robot [Tue, 8 Nov 2016 09:19:52 +0000 (09:19 +0000)]
Merge "Argument conversions for setter/getter MethodHandles."

7 years agoArgument conversions for setter/getter MethodHandles.
Orion Hodson [Wed, 26 Oct 2016 09:56:25 +0000 (10:56 +0100)]
Argument conversions for setter/getter MethodHandles.

Test: m test-art-host-run-test-959-invoke-polymorphic-accessors
Bug: 30550796

Change-Id: I9898605fc9f9f8a80f47f9559f3ccb99b02b07c8

7 years agoART: Refactor jmethodID handling
Andreas Gampe [Tue, 8 Nov 2016 00:48:23 +0000 (16:48 -0800)]
ART: Refactor jmethodID handling

ArtMethod objects have been native since Marshmallow.
Remove the dependency on being runnable. Refactor the
code into the jni_internal header.

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

7 years agoMerge "ART: Extend Object tag table to be explicitly lockable"
Treehugger Robot [Tue, 8 Nov 2016 02:26:40 +0000 (02:26 +0000)]
Merge "ART: Extend Object tag table to be explicitly lockable"

7 years agoMerge "Add forwarding address checks for X86, arm, arm64"
Treehugger Robot [Mon, 7 Nov 2016 23:07:30 +0000 (23:07 +0000)]
Merge "Add forwarding address checks for X86, arm, arm64"

7 years agoMerge "ART: Add Unlink to FdFile"
Treehugger Robot [Mon, 7 Nov 2016 21:27:46 +0000 (21:27 +0000)]
Merge "ART: Add Unlink to FdFile"

7 years agoMerge "ART: Make excludes explicit"
Treehugger Robot [Mon, 7 Nov 2016 21:02:27 +0000 (21:02 +0000)]
Merge "ART: Make excludes explicit"

7 years agoAdd forwarding address checks for X86, arm, arm64
Mathieu Chartier [Thu, 3 Nov 2016 18:15:04 +0000 (11:15 -0700)]
Add forwarding address checks for X86, arm, arm64

Added to READ_BARRIER_MARK_REG.

Bug: 30162165

Test: test-art-host, test-art-target

Change-Id: I15cf0d51ed3d22fa401e80ffac3877d61593527c

7 years agoMerge "Support genrules with multiple tools"
Colin Cross [Mon, 7 Nov 2016 20:28:25 +0000 (20:28 +0000)]
Merge "Support genrules with multiple tools"

7 years agoART: Add Unlink to FdFile
Andreas Gampe [Fri, 24 Jun 2016 17:49:32 +0000 (10:49 -0700)]
ART: Add Unlink to FdFile

Add Unlink function that tries to unlink the file if it
was created with a file path. The function tries to
ensure that it does not unlink a newer file.

Add a parameter to Erase to add unlinking.

Test: m test-art-host-gtest-fd_file_test
Change-Id: I49993bb94aec10d5c8d9b2cbea30ebaa255b99e1

7 years agoSupport genrules with multiple tools
Colin Cross [Fri, 4 Nov 2016 22:31:17 +0000 (15:31 -0700)]
Support genrules with multiple tools

To allow genrules with more than one tool, rename the tool property to
tools and make it an array, replace $tool with $(location <label>),
and use $() for other variables for consistency.

Bug: 31948427
Test: compare build.ninja
Change-Id: I8d53510ac081ae20835b3ab7dfee3d74c520ab4d
(cherry picked from commit 7d332965ea44f54ddeedc9b7fadcf2e5b3259f3a)

7 years agoART: Extend Object tag table to be explicitly lockable
Andreas Gampe [Mon, 7 Nov 2016 18:10:21 +0000 (10:10 -0800)]
ART: Extend Object tag table to be explicitly lockable

Expose the lock for the system weak holder. Add functions to lock
and unlock the object tagging table, and add accessors that assume
the table is already locked.

Bug: 31385354
Test: m test-art-host
Change-Id: I5a4328b0d439d13e6ace7965e22f01bbf8130f20

7 years agoART: Make excludes explicit
Andreas Gampe [Sat, 5 Nov 2016 03:27:24 +0000 (20:27 -0700)]
ART: Make excludes explicit

Fix some missing lock excludes.

Test: m
Change-Id: If74708c5d16469490e3374b7d5ffc23dd2ea5ec1

7 years agoMerge "NB getError returns const char"
Dimitry Ivanov [Mon, 7 Nov 2016 18:00:39 +0000 (18:00 +0000)]
Merge "NB getError returns const char"

7 years agoMerge changes I04517ee2,I476792ca
Treehugger Robot [Mon, 7 Nov 2016 17:46:49 +0000 (17:46 +0000)]
Merge changes I04517ee2,I476792ca

* changes:
  ART: Remove unused lock levels
  ART: Clean up old mutex

7 years agoMerge "MethodHandles: Add tests for array accessors / identity / constant."
Treehugger Robot [Mon, 7 Nov 2016 13:15:41 +0000 (13:15 +0000)]
Merge "MethodHandles: Add tests for array accessors / identity / constant."

7 years agoMerge "Revert "Revert "Enable IntermediateAddress for primitive arrays with read...
Roland Levillain [Mon, 7 Nov 2016 12:54:20 +0000 (12:54 +0000)]
Merge "Revert "Revert "Enable IntermediateAddress for primitive arrays with read barriers."""

7 years agoMethodHandles: Add tests for array accessors / identity / constant.
Narayan Kamath [Thu, 3 Nov 2016 18:01:32 +0000 (18:01 +0000)]
MethodHandles: Add tests for array accessors / identity / constant.

Accompanies libcore change a93a1fcc5b0e.

Test: make test-art-host
Bug: 30550796
Change-Id: Ic793687d98f850ffcd5f09fd3ab02d44644787d5

7 years agoAdd String.indexOf() benchmark.
Vladimir Marko [Thu, 3 Nov 2016 13:25:44 +0000 (13:25 +0000)]
Add String.indexOf() benchmark.

Test: vogar --benchmark art/benchmark/string-indexof/src/StringIndexOfBenchmark.java
Change-Id: I57c8c9c7ede2b0e86a6142e713b4e8be094c82ce

7 years agoMerge "Increase file size limit."
Nicolas Geoffray [Sun, 6 Nov 2016 14:25:42 +0000 (14:25 +0000)]
Merge "Increase file size limit."

7 years agoIncrease file size limit.
Nicolas Geoffray [Sun, 6 Nov 2016 14:24:08 +0000 (14:24 +0000)]
Increase file size limit.

Some checker tests now require more, as the cfg they
generate got bigger.

test: test-art-target
Change-Id: I301bc99730b139f7f5bdec77df3d6bee272d609e

7 years agoMerge "Fix poison build."
Nicolas Geoffray [Sun, 6 Nov 2016 13:54:32 +0000 (13:54 +0000)]
Merge "Fix poison build."

7 years agoFix poison build.
Nicolas Geoffray [Sat, 5 Nov 2016 15:09:19 +0000 (15:09 +0000)]
Fix poison build.

The slow path for interface check cast isn't fatal for that build.

Test: ART_HEAP_POISONING=true/false m test-art-host-run-test
Change-Id: I3daf59e7f1e828ec72faf899adfafc9abd0fed88

7 years agoMerge "ART: Make TypeCheckSlowPath call kind consistent"
Andreas Gampe [Sat, 5 Nov 2016 02:49:18 +0000 (02:49 +0000)]
Merge "ART: Make TypeCheckSlowPath call kind consistent"

7 years agoART: Make TypeCheckSlowPath call kind consistent
Andreas Gampe [Sat, 5 Nov 2016 02:25:20 +0000 (19:25 -0700)]
ART: Make TypeCheckSlowPath call kind consistent

Slight refactor to make location and code generator consistent.

Bug: 32577579
Bug: 29516974
Test: m test-art-host
Change-Id: I11f8e227d4088d4922e6fdac3348cfe0f6690216

7 years agoART: Remove unused lock levels
Andreas Gampe [Sat, 5 Nov 2016 01:07:20 +0000 (18:07 -0700)]
ART: Remove unused lock levels

Removes three obsolete lock levels.

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

7 years agoNB getError returns const char
Dimitry Ivanov [Sat, 5 Nov 2016 01:03:37 +0000 (18:03 -0700)]
NB getError returns const char

We fixed the NB interface to have the callback return const char*
instead of char*, this commit fixes the test.

Bug: 32542970
Test: make test-art-host -j48
Change-Id: Iebab91c94dcc5699623226f220d6ef474b1a5f1f

7 years agoMerge "X86_64: Inline checking for kInterfaceCheck check cast"
Mathieu Chartier [Sat, 5 Nov 2016 00:54:21 +0000 (00:54 +0000)]
Merge "X86_64: Inline checking for kInterfaceCheck check cast"

7 years agoART: Clean up old mutex
Andreas Gampe [Fri, 4 Nov 2016 23:39:27 +0000 (16:39 -0700)]
ART: Clean up old mutex

Remove obsolete mutex.

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

7 years agoAllow HDeoptimize to co-exist with LSE.
Mingyao Yang [Fri, 28 Oct 2016 18:07:24 +0000 (11:07 -0700)]
Allow HDeoptimize to co-exist with LSE.

The env use of HDeoptimize counts as escaping at the end of
executing the compiled code for a singleton, just like a return.
So store elimination won't happen for that singleton's locations.

Test: make test-art-host
Bug: 31716107

Change-Id: I09838e80586d279714c676a2f7294ae518f61457

7 years agoX86_64: Inline checking for kInterfaceCheck check cast
Mathieu Chartier [Fri, 4 Nov 2016 02:23:06 +0000 (19:23 -0700)]
X86_64: Inline checking for kInterfaceCheck check cast

Interface check-cast with read barriers:
Before: 5.27 ns/check
After: 2.36 ns/check

Code expansion is 0.29%.

Test: test-art-host

Bug: 32577579
Bug: 29516974

Change-Id: Ie48251f97fbf2c95bd0a7c4bd62075414f8e3ae3

7 years agoMerge "ART: Ignore google-default-arguments tidy check"
Treehugger Robot [Fri, 4 Nov 2016 20:01:22 +0000 (20:01 +0000)]
Merge "ART: Ignore google-default-arguments tidy check"

7 years agoMerge "ART: Add NOLINT to ObjPtr"
Treehugger Robot [Fri, 4 Nov 2016 20:00:34 +0000 (20:00 +0000)]
Merge "ART: Add NOLINT to ObjPtr"

7 years agoMerge changes I8bbef5e3,Ib68bdc31,Ie39b7f59,I1ef8b65a
Treehugger Robot [Fri, 4 Nov 2016 19:22:58 +0000 (19:22 +0000)]
Merge changes I8bbef5e3,Ib68bdc31,Ie39b7f59,I1ef8b65a

* changes:
  ART: Remove "explicit" annotation
  ART: Use references in assembler tests
  ART: Make ManagedRegister ValueObject
  ART: Make Location trivially copyable

7 years agoMerge "Account for early exit loop."
Treehugger Robot [Fri, 4 Nov 2016 17:42:31 +0000 (17:42 +0000)]
Merge "Account for early exit loop."

7 years agoMerge "Fix spin waiting for weak ref access in the intern table for CC."
Hiroshi Yamauchi [Fri, 4 Nov 2016 17:27:24 +0000 (17:27 +0000)]
Merge "Fix spin waiting for weak ref access in the intern table for CC."

7 years agoMerge "Avoid visiting just eliminated bounds check."
Treehugger Robot [Fri, 4 Nov 2016 16:45:12 +0000 (16:45 +0000)]
Merge "Avoid visiting just eliminated bounds check."

7 years agoRevert "Revert "Enable IntermediateAddress for primitive arrays with read barriers.""
Roland Levillain [Fri, 4 Nov 2016 13:44:09 +0000 (13:44 +0000)]
Revert "Revert "Enable IntermediateAddress for primitive arrays with read barriers.""

This reverts commit 4a3aa578eff94eb10450fae1772deb7cb8ddc6a6.

The failing assertion (see b/30762467):

08-09 11:32:46.767  1654  1656 F dex2oatd: art/compiler/optimizing/register_allocation_resolver.cc:325] Check failed: interval->GetDefinedBy()->IsActualObject() IntermediateAddress@InstanceFieldGet

that motivated the initial revert has been removed by a
previous CL (commit
70e97462116a47ef2e582ea29a037847debcc029,
https://android-review.googlesource.com/#/c/254920/).

Test: ART host and target (ARM, ARM64) tests with `ART_USE_READ_BARRIER=true`.
Bug: 26601270
Bug: 12687968
Change-Id: I09cae0c6c38ca403924153e9f0eb0cc3ff4540e7

7 years agoMerge "Fix ART run-test 562-no-intermediate."
Roland Levillain [Fri, 4 Nov 2016 16:35:07 +0000 (16:35 +0000)]
Merge "Fix ART run-test 562-no-intermediate."

7 years agoART: Ignore google-default-arguments tidy check
Andreas Gampe [Thu, 3 Nov 2016 23:48:51 +0000 (16:48 -0700)]
ART: Ignore google-default-arguments tidy check

Ignore the check for default arguments in virtual functions.

Bug: 32619234
Test: m
Change-Id: I62f1b36ca6fd0965cfd9f6be343b8a63ac4642c6

7 years agoART: Add NOLINT to ObjPtr
Andreas Gampe [Thu, 3 Nov 2016 22:46:34 +0000 (15:46 -0700)]
ART: Add NOLINT to ObjPtr

The ObjPtr constructors are constructed to allow implicit conversion.

Also ensure that ObjPtr is trivially copyable.

Bug: 32619234
Test: m
Change-Id: I022e8d7d5a54c0057e9007bb7c13312b343c23b6

7 years agoART: Remove "explicit" annotation
Andreas Gampe [Fri, 4 Nov 2016 00:24:45 +0000 (17:24 -0700)]
ART: Remove "explicit" annotation

Remove unnecessary annotation.

Bug: 32619234
Test: m
Change-Id: I8bbef5e3b4b8d3f5ddeaece08fe614b9eeae6f2c

7 years agoART: Use references in assembler tests
Andreas Gampe [Fri, 4 Nov 2016 00:24:15 +0000 (17:24 -0700)]
ART: Use references in assembler tests

Move parameters to const references.

Bug: 32619234
Test: m
Change-Id: Ib68bdc313b91fee1e9e4e1e794eeca630837b005

7 years agoART: Make ManagedRegister ValueObject
Andreas Gampe [Thu, 3 Nov 2016 23:50:05 +0000 (16:50 -0700)]
ART: Make ManagedRegister ValueObject

Make ManagedRegister a value class, and ensure it is trivially
copyable.

Bug: 32619234
Test: m
Change-Id: Ie39b7f59a01ed293891e97110db3f5262f25fb4e