OSDN Git Service

android-x86/art.git
7 years agoMerge "interpreter: Remove unnecessary template arg from DoCallCommon."
Narayan Kamath [Tue, 4 Oct 2016 08:35:13 +0000 (08:35 +0000)]
Merge "interpreter: Remove unnecessary template arg from DoCallCommon."

7 years agointerpreter: Remove unnecessary template arg from DoCallCommon.
Narayan Kamath [Mon, 3 Oct 2016 15:51:22 +0000 (16:51 +0100)]
interpreter: Remove unnecessary template arg from DoCallCommon.

The function was always called with a fixed size array so there's
no real advantage in templatizing it this way.

Test: make build-art-host

Change-Id: I782e113225f1c97877f2bcb5afe8df9ae8efd26e

7 years agoMerge "Add handle wrapper for interpreter field get/set"
Mathieu Chartier [Tue, 4 Oct 2016 08:02:59 +0000 (08:02 +0000)]
Merge "Add handle wrapper for interpreter field get/set"

7 years agoAdd handle wrapper for interpreter field get/set
Mathieu Chartier [Tue, 4 Oct 2016 05:49:46 +0000 (22:49 -0700)]
Add handle wrapper for interpreter field get/set

The listeners have thread suspension for jdwp tests.

Bug: 31113334

Test: tools/run-jdwp-tests.sh '--mode=host' '--variant=X32' --no-jit --debug

Change-Id: I08f17432cc0c79ee9a0163eb88d4d6355f6851ca

7 years agoMerge changes I50493bca,I8b266ad0
Mathieu Chartier [Tue, 4 Oct 2016 01:06:05 +0000 (01:06 +0000)]
Merge changes I50493bca,I8b266ad0

* changes:
  Use ObjPtr for ResolvedFieldAccessTest and ResolvedMethodAccessTest
  Move ArtField to ObjPtr

7 years agoMerge "Add dex file writer to dexlayout tool."
Jeff Hao [Tue, 4 Oct 2016 00:46:26 +0000 (00:46 +0000)]
Merge "Add dex file writer to dexlayout tool."

7 years agoMerge "art: Replace cutils/log.h with android/log.h"
Mark Salyzyn [Mon, 3 Oct 2016 23:02:27 +0000 (23:02 +0000)]
Merge "art: Replace cutils/log.h with android/log.h"

7 years agoUse ObjPtr for ResolvedFieldAccessTest and ResolvedMethodAccessTest
Mathieu Chartier [Fri, 30 Sep 2016 17:27:43 +0000 (10:27 -0700)]
Use ObjPtr for ResolvedFieldAccessTest and ResolvedMethodAccessTest

Also added LookupResolvedType that is guaranteed to not do thread
suspension but deals with multidex since GetResolvedType will
return null if the type was resolved in another dex file.

Added test.

Bug: 31113334

Test: test-art-host CC baker

Change-Id: I50493bca7d8ce9760546c3116b717484c62c47a4

7 years agoAdd dex file writer to dexlayout tool.
Jeff Hao [Fri, 23 Sep 2016 01:02:49 +0000 (18:02 -0700)]
Add dex file writer to dexlayout tool.

All sections are being written out properly.
There is one small difference:
  - unindexed string data is not written out

Bug: 29921113
Test: mm test-art-host-gtest-dexlayout_test
Change-Id: I3872327526a350f33f0f851516a389622c1a54ae

7 years agoMerge "Run dexfuzz in bisection-search mode"
Aart Bik [Mon, 3 Oct 2016 21:29:19 +0000 (21:29 +0000)]
Merge "Run dexfuzz in bisection-search mode"

7 years agoMove ArtField to ObjPtr
Mathieu Chartier [Fri, 30 Sep 2016 17:27:43 +0000 (10:27 -0700)]
Move ArtField to ObjPtr

Added EXPECT_OBJ_PTR_EQ and variants to gtests.

Fixed moving GC bugs in:
ClassLinker::CreatePathClassLoader
ClassLinkerTest: StaticFields

ObjPtr Decode call sites: 186 -> 181.

Some tests fail due to ResolvedFieldAccessTest, will fix in follow
up CL.

Bug: 31113334

Test: test-art-host CC baker

Change-Id: I8b266ad00f3c20c8cbe7cfdf280d175083df0b88

7 years agoRun dexfuzz in bisection-search mode
Wojciech Staszkiewicz [Thu, 29 Sep 2016 22:12:48 +0000 (15:12 -0700)]
Run dexfuzz in bisection-search mode

Call dexfuzz with --bisection-search switch to automatically bisect
discovered divergences.

Test: ./run_dex_fuzz_test.py
Change-Id: I87af8b45675b464e984a05e06eac24cad3650d2b

7 years agoMerge "benchmark: Add a build target that's not Android-dependent"
Treehugger Robot [Mon, 3 Oct 2016 19:39:28 +0000 (19:39 +0000)]
Merge "benchmark: Add a build target that's not Android-dependent"

7 years agoart: Replace cutils/log.h with android/log.h
Mark Salyzyn [Wed, 28 Sep 2016 22:29:14 +0000 (15:29 -0700)]
art: Replace cutils/log.h with android/log.h

Test: compile
Bug: 26552300
Bug: 31289077
Change-Id: Ie5720d9e1388047856392e8635895895c22f3112

7 years agoMerge "Delete some unused bitmap walking code"
Mathieu Chartier [Mon, 3 Oct 2016 18:27:26 +0000 (18:27 +0000)]
Merge "Delete some unused bitmap walking code"

7 years agobenchmark: Add a build target that's not Android-dependent
Igor Murashkin [Fri, 30 Sep 2016 21:12:14 +0000 (14:12 -0700)]
benchmark: Add a build target that's not Android-dependent

Allow building the micronative portion of libartbenchmark as pure JNI without any android
library dependencies.

Bug: 31401609
Change-Id: I99f1466fb668a9ae5dd2f7229dca44d3bb064e15

7 years agoMerge "Reserve space in the char backing vector to prevent reallocations"
Jeff Hao [Mon, 3 Oct 2016 17:42:15 +0000 (17:42 +0000)]
Merge "Reserve space in the char backing vector to prevent reallocations"

7 years agoMerge "DexCachePair : Add an Assign method."
Narayan Kamath [Mon, 3 Oct 2016 13:10:42 +0000 (13:10 +0000)]
Merge "DexCachePair : Add an Assign method."

7 years agoDexCachePair : Add an Assign method.
Narayan Kamath [Fri, 30 Sep 2016 15:29:19 +0000 (16:29 +0100)]
DexCachePair : Add an Assign method.

This prevents the logic for determining a slot from the type ID from
being scattered all over the place.

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

7 years agoMerge "Address review comments for change 25352fc06c84cdab8a2ab."
Narayan Kamath [Mon, 3 Oct 2016 13:09:34 +0000 (13:09 +0000)]
Merge "Address review comments for change 25352fc06c84cdab8a2ab."

7 years agoAddress review comments for change 25352fc06c84cdab8a2ab.
Narayan Kamath [Mon, 3 Oct 2016 10:33:01 +0000 (11:33 +0100)]
Address review comments for change 25352fc06c84cdab8a2ab.

Test: make test-art-host
Bug: 30550796

Change-Id: Ic689e4c9bee691f03703288c3b12634a26841140

7 years agoMerge "class_linker: Add support for resolving method types."
Treehugger Robot [Mon, 3 Oct 2016 10:32:15 +0000 (10:32 +0000)]
Merge "class_linker: Add support for resolving method types."

7 years agoclass_linker: Add support for resolving method types.
Narayan Kamath [Wed, 3 Aug 2016 11:46:58 +0000 (12:46 +0100)]
class_linker: Add support for resolving method types.

- Add a new fixed size dex cache array for resolved method types.
  The size of this array is set to 1024.
- Also introduces a new runtime flag that controls this feature.

Test: make test-art-host
Bug: 30550796

Change-Id: I147b33398d71ee21f2e91b418d3700d4630801ff

7 years agoMerge "Integrate dexfuzz with bisection search"
Treehugger Robot [Sat, 1 Oct 2016 01:00:38 +0000 (01:00 +0000)]
Merge "Integrate dexfuzz with bisection search"

7 years agoIntegrate dexfuzz with bisection search
Wojciech Staszkiewicz [Thu, 29 Sep 2016 00:51:06 +0000 (17:51 -0700)]
Integrate dexfuzz with bisection search

Adds --bisection-search switch to dexfuzz. When specified makes
dexfuzz run bisection search on discovered output divergences.

Bisection search output is saved to bisection_outputs/ directory which
is assumed to be present.

If --bisection-search is used, bisection_search.py has to be on PATH.

Test: ./run_dex_fuzz_test.py , with hardcoded change to emit a known
divergent program instead of calling jfuzz.

Change-Id: I8fcb45e201761f1f05adee74e6b8636bcc452332

7 years agoMerge "String Compression for ARM and ARM64"
Jeff Hao [Fri, 30 Sep 2016 22:52:13 +0000 (22:52 +0000)]
Merge "String Compression for ARM and ARM64"

7 years agoMerge "String compression on intrinsics x86 and x86_64"
Jeff Hao [Fri, 30 Sep 2016 22:44:45 +0000 (22:44 +0000)]
Merge "String compression on intrinsics x86 and x86_64"

7 years agoMerge "ART: Add odex IMT dumping to oatdump"
Treehugger Robot [Fri, 30 Sep 2016 22:20:10 +0000 (22:20 +0000)]
Merge "ART: Add odex IMT dumping to oatdump"

7 years agoMerge "Set coverage to false for dex2oat."
Treehugger Robot [Fri, 30 Sep 2016 22:08:56 +0000 (22:08 +0000)]
Merge "Set coverage to false for dex2oat."

7 years agoReserve space in the char backing vector to prevent reallocations
Ben Gruver [Fri, 30 Sep 2016 20:10:42 +0000 (13:10 -0700)]
Reserve space in the char backing vector to prevent reallocations

The pointers in image_filenames_ and oat_filenames can become invalidated
if the char_backing_storage_ vector gets reallocated when adding strings.

Test: mma test-art-host-gtest-dex2oat_test
Change-Id: I82714468163ce49ce53953e6edcb57a17d46cdbb

7 years agoDelete some unused bitmap walking code
Mathieu Chartier [Fri, 30 Sep 2016 17:59:32 +0000 (10:59 -0700)]
Delete some unused bitmap walking code

No longer required with newer versions of the image writer.

Test: mm -j32

Change-Id: I496bc49c80d84bfa3aada39f8c6e3e4e4dfb15d4

7 years agoString Compression for ARM and ARM64
jessicahandojo [Sat, 10 Sep 2016 02:01:32 +0000 (19:01 -0700)]
String Compression for ARM and ARM64

Changes on intrinsics and Code Generation on ARM and ARM64
for string compression feature. Currently the feature is off.

The size of boot.oat and boot.art for ARM before and after the
changes (feature OFF) are still. When the feature ON,
boot.oat increased by 0.60% and boot.art decreased by 9.38%.

Meanwhile for ARM64, size of boot.oat and boot.art before and
after changes (feature OFF) are still. When the feature ON,
boot.oat increased by 0.48% and boot.art decreased by 6.58%.

Turn feature on: runtime/mirror/string.h (kUseStringCompression = true)
runtime/asm_support.h (STRING_COMPRESSION_FEATURE 1)

Test: m -j31 test-art-target
All tests passed both when the mirror::kUseStringCompression
is ON and OFF.

Bug: 31040547
Change-Id: I24e86b99391df33ba27df747779b648c5a820649

7 years agoMerge "Remove dependency on libcutils"
Dimitry Ivanov [Fri, 30 Sep 2016 17:37:57 +0000 (17:37 +0000)]
Merge "Remove dependency on libcutils"

7 years agoMerge "Revert "Store resolved Strings for AOT code in .bss.""
Vladimir Marko [Fri, 30 Sep 2016 17:12:41 +0000 (17:12 +0000)]
Merge "Revert "Store resolved Strings for AOT code in .bss.""

7 years agoString compression on intrinsics x86 and x86_64
jessicahandojo [Fri, 9 Sep 2016 02:49:13 +0000 (19:49 -0700)]
String compression on intrinsics x86 and x86_64

Changes on intrinsics and Code Generation (x86 and x86_64)
for string compression feature. Currently the feature is off.

The size of boot.oat and boot.art for x86 before and after the
changes (feature OFF) are still. When the feature ON,
boot.oat increased by 0.83% and boot.art decreased by 19.32%.

Meanwhile for x86_64, size of boot.oat and boot.art before and
after changes (feature OFF) are still. When the feature ON,
boot.oat increased by 0.87% and boot.art decreased by 6.59%.

Turn feature on: runtime/mirror/string.h (kUseStringCompression = true)
runtime/asm_support.h (STRING_COMPRESSION_FEATURE 1)

Test: m -j31 test-art-host
All tests passed both when the mirror::kUseStringCompression
is ON and OFF.

The jni_internal_test changed to assert an empty string length
to be equal -(1 << 31) as it is compressed.

Bug: 31040547
Change-Id: Ia447c9b147cabb6a69e6ded86be1fe0c46d9638d

7 years agoRevert "Store resolved Strings for AOT code in .bss."
Vladimir Marko [Fri, 30 Sep 2016 17:04:49 +0000 (17:04 +0000)]
Revert "Store resolved Strings for AOT code in .bss."

There are some issues with oat_test64 on host and aosp_mips-eng.

Also reverts "compiler_driver: Fix build."

Bug: 20323084
Bug: 30627598

This reverts commit 63dccbbefef3014c99c22748d18befcc7bcb3b41.
This reverts commit 04a44135ace10123f059373691594ae0f270a8a4.

Change-Id: I568ba3e58cf103987fdd63c8a21521010a9f27c4

7 years agoART: Add odex IMT dumping to oatdump
Andreas Gampe [Fri, 30 Sep 2016 02:50:27 +0000 (19:50 -0700)]
ART: Add odex IMT dumping to oatdump

Support scanning oat files besides the boot image.

Bug: 31594153
Test: m test-art-host
Change-Id: I672d0534b8a8274a4430217656b68c55e4b31cc4

7 years agoMerge "Make run-test fail if output-path is too long"
Treehugger Robot [Fri, 30 Sep 2016 16:42:48 +0000 (16:42 +0000)]
Merge "Make run-test fail if output-path is too long"

7 years agoRemove dependency on libcutils
Dimitry Ivanov [Wed, 28 Sep 2016 09:44:00 +0000 (02:44 -0700)]
Remove dependency on libcutils

Use liblog for liblog (instead of libcutils)
Replace calls to property_get with libbase
GetProperty()

Bug: http://b/31289077
Bug: http://b/27171986
Test: remove liblog from libcutils and recompile
Test: make test-art-target -j4
Change-Id: I2a2913af8f521131558e9dd672d3973a64a410d3

7 years agoMerge "Add const-string benchmark."
Treehugger Robot [Fri, 30 Sep 2016 14:50:55 +0000 (14:50 +0000)]
Merge "Add const-string benchmark."

7 years agoMerge "compiler_driver: Fix build."
Nicolas Geoffray [Fri, 30 Sep 2016 14:36:37 +0000 (14:36 +0000)]
Merge "compiler_driver: Fix build."

7 years agocompiler_driver: Fix build.
Narayan Kamath [Fri, 30 Sep 2016 14:24:19 +0000 (15:24 +0100)]
compiler_driver: Fix build.

Test: make-art-host
Change-Id: I94e164ed245caea60fe26872a943ea5e14aa8860

7 years agoMerge "Store resolved Strings for AOT code in .bss."
Vladimir Marko [Fri, 30 Sep 2016 14:10:21 +0000 (14:10 +0000)]
Merge "Store resolved Strings for AOT code in .bss."

7 years agoMerge "Simplify our intrinsic recognizer."
Treehugger Robot [Fri, 30 Sep 2016 11:38:56 +0000 (11:38 +0000)]
Merge "Simplify our intrinsic recognizer."

7 years agoMerge "Move two dangling mirror objects into handles."
Treehugger Robot [Fri, 30 Sep 2016 10:47:24 +0000 (10:47 +0000)]
Merge "Move two dangling mirror objects into handles."

7 years agoAdd const-string benchmark.
Vladimir Marko [Fri, 30 Sep 2016 10:21:07 +0000 (11:21 +0100)]
Add const-string benchmark.

Test: vogar --benchmark art/benchmark/const-string/src/ConstStringBenchmark.java
Bug: 20323084
Change-Id: I6b0b9cc8de19694ca43221b3224ac09eaa54d9ff

7 years agoSimplify our intrinsic recognizer.
Nicolas Geoffray [Fri, 15 Jul 2016 14:28:35 +0000 (15:28 +0100)]
Simplify our intrinsic recognizer.

- Use the modifiers for storing the intrinsic kind.
- Delete dex_file_method_inliner and its associated map.

This work was also motivated by the fact that the inline
method analyzer leaks intrinsic tables, and even worse, might re-use
a table from one dex file to another unrelated dex file in the presence
of class unloading and the unlikely event of the dex files getting
the same address.

test: m test-art-host m test-art-target

Change-Id: Ia653d2c72df13889dc85dd8c84997582c034ea4b

7 years agoMove two dangling mirror objects into handles.
Nicolas Geoffray [Fri, 30 Sep 2016 08:51:32 +0000 (09:51 +0100)]
Move two dangling mirror objects into handles.

test: libcore.java.lang.reflect.MissingClassesTest#testGetFieldFails
test: ./art/tools/run-libcore-tests.sh --mode=host --variant=X64
Change-Id: Ib708e914cac6abe4d4fc7cb88e258da83a8219ab

7 years agoMerge "dex_cache: rewrite StringDexCachePair as DexCachePair<T>"
Treehugger Robot [Fri, 30 Sep 2016 08:52:28 +0000 (08:52 +0000)]
Merge "dex_cache: rewrite StringDexCachePair as DexCachePair<T>"

7 years agoMerge "Clean up ScopedThreadStateChange to use ObjPtr"
Mathieu Chartier [Fri, 30 Sep 2016 02:33:08 +0000 (02:33 +0000)]
Merge "Clean up ScopedThreadStateChange to use ObjPtr"

7 years agoClean up ScopedThreadStateChange to use ObjPtr
Mathieu Chartier [Wed, 28 Sep 2016 01:43:30 +0000 (18:43 -0700)]
Clean up ScopedThreadStateChange to use ObjPtr

Also fixed inclusion of -inl.h files in .h files by adding
scoped_object_access-inl.h and scoped_fast_natvie_object_access-inl.h

Changed AddLocalReference / Decode to use ObjPtr.

Changed libartbenchmark to be debug to avoid linkage errors.

Bug: 31113334

Test: test-art-host

Change-Id: I4d2e160483a29d21e1e0e440585ed328b9811483

7 years agoSet coverage to false for dex2oat.
Vishwath Mohan [Thu, 29 Sep 2016 22:05:51 +0000 (15:05 -0700)]
Set coverage to false for dex2oat.

dex2oat explicitly sets address to false when SANITIZE_TARGET is
non-empty, in order to prevent it being compiled with ASAN. This CL also
sets coverage to false to prevent build errors when
SANITIZE_TARGET="address coverage" (because coverage currently does not
work without address).

Bug: 29188876
Test: SANITIZE_TARGET="address coverage" builds without error
Change-Id: I0faeb7fab76678b923af732235188e19e08ea90c

7 years agodex_cache: rewrite StringDexCachePair as DexCachePair<T>
Narayan Kamath [Thu, 29 Sep 2016 16:07:20 +0000 (17:07 +0100)]
dex_cache: rewrite StringDexCachePair as DexCachePair<T>

.. with [T = mirror::String]. This is in preparation for introducing
a dex cache array for MethodTypes, which will be treated the same way.

Test: make test-art-host
bug: 30550796
Change-Id: Ief4455b4c6e4c9dd897f2c40b14b843a57b1dc8e

7 years agoStore resolved Strings for AOT code in .bss.
Vladimir Marko [Wed, 21 Sep 2016 12:51:10 +0000 (13:51 +0100)]
Store resolved Strings for AOT code in .bss.

And do some related refactorings.

Bug: 20323084
Bug: 30627598
Test: Run ART test suite including gcstress on host and Nexus 9.
Test: Run ART test suite including gcstress with baker CC on host and Nexus 9.
Test: Build aosp_mips64-eng.
Change-Id: I1b12c1570fee8e5da490b47f231050142afcbd1e

7 years agoMerge "java.lang.invoke: Add mirror types for MethodHandle / MethodType."
Narayan Kamath [Thu, 29 Sep 2016 14:16:17 +0000 (14:16 +0000)]
Merge "java.lang.invoke: Add mirror types for MethodHandle / MethodType."

7 years agojava.lang.invoke: Add mirror types for MethodHandle / MethodType.
Narayan Kamath [Wed, 3 Aug 2016 11:46:58 +0000 (12:46 +0100)]
java.lang.invoke: Add mirror types for MethodHandle / MethodType.

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

7 years agoMerge "Print to System.err to avoid output races."
Treehugger Robot [Thu, 29 Sep 2016 09:51:52 +0000 (09:51 +0000)]
Merge "Print to System.err to avoid output races."

7 years agoMerge "ARM64: Update the disassembler after the VIXL update."
Nicolas Geoffray [Thu, 29 Sep 2016 08:49:06 +0000 (08:49 +0000)]
Merge "ARM64: Update the disassembler after the VIXL update."

7 years agoPrint to System.err to avoid output races.
Nicolas Geoffray [Thu, 29 Sep 2016 08:00:46 +0000 (09:00 +0100)]
Print to System.err to avoid output races.

test: run-test 054
Change-Id: I40ee02b377bd982090e74238dae0fddbde126a80

7 years agoMerge "Fix true divergence mode"
Treehugger Robot [Thu, 29 Sep 2016 00:56:11 +0000 (00:56 +0000)]
Merge "Fix true divergence mode"

7 years agoMerge "Update oat file version to 089"
Treehugger Robot [Wed, 28 Sep 2016 23:57:11 +0000 (23:57 +0000)]
Merge "Update oat file version to 089"

7 years agoFix true divergence mode
Wojciech Staszkiewicz [Wed, 28 Sep 2016 23:15:50 +0000 (16:15 -0700)]
Fix true divergence mode

Do not report TIMEOUT divergences in true divergence mode.

Test: ./run_jfuzz_test.py
Change-Id: I65e48ee6b3d90de0ba997a48b85445312cb0661f

7 years agoMerge "jni: test CriticalNative with generic jni"
Treehugger Robot [Wed, 28 Sep 2016 23:15:04 +0000 (23:15 +0000)]
Merge "jni: test CriticalNative with generic jni"

7 years agoMerge "Increase frame size for ASAN enabled builds."
Treehugger Robot [Wed, 28 Sep 2016 22:56:25 +0000 (22:56 +0000)]
Merge "Increase frame size for ASAN enabled builds."

7 years agoMerge "ART: Add IMT stats and dumping to oatdump"
Treehugger Robot [Wed, 28 Sep 2016 22:24:32 +0000 (22:24 +0000)]
Merge "ART: Add IMT stats and dumping to oatdump"

7 years agoUpdate oat file version to 089
Alex Light [Wed, 28 Sep 2016 22:04:03 +0000 (15:04 -0700)]
Update oat file version to 089

In order to ensure that the 088 oat version used in an internal branch
is not repeated in any other versions we are skipping it and moving
the oat version to 089.

Bug: 31789675
Test: mma test-art-host
Change-Id: Iaa2ba972caa223f8c747cc739aa4daa11eec3e33

7 years agoMerge "Use ObjPtr for reflection.cc/h/inl"
Mathieu Chartier [Wed, 28 Sep 2016 22:04:13 +0000 (22:04 +0000)]
Merge "Use ObjPtr for reflection.cc/h/inl"

7 years agoMake run-test fail if output-path is too long
Wojciech Staszkiewicz [Fri, 23 Sep 2016 17:59:55 +0000 (10:59 -0700)]
Make run-test fail if output-path is too long

Long output-path in no prebuild mode leads to silent fallback to
interpreter in dalvikvm.

This change ensures that we handle this situation by failing the
test.

Bug: 31597671
Test: m test-art-run-test -j
Change-Id: I19a7cee788760a81c9395be1252b2edab0db39f7

7 years agoART: Add IMT stats and dumping to oatdump
Andreas Gampe [Sun, 25 Sep 2016 23:08:35 +0000 (16:08 -0700)]
ART: Add IMT stats and dumping to oatdump

Add stats and IMT dumping to oatdump to help in the derivation
of a better hash.

Bug: 31594153
Test: m test-art-host
Change-Id: Ie0803860b53de8d3d68a1a596bf8771a9b96c7ff

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

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

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

7 years agoMerge "Gather divergences in single directory"
Treehugger Robot [Wed, 28 Sep 2016 20:22:28 +0000 (20:22 +0000)]
Merge "Gather divergences in single directory"

7 years agoGather divergences in single directory
Wojciech Staszkiewicz [Tue, 27 Sep 2016 20:09:34 +0000 (13:09 -0700)]
Gather divergences in single directory

Gather all divergences in a single directory to make investigating
them easier.

Test: ./run_jfuzz_test_nightly.py
Change-Id: I0fcdfb2f99e33d8bce444e5d5bf5092f282f03b1

7 years agoMerge "build: Fix golem build to exclude libartd.so from public.libraries.txt"
Treehugger Robot [Wed, 28 Sep 2016 18:11:47 +0000 (18:11 +0000)]
Merge "build: Fix golem build to exclude libartd.so from public.libraries.txt"

7 years agoMerge "ART: Dump referenced type in IRT overflows"
Treehugger Robot [Wed, 28 Sep 2016 18:01:40 +0000 (18:01 +0000)]
Merge "ART: Dump referenced type in IRT overflows"

7 years agoMerge "ART: Factor out IMT from ArtMethod"
Treehugger Robot [Wed, 28 Sep 2016 17:41:06 +0000 (17:41 +0000)]
Merge "ART: Factor out IMT from ArtMethod"

7 years agoART: Dump referenced type in IRT overflows
Andreas Gampe [Wed, 28 Sep 2016 01:45:02 +0000 (18:45 -0700)]
ART: Dump referenced type in IRT overflows

When the runtime dumps a reference table, e.g., when aborting for
an overflow, dump the type of stored referents for reference types
to aid in debugging leaks.

Bug: 31600693
Test: m test-art-host-gtest-reference_table_test
Change-Id: Ia892dc84ca8827dd93a8b75d6f571c392f94859c
(cherry picked from commit 280f32b095f55f24dc557f9a9067d223901214ce)

7 years agobuild: Fix golem build to exclude libartd.so from public.libraries.txt
Igor Murashkin [Wed, 28 Sep 2016 16:04:07 +0000 (09:04 -0700)]
build: Fix golem build to exclude libartd.so from public.libraries.txt

Golem doesn't build libartd.so, so at runtime the JNI loading would fail
when trying to initialize the android library namespaces.

Test: build-art-target-golem
Bug: 31401609
Change-Id: I2ee988e84d0a87b3cd1338d29fc28a874905cccc

7 years agoART: Factor out IMT from ArtMethod
Andreas Gampe [Mon, 26 Sep 2016 19:04:26 +0000 (12:04 -0700)]
ART: Factor out IMT from ArtMethod

Move IMT Conflict Table to its own file. Move IMT index computation to
ImTable.

In preparation for code using this independent of specific ArtMethods.

Bug: 31594153
Test: m test-art-host
Change-Id: Ifd6e304bb86724c5284984c4655c43d3af357f84

7 years agoMerge "Add support for Executable.getParameters() metadata"
Neil Fuller [Wed, 28 Sep 2016 12:29:53 +0000 (12:29 +0000)]
Merge "Add support for Executable.getParameters() metadata"

7 years agoAdd support for Executable.getParameters() metadata
Neil Fuller [Fri, 9 Sep 2016 13:24:51 +0000 (14:24 +0100)]
Add support for Executable.getParameters() metadata

java.lang.reflect.Executable native code to create Parameter
objects and supporting code for obtaining the system annotations
that hold the parameter metadata.

Bug: 30391692
Test: test-art-host and CtsLibcoreTestCases
Change-Id: I23d7e36014716967ce189fba5955cc5e064fe8d0

7 years agoMerge "benchmark: Add jni benchmarks for use in golem"
Nicolas Geoffray [Wed, 28 Sep 2016 08:24:12 +0000 (08:24 +0000)]
Merge "benchmark: Add jni benchmarks for use in golem"

7 years agoMerge "Handle tests which fail with no methods compiled"
Treehugger Robot [Wed, 28 Sep 2016 02:19:49 +0000 (02:19 +0000)]
Merge "Handle tests which fail with no methods compiled"

7 years agoMerge "Store bisection logs in test directory"
Treehugger Robot [Wed, 28 Sep 2016 02:14:34 +0000 (02:14 +0000)]
Merge "Store bisection logs in test directory"

7 years agoMerge "Fix a CC deadlock in 129-ThreadGetId."
Treehugger Robot [Tue, 27 Sep 2016 23:53:08 +0000 (23:53 +0000)]
Merge "Fix a CC deadlock in 129-ThreadGetId."

7 years agoUse ObjPtr for reflection.cc/h/inl
Mathieu Chartier [Tue, 27 Sep 2016 01:13:17 +0000 (18:13 -0700)]
Use ObjPtr for reflection.cc/h/inl

Changed Pretty helpers to use this to reduce usage of Decode. The
eventual goal is not have almost any calls to ObjPtr::Decode.

Moved ObjPtr out of mirror namespace for convenience. Added more
PoisonObjectPointers calls in class linker, thread suspension.

Bug: 31113334

Test: test-art-host

Change-Id: I44d08db5143d95ed1b65e2f00f9749ef5cf379f7

7 years agoMerge "Add a true divergence mode to run_jfuzz_test.py"
Treehugger Robot [Tue, 27 Sep 2016 20:12:21 +0000 (20:12 +0000)]
Merge "Add a true divergence mode to run_jfuzz_test.py"

7 years agoMerge "Add basic support for object pointer poisoning"
Mathieu Chartier [Tue, 27 Sep 2016 18:17:00 +0000 (18:17 +0000)]
Merge "Add basic support for object pointer poisoning"

7 years agoFix a CC deadlock in 129-ThreadGetId.
Hiroshi Yamauchi [Mon, 26 Sep 2016 23:56:24 +0000 (16:56 -0700)]
Fix a CC deadlock in 129-ThreadGetId.

GC should consider a thread as "waiting for GC thread flip" or
"transitioning to runnable" only if its suspend count is 1.

See 31683379#7 for the deadlock scenario.

Bug: 31683379
Bug: 12687968
Test: test-art with CC and gcstress, N9 libartd boot, Ritz EAAC.
Change-Id: Icd2548bd6d9a4f8d7b54ed20150a4801af9e26a3

7 years agobenchmark: Add jni benchmarks for use in golem
Igor Murashkin [Thu, 22 Sep 2016 22:46:29 +0000 (15:46 -0700)]
benchmark: Add jni benchmarks for use in golem

Also adds libartbenchmark.so as a build dependency for golem targets

Test: make build-art-host-golem build-art-target-golem
Bug: 31401609
Change-Id: I3f6b11f93684cc8eb3534bb02bf2d3eb05e39dcf

7 years agoMerge "ART: Fix dependencies"
Andreas Gampe [Tue, 27 Sep 2016 15:10:57 +0000 (15:10 +0000)]
Merge "ART: Fix dependencies"

7 years agoMerge "Cleanup String.<init> handling."
Nicolas Geoffray [Tue, 27 Sep 2016 09:31:33 +0000 (09:31 +0000)]
Merge "Cleanup String.<init> handling."

7 years agoCleanup String.<init> handling.
Nicolas Geoffray [Mon, 26 Sep 2016 16:56:07 +0000 (17:56 +0100)]
Cleanup String.<init> handling.

Move everything to one place (currently well_known_classes.cc, but
no strong preference) and define a macro to easily handle the list
of affected methods.

test: m test-art-host
test: m test-art-target
Change-Id: Ib8372d130d5458516a1f1ae31014afc76037fc34

7 years agoMerge "Fix no-prebuild failure."
Nicolas Geoffray [Tue, 27 Sep 2016 09:25:58 +0000 (09:25 +0000)]
Merge "Fix no-prebuild failure."

7 years agoFix no-prebuild failure.
Nicolas Geoffray [Tue, 27 Sep 2016 09:24:36 +0000 (10:24 +0100)]
Fix no-prebuild failure.

Printed executable is now dalvikvm* instead of art.

test:run-test --host 118

Change-Id: Id2c3a7f6ba90ee3cb4e57a49e366c46377fc4c45

7 years agoARM64: Update the disassembler after the VIXL update.
Alexandre Rames [Mon, 26 Sep 2016 13:14:01 +0000 (14:14 +0100)]
ARM64: Update the disassembler after the VIXL update.

Test: top-level `make -j40`
      `mma -j40 test-art-target-test-optimizing dist`
      `mma -j40 test-art-host dist`

Change-Id: I173976998dc8e3e466ca8502c3fdc447f9019cee

7 years agoMerge "ahat: Show GC Root Paths."
Treehugger Robot [Tue, 27 Sep 2016 07:17:52 +0000 (07:17 +0000)]
Merge "ahat: Show GC Root Paths."

7 years agoART: Fix dependencies
Andreas Gampe [Tue, 27 Sep 2016 03:17:42 +0000 (20:17 -0700)]
ART: Fix dependencies

Add libbase to libart-simulator.

Bug: 31338270
Test: m test-art-host
Change-Id: I956465f8d380e856cddf7f53c5aae358847b52ed

7 years agoMerge "ART: Fix dependencies"
Andreas Gampe [Tue, 27 Sep 2016 02:48:37 +0000 (02:48 +0000)]
Merge "ART: Fix dependencies"

7 years agoART: Fix dependencies
Andreas Gampe [Tue, 27 Sep 2016 01:09:47 +0000 (18:09 -0700)]
ART: Fix dependencies

Add libbase to libart-compiler.

Bug: 31338270
Test: m test-art-host
Change-Id: I6398baaaee15063f4c275f40109d943c04af066f

7 years agoStore bisection logs in test directory
Wojciech Staszkiewicz [Tue, 27 Sep 2016 00:51:52 +0000 (17:51 -0700)]
Store bisection logs in test directory

Store bisection search logs in test directory for easier access.

Test: ./test/run-test --never-clean --no-prebuild --bisection-search
037-inherit
Change-Id: I67e472b933516f0e486f47fd2c7a4ae06212db44