OSDN Git Service

android-x86/art.git
7 years agoMerge "ART: Add boot classpath check for initialization"
Treehugger Robot [Mon, 21 Nov 2016 20:43:12 +0000 (20:43 +0000)]
Merge "ART: Add boot classpath check for initialization"

7 years agoMerge "Use type lookup tables in compiler"
Mathieu Chartier [Mon, 21 Nov 2016 20:19:58 +0000 (20:19 +0000)]
Merge "Use type lookup tables in compiler"

7 years agoART: Add boot classpath check for initialization
Andreas Gampe [Mon, 21 Nov 2016 18:10:08 +0000 (10:10 -0800)]
ART: Add boot classpath check for initialization

Boot classpath classes should not fail initialization.

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

7 years agoUse type lookup tables in compiler
Mathieu Chartier [Thu, 17 Nov 2016 00:22:37 +0000 (16:22 -0800)]
Use type lookup tables in compiler

This recently regressed and stopped happening, the fix creates fake
OatDexFiles so that the compiler uses the type lookup tables instead
of slow FindClassDef and FindTypeId.

Perf on host compile Facebook:
Before:
2.49%: art::DexFile::FindClassDef(unsigned short) const
1.59%: art::DexFile::FindTypeId(char const*) const

After:
0.42%: art::OatDexFile::FindClassDef(art::DexFile const&, char const*, unsigned long)
0%: art::DexFile::FindTypeId(char const*) const
0%: art::DexFile::FindClassDef(unsigned short) const

Average install (N6P 960 mhz average of 40 samples): 38.2s -> 35.64s

Bug: 32641252

Test: test-art-host, adb install.

Change-Id: I34df21dc2c155bc2579c5cafdd91f9cb0fead1a9

7 years agoMerge "ART: Fix line break in Throwable::Dump"
Treehugger Robot [Mon, 21 Nov 2016 17:38:14 +0000 (17:38 +0000)]
Merge "ART: Fix line break in Throwable::Dump"

7 years agoMerge "Revert "Revert "Revert "Revert "JIT root tables."""""
Nicolas Geoffray [Mon, 21 Nov 2016 10:14:06 +0000 (10:14 +0000)]
Merge "Revert "Revert "Revert "Revert "JIT root tables."""""

7 years agoMerge changes I240f8bb7,I27defaa7,Ib82d64cc
Treehugger Robot [Sun, 20 Nov 2016 00:37:56 +0000 (00:37 +0000)]
Merge changes I240f8bb7,I27defaa7,Ib82d64cc

* changes:
  ART: Do not DCHECK in verifier when already aborting
  ART: Add debug exception check to JIT
  ART: Extend DumpRecursiveAbort

7 years agoART: Fix line break in Throwable::Dump
Andreas Gampe [Sat, 19 Nov 2016 01:43:05 +0000 (17:43 -0800)]
ART: Fix line break in Throwable::Dump

Add line breaks for missing stack traces.

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

7 years agoART: Do not DCHECK in verifier when already aborting
Andreas Gampe [Sat, 19 Nov 2016 22:51:52 +0000 (14:51 -0800)]
ART: Do not DCHECK in verifier when already aborting

Only log an error in FailOrAbort in the debug build when the
runtime is already aborting.

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

7 years agoART: Add debug exception check to JIT
Andreas Gampe [Sat, 19 Nov 2016 01:39:45 +0000 (17:39 -0800)]
ART: Add debug exception check to JIT

Check for a pending exception after JIT compilation finishes.

Test: m ART_TEST_JIT=true test-art-host
Change-Id: I27defaa733f360cb1dbabede62d4908777bc5d2b

7 years agoART: Extend DumpRecursiveAbort
Andreas Gampe [Sat, 19 Nov 2016 01:21:12 +0000 (17:21 -0800)]
ART: Extend DumpRecursiveAbort

Accept recursive dump request for deeper recursions. Otherwise,
two or more threads aborting concurrently would ensure that there
are no dumps.

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

7 years agoMerge "Fix valgrind issue with thread_pool_test."
Treehugger Robot [Sat, 19 Nov 2016 01:07:35 +0000 (01:07 +0000)]
Merge "Fix valgrind issue with thread_pool_test."

7 years agoFix valgrind issue with thread_pool_test.
Andreas Gampe [Fri, 18 Nov 2016 23:06:21 +0000 (15:06 -0800)]
Fix valgrind issue with thread_pool_test.

Make sure the task list is empty at the end of the test. Follow-up
to commit e2fc98e88106b9cfa44eeacc6765c291feda04a8.

Test: m test-art-host-gtest-thread_pool_test
Test: m valgrind-test-art-host-gtest-thread_pool_test
Change-Id: Ib41a1f7dde9d45f1195e18ff6db4241fb7dc7428

7 years agoMerge "Revert "Revert "Use interpret-only instead of verify-at-runtime when testing...
Treehugger Robot [Fri, 18 Nov 2016 21:04:59 +0000 (21:04 +0000)]
Merge "Revert "Revert "Use interpret-only instead of verify-at-runtime when testing JIT"""

7 years agoMerge "ART: Dump native stack on recursive abort"
Andreas Gampe [Fri, 18 Nov 2016 21:03:13 +0000 (21:03 +0000)]
Merge "ART: Dump native stack on recursive abort"

7 years agoMerge "Run 103-string-append with libartd."
Hiroshi Yamauchi [Fri, 18 Nov 2016 20:16:30 +0000 (20:16 +0000)]
Merge "Run 103-string-append with libartd."

7 years agoMerge "ART: Use cerr in Runtime::Abort on the host"
Treehugger Robot [Fri, 18 Nov 2016 19:33:25 +0000 (19:33 +0000)]
Merge "ART: Use cerr in Runtime::Abort on the host"

7 years agoRevert "Revert "Use interpret-only instead of verify-at-runtime when testing JIT""
Calin Juravle [Fri, 18 Nov 2016 17:39:26 +0000 (17:39 +0000)]
Revert "Revert "Use interpret-only instead of verify-at-runtime when testing JIT""

This reverts commit 0b4d05e096d31e9c2d5ae522dbcc7b190b60a6f6.

Test: m test-art-host-run-test
Change-Id: Ie946ebd899002bdc7502276b3d53000c551be768

7 years agoART: Dump native stack on recursive abort
Andreas Gampe [Fri, 18 Nov 2016 17:51:06 +0000 (09:51 -0800)]
ART: Dump native stack on recursive abort

Dump the native stack of the current thread on recursive abort.
That is safe to do, as it requires no runtime interaction.

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

7 years agoART: Use cerr in Runtime::Abort on the host
Andreas Gampe [Fri, 18 Nov 2016 17:30:08 +0000 (09:30 -0800)]
ART: Use cerr in Runtime::Abort on the host

Use cerr to immediately write out abort info on the host, in an
effort to make recursive aborts diagnosable. This is similar
(but slightly inferior) to the previous INTERNAL_FATAL fastpathing.

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

7 years agoMerge "Revert "Revert Revert "Use interpret-only instead of verify-at-runtime when...
Calin Juravle [Fri, 18 Nov 2016 16:09:11 +0000 (16:09 +0000)]
Merge "Revert "Revert Revert "Use interpret-only instead of verify-at-runtime when testing JIT"""

7 years agoRevert "Revert Revert "Use interpret-only instead of verify-at-runtime when testing...
Calin Juravle [Fri, 18 Nov 2016 16:07:58 +0000 (16:07 +0000)]
Revert "Revert Revert "Use interpret-only instead of verify-at-runtime when testing JIT""

test-art-host-run-test-debug-prebuild-jit-relocate-ntrace-gcstress-checkjni-picimage-npictest-ndebuggable-974-verify-interface-super64 fails on the build servers.

It's unclear if it's because of this CL but revert again to check if it fixes the problem.

Locally everything is green...
This reverts commit 0b64a5195b38773084ff94618ac22284bc855b92.

Change-Id: I4668b8d8f8c9672fd942a693d98a20113fbb6b9e

7 years agoRevert "Revert "Revert "Revert "JIT root tables.""""
Nicolas Geoffray [Wed, 16 Nov 2016 09:19:42 +0000 (09:19 +0000)]
Revert "Revert "Revert "Revert "JIT root tables.""""

Test: 626-set-resolved-string, test-art-host, test-art-target
Test: run-libcore-tests.sh
Test: phone boots and runs

This reverts commit 3395fbc20bcd20948bec8958db91b304c17cacd8.

Change-Id: I104b73d093e3eb6a271d564cfdb9ab09c1c8cf24

7 years agoMerge "Add dequickening support."
Nicolas Geoffray [Fri, 18 Nov 2016 13:14:10 +0000 (13:14 +0000)]
Merge "Add dequickening support."

7 years agoMerge "ARM: VIXL32: Fix PackedSwitch."
Nicolas Geoffray [Fri, 18 Nov 2016 12:54:00 +0000 (12:54 +0000)]
Merge "ARM: VIXL32: Fix PackedSwitch."

7 years agoMerge "Fix valgrind issue with thread_pool_test."
Nicolas Geoffray [Fri, 18 Nov 2016 12:02:15 +0000 (12:02 +0000)]
Merge "Fix valgrind issue with thread_pool_test."

7 years agoMerge "Revert Revert "Use interpret-only instead of verify-at-runtime when testing...
Calin Juravle [Fri, 18 Nov 2016 12:01:36 +0000 (12:01 +0000)]
Merge "Revert Revert "Use interpret-only instead of verify-at-runtime when testing JIT""

7 years agoMerge "Make ImageWriter and PatchOat helper classes nested."
Treehugger Robot [Fri, 18 Nov 2016 11:24:20 +0000 (11:24 +0000)]
Merge "Make ImageWriter and PatchOat helper classes nested."

7 years agoAdd dequickening support.
Nicolas Geoffray [Thu, 17 Nov 2016 10:58:36 +0000 (10:58 +0000)]
Add dequickening support.

Both vdex and BCI require full dequickening support. This
change implements dequickening by using the existing encoded
quickening, and adds the checkcast quickening to that encoding.

bug: 30937355
bug: 32369913
Test: dex_to_dex_decompiler_test.cc test-art-host

Change-Id: Ie95f46946d59b28157d6e47dcf4a859be032d1c3

7 years agoFix valgrind issue with thread_pool_test.
Nicolas Geoffray [Fri, 18 Nov 2016 10:12:51 +0000 (10:12 +0000)]
Fix valgrind issue with thread_pool_test.

Make sure the task list is empty at the end of the test.

Test: thread_pool_test

Change-Id: I155a8eb90dc83a0dd9128f0c0bc64deeba7a92e9

7 years agoMerge "ART: Make libopenjdkjvmti a run-test dependency"
Treehugger Robot [Fri, 18 Nov 2016 08:29:12 +0000 (08:29 +0000)]
Merge "ART: Make libopenjdkjvmti a run-test dependency"

7 years agoART: Make libopenjdkjvmti a run-test dependency
Andreas Gampe [Fri, 18 Nov 2016 06:50:33 +0000 (22:50 -0800)]
ART: Make libopenjdkjvmti a run-test dependency

Add libopenjdkjvmti as a host dependency for running tests, as
required by the tests 900-913.

Bug: 31455788
Test: m test-art-host
Change-Id: I4910f587e35615a10168a39ef2c60d3d80981fc4

7 years agoMerge "Fix false positive stack ASan errors on x86."
Treehugger Robot [Fri, 18 Nov 2016 04:02:56 +0000 (04:02 +0000)]
Merge "Fix false positive stack ASan errors on x86."

7 years agoMerge "ART: Remove ti library dependency for ti tests"
Treehugger Robot [Fri, 18 Nov 2016 03:21:03 +0000 (03:21 +0000)]
Merge "ART: Remove ti library dependency for ti tests"

7 years agoFix false positive stack ASan errors on x86.
Evgenii Stepanov [Fri, 18 Nov 2016 01:57:25 +0000 (17:57 -0800)]
Fix false positive stack ASan errors on x86.

Call a special ASan function in x86 DoLongJump to let the tool know
that strange things are going to happen with the stack pointer. Other
architectures do not need this because they do the stack pointer
manipulation in a separate ((noreturn)) function, and noreturn
attribute triggers the same conservative behaviour in ASan.

Bug: 24199050
Bug: 32849425
Test: SANITIZE_HOST=address stub_test32
Change-Id: Ic639d2d84474d875487e66369c034db9907a7e8f

7 years agoRun 103-string-append with libartd.
Hiroshi Yamauchi [Fri, 18 Nov 2016 01:33:40 +0000 (17:33 -0800)]
Run 103-string-append with libartd.

For debugging b/31357497.

Bug: 31357497
Bug: 12687968
Test: run-test --host 103-string-append.
Change-Id: I7450c8b142b2cf29615e12aeecd6285d45f468c0

7 years agoART: Remove ti library dependency for ti tests
Andreas Gampe [Fri, 18 Nov 2016 01:13:53 +0000 (17:13 -0800)]
ART: Remove ti library dependency for ti tests

The agent so should not depend on libopenjdkjvmti.so.

Bug: 31455788
Test: m test-art-host
Change-Id: I7825d2a475a9651483b9c7cd11016d4f2dba23f9

7 years agoMerge "ART: Rewrite test 913 printing"
Treehugger Robot [Thu, 17 Nov 2016 23:17:31 +0000 (23:17 +0000)]
Merge "ART: Rewrite test 913 printing"

7 years agoMerge "Change offline profile to store type_idx of classes."
Jeff Hao [Thu, 17 Nov 2016 21:31:00 +0000 (21:31 +0000)]
Merge "Change offline profile to store type_idx of classes."

7 years agoMerge changes I710ca0ed,I576e7926,Id0144b68
Treehugger Robot [Thu, 17 Nov 2016 20:59:11 +0000 (20:59 +0000)]
Merge changes I710ca0ed,I576e7926,Id0144b68

* changes:
  ART: Stop JIT in 913-heaps
  ART: Add ScopedJitSuspend
  ART: Change ThreadPool::Wait behavior

7 years agoART: Rewrite test 913 printing
Andreas Gampe [Thu, 17 Nov 2016 19:23:35 +0000 (11:23 -0800)]
ART: Rewrite test 913 printing

Detailed printing has to be postponed, as many required functions
are not callback-safe. Refactor the printing logic.

Bug: 31385354
Test: m test-art-host-run-test-913-heaps
Change-Id: I690752bffe4b27292eb2f2e89b1b6281a5836bb2

7 years agoChange offline profile to store type_idx of classes.
Jeff Hao [Wed, 16 Nov 2016 23:15:04 +0000 (15:15 -0800)]
Change offline profile to store type_idx of classes.

Changed from storing class_def_idx to type_idx. Allows dexlayout to move
class defs without affecting the profile.

Test: mm test-art-host

Change-Id: I8a040adf0f5f47a1592e18aeb55edde01cb3e1ed

7 years agoMerge "[MIPS64] JNI Compiler: compiler independent test"
Treehugger Robot [Thu, 17 Nov 2016 17:30:43 +0000 (17:30 +0000)]
Merge "[MIPS64] JNI Compiler: compiler independent test"

7 years agoMake ImageWriter and PatchOat helper classes nested.
Vladimir Marko [Thu, 17 Nov 2016 16:38:59 +0000 (16:38 +0000)]
Make ImageWriter and PatchOat helper classes nested.

Nested classes are better for encapsulation. For example,
we've had an art::FixupRootVisitor in both image_writer.cc
and patchoat.cc and we didn't get an ODR violation only
because these two files are never used in the same process.

Test: Rely on the TreeHugger.
Change-Id: I39a86994923a9c0faa5f05d8c9ede982ce9c0c4c

7 years agoART: Stop JIT in 913-heaps
Andreas Gampe [Wed, 16 Nov 2016 18:58:11 +0000 (10:58 -0800)]
ART: Stop JIT in 913-heaps

To avoid any JIT interaction, stop the JIT thread pool in
test 913-heaps.

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

7 years agoART: Add ScopedJitSuspend
Andreas Gampe [Wed, 16 Nov 2016 22:58:24 +0000 (14:58 -0800)]
ART: Add ScopedJitSuspend

Add a helper to suspend the JIT in a scope. This will
wait for the JIT to quiesce, finishing already running
compile jobs. Note that the queue will not be drained,
jobs not picked up by the pool, yet, will remain in
the queue.

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

7 years agoART: Change ThreadPool::Wait behavior
Andreas Gampe [Wed, 16 Nov 2016 21:58:05 +0000 (13:58 -0800)]
ART: Change ThreadPool::Wait behavior

When a pool is in the stopped state, Wait() will not wait for all
tasks to complete.

Bug: 31385354
Test: m test-art-host-gtest-thread_pool_test
Change-Id: Id0144b685ee2fddf1a1c2c2ca334251130121033

7 years agoARM: VIXL32: Fix PackedSwitch.
Artem Serov [Fri, 11 Nov 2016 16:15:11 +0000 (16:15 +0000)]
ARM: VIXL32: Fix PackedSwitch.

Fix the case when the jumptable is very far and offset doesn't
fit ADR offset field.

Test: export ART_USE_VIXL_ARM_BACKEND=true && \
      mma test-art-host dist && mma test-art-target dist

Change-Id: I2b8ac04eb343947f9a9301f3ce6285794ddad4b8

7 years agoMerge "Revert "jni: Punt to generic JNI for mips""
Treehugger Robot [Thu, 17 Nov 2016 15:57:53 +0000 (15:57 +0000)]
Merge "Revert "jni: Punt to generic JNI for mips""

7 years agoMerge "jni: Add @CriticalNative support for MIPS32/MIPS64"
Treehugger Robot [Thu, 17 Nov 2016 15:57:53 +0000 (15:57 +0000)]
Merge "jni: Add @CriticalNative support for MIPS32/MIPS64"

7 years agoMerge "MIPS32: Assign missing entrypoints in InitEntryPoints"
Treehugger Robot [Thu, 17 Nov 2016 15:57:48 +0000 (15:57 +0000)]
Merge "MIPS32: Assign missing entrypoints in InitEntryPoints"

7 years agoRevert Revert "Use interpret-only instead of verify-at-runtime when testing JIT"
Calin Juravle [Thu, 17 Nov 2016 15:19:21 +0000 (15:19 +0000)]
Revert Revert "Use interpret-only instead of verify-at-runtime when testing JIT"

This reverts commit f1d926592ca7030ad12abc75f2b56643a9e23645.

Change-Id: I161f2e0381a31cad8b014d7384eac2e776ae5411

7 years agoMerge "Add const-class benchmark."
Vladimir Marko [Thu, 17 Nov 2016 14:24:45 +0000 (14:24 +0000)]
Merge "Add const-class benchmark."

7 years agoAdd const-class benchmark.
Vladimir Marko [Wed, 16 Nov 2016 15:40:12 +0000 (15:40 +0000)]
Add const-class benchmark.

Also fix indentation in const-string benchmark.

Test: vogar --benchmark art/benchmark/const-class/src/ConstClassBenchmark.java
Test: vogar --benchmark art/benchmark/const-string/src/ConstStringBenchmark.java
Bug: 30627598
Change-Id: I04ca9514f6e647640e2c0d9d65fdc4ace652927a

7 years ago[MIPS64] JNI Compiler: compiler independent test
Pavle Batuta [Wed, 16 Mar 2016 10:31:46 +0000 (11:31 +0100)]
[MIPS64] JNI Compiler: compiler independent test

Fixed MIPS64 stackArgsSignExtendedTest that did not work properly
when code was built with clang. The the test is now written in an
asm stub and should be completely compiler indepedent.

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

Change-Id: Idefef3a8414dd8b88a28d2d8862a724bc72402a7

7 years agoMerge "MethodHandles: Check return types when resolving handles."
Orion Hodson [Thu, 17 Nov 2016 10:26:45 +0000 (10:26 +0000)]
Merge "MethodHandles: Check return types when resolving handles."

7 years agoMerge "ARM: VIXL32: Arch specific operations."
Nicolas Geoffray [Thu, 17 Nov 2016 09:39:23 +0000 (09:39 +0000)]
Merge "ARM: VIXL32: Arch specific operations."

7 years agoMerge "Address comments from aog/303658."
Hiroshi Yamauchi [Thu, 17 Nov 2016 00:36:44 +0000 (00:36 +0000)]
Merge "Address comments from aog/303658."

7 years agoMerge "Ensure CC GC is used for the read barrier config."
Treehugger Robot [Wed, 16 Nov 2016 22:39:44 +0000 (22:39 +0000)]
Merge "Ensure CC GC is used for the read barrier config."

7 years agoMerge "Change iftable to never be null"
Mathieu Chartier [Wed, 16 Nov 2016 21:40:34 +0000 (21:40 +0000)]
Merge "Change iftable to never be null"

7 years agoAddress comments from aog/303658.
Hiroshi Yamauchi [Wed, 16 Nov 2016 21:30:17 +0000 (13:30 -0800)]
Address comments from aog/303658.

Bug: 12687968
Test: test-art-host with CC.
Change-Id: I87a3be336cb1c6b17acc515415c325464ffddc01

7 years agoEnsure CC GC is used for the read barrier config.
Hiroshi Yamauchi [Tue, 15 Nov 2016 01:35:12 +0000 (17:35 -0800)]
Ensure CC GC is used for the read barrier config.

To prevent the -Xgc option from causing unsupported GC types to run.

Bug: 12687968
Test: test-art-host with CC.
Change-Id: I10b42190c0888342e9127c52e863ddae82e4d7a1

7 years agoChange iftable to never be null
Mathieu Chartier [Tue, 15 Nov 2016 23:51:31 +0000 (15:51 -0800)]
Change iftable to never be null

Simplifies code generation by removing a null check. The null case
is rare.

Ritzperf code size: 13107624 -> 13095336

Also addressed comments from previous CL.

Bug: 32577579

Test: test-art-host, run ritzperf both with CC

Change-Id: I2b31e800867112869d7f0643e16c08826296979e

7 years agoARM: VIXL32: Arch specific operations.
Artem Serov [Fri, 21 Oct 2016 10:51:50 +0000 (11:51 +0100)]
ARM: VIXL32: Arch specific operations.

Tests which now start to pass:
  550-checker-multiply-accumulate
  564-checker-negbitwise

Test: export ART_USE_VIXL_ARM_BACKEND=true && \
      mma test-art-host dist && mma test-art-target dist

Change-Id: I0b057486a8e0e48afbc52dd18b61ea16c671bec2

7 years agoMerge "A few more tests for LICM."
Aart Bik [Wed, 16 Nov 2016 18:04:54 +0000 (18:04 +0000)]
Merge "A few more tests for LICM."

7 years agoA few more tests for LICM.
Aart Bik [Wed, 9 Nov 2016 23:30:03 +0000 (15:30 -0800)]
A few more tests for LICM.

Rationale:
These tests ensure that some possible improvements in LICM
(e.g. hoisting add in environment out of the loops) will
be done right in the future.

Test: test-art-host

Change-Id: Ic00775ccf03408273d427ee9399df55b091c9fa4

7 years agoMethodHandles: Check return types when resolving handles.
Orion Hodson [Wed, 16 Nov 2016 13:43:26 +0000 (13:43 +0000)]
MethodHandles: Check return types when resolving handles.

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

7 years agoMerge "ARM: VIXL32: Fix VisitTypeConversion."
Nicolas Geoffray [Wed, 16 Nov 2016 11:25:40 +0000 (11:25 +0000)]
Merge "ARM: VIXL32: Fix VisitTypeConversion."

7 years agoMerge "Use OUT_DIR_COMMON_BASE if OUT_DIR is unset."
Nicolas Geoffray [Wed, 16 Nov 2016 11:05:40 +0000 (11:05 +0000)]
Merge "Use OUT_DIR_COMMON_BASE if OUT_DIR is unset."

7 years agoMerge "ART: Prioritize reference table dump"
Treehugger Robot [Tue, 15 Nov 2016 23:13:00 +0000 (23:13 +0000)]
Merge "ART: Prioritize reference table dump"

7 years agoMerge "ART: Print debug info in test 913"
Treehugger Robot [Tue, 15 Nov 2016 22:14:44 +0000 (22:14 +0000)]
Merge "ART: Print debug info in test 913"

7 years agoMerge "Pass object instead of class to instanceof entrypoint"
Mathieu Chartier [Tue, 15 Nov 2016 21:14:54 +0000 (21:14 +0000)]
Merge "Pass object instead of class to instanceof entrypoint"

7 years agoPass object instead of class to instanceof entrypoint
Mathieu Chartier [Mon, 14 Nov 2016 22:38:53 +0000 (14:38 -0800)]
Pass object instead of class to instanceof entrypoint

Reduces code size. Also avoid read barrier for kArrayCheck case.

Bug: 32577579

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

Change-Id: Ia890f656fe166b2d39c522b63a8a6469404134ae

7 years agoART: Print debug info in test 913
Andreas Gampe [Tue, 15 Nov 2016 20:33:18 +0000 (12:33 -0800)]
ART: Print debug info in test 913

In case we find an unexpected thread root, dump all stacks.

Bug: 31385354
Test: m test-art-host-run-test-913-heaps
Change-Id: I62635950d5afe639d0f86f2b436809d75375956f

7 years agoMerge "Add option to force all code to be deoptimizable"
Treehugger Robot [Tue, 15 Nov 2016 18:41:38 +0000 (18:41 +0000)]
Merge "Add option to force all code to be deoptimizable"

7 years agoMerge "ART: Name dex2oat main thread "dex2oat""
Treehugger Robot [Tue, 15 Nov 2016 17:18:22 +0000 (17:18 +0000)]
Merge "ART: Name dex2oat main thread "dex2oat""

7 years agoAdd option to force all code to be deoptimizable
Alex Light [Fri, 11 Nov 2016 19:21:04 +0000 (11:21 -0800)]
Add option to force all code to be deoptimizable

Currently this can only be passed during runtime startup. We will add
support for doing it from the zygote in the future.

Bug: 28769520
Bug: 32369913

Test: m test-art-host

Change-Id: I5eb16887ea14b140217c123b3effd47c5c8b2768

7 years agoMerge "Fix use of std::stoi without error handling."
Jeff Hao [Tue, 15 Nov 2016 02:35:38 +0000 (02:35 +0000)]
Merge "Fix use of std::stoi without error handling."

7 years agoART: Prioritize reference table dump
Andreas Gampe [Tue, 15 Nov 2016 01:00:28 +0000 (17:00 -0800)]
ART: Prioritize reference table dump

Sort the reference table summary dump by highest count, prioritizing
repeated types and instances. This will help with triaging leaks.

Add a test.

Bug: 32857749
Test: m test-art-host-gtest-reference_table_test
Change-Id: I7e61881b5badf9ac2b6b72333f31437ab498caee

7 years agoMerge "Optimize non-intrinsic object array copy for Baker."
Treehugger Robot [Mon, 14 Nov 2016 23:44:49 +0000 (23:44 +0000)]
Merge "Optimize non-intrinsic object array copy for Baker."

7 years agoFix use of std::stoi without error handling.
Jeff Hao [Mon, 14 Nov 2016 23:31:06 +0000 (15:31 -0800)]
Fix use of std::stoi without error handling.

Changed to use strtoul, with a break if it fails to read the checksum.

Test: mm test-art-host
Bug: 32066687
Change-Id: Ic1299c23aae15a8329ad57b4eca5c0857f6eefb6

7 years agoMerge "Change 64 bit atomic counter to size_t"
Mathieu Chartier [Mon, 14 Nov 2016 23:08:34 +0000 (23:08 +0000)]
Merge "Change 64 bit atomic counter to size_t"

7 years agoOptimize non-intrinsic object array copy for Baker.
Hiroshi Yamauchi [Mon, 14 Nov 2016 21:42:50 +0000 (13:42 -0800)]
Optimize non-intrinsic object array copy for Baker.

Check the gray bit per array rather than per element.

Bug: 12687968
Test: test-art-host with CC.
Change-Id: I20b44e522e66f0b156644b93a2885a8e7f40f8db

7 years agoMerge "Clean up interface check cast"
Mathieu Chartier [Mon, 14 Nov 2016 20:49:27 +0000 (20:49 +0000)]
Merge "Clean up interface check cast"

7 years agoClean up interface check cast
Mathieu Chartier [Mon, 14 Nov 2016 18:50:29 +0000 (10:50 -0800)]
Clean up interface check cast

Changed arm, arm64 to use less labels and removed forward branch
in the success case.

Cleaned up X86, X86_64 to remove the is_null label.

Bug: 12687968
Bug: 32577579

Test: test-art-host, test-art-target CC
Change-Id: Iba426dff548b2ef42198fad13efeb075f7c724a7

7 years agoART: Name dex2oat main thread "dex2oat"
Andreas Gampe [Mon, 14 Nov 2016 18:11:16 +0000 (10:11 -0800)]
ART: Name dex2oat main thread "dex2oat"

For better representation in tools like top and ps.

Test: m
Change-Id: Ia93271a850d5b0dfa79d09ea4f6b02b5230727d0

7 years agoMerge "ART: Make test 030 slightly more robust"
Treehugger Robot [Mon, 14 Nov 2016 18:18:12 +0000 (18:18 +0000)]
Merge "ART: Make test 030 slightly more robust"

7 years agoARM: VIXL32: Fix VisitTypeConversion.
Scott Wakeling [Fri, 28 Oct 2016 15:11:08 +0000 (16:11 +0100)]
ARM: VIXL32: Fix VisitTypeConversion.

Pass 422-type-conversion and some other tests.

Test: export ART_USE_VIXL_ARM_BACKEND=true && \
      mma test-art-host dist && mma test-art-target dist

Change-Id: I89a491a7724ae5286b717133eec16433b7066845

7 years agoMerge "Revert "Revert "Revert "JIT root tables.""""
Nicolas Geoffray [Mon, 14 Nov 2016 12:41:12 +0000 (12:41 +0000)]
Merge "Revert "Revert "Revert "JIT root tables.""""

7 years agoRevert "Revert "Revert "JIT root tables."""
Nicolas Geoffray [Mon, 14 Nov 2016 12:40:52 +0000 (12:40 +0000)]
Revert "Revert "Revert "JIT root tables."""

libcore failures:
dalvikvm32 F 11-14 03:04:06 14870 14870 jit_code_cache.cc:310] Check failed: new_string != nullptr

This reverts commit 75afcdd3503a8a8518e5b23d21b6e73306ce39ce.

Change-Id: I5a6b6b48aa79a763d1ff1ba4d85d63811254787d

7 years agoMerge "Update test expectation."
Nicolas Geoffray [Mon, 14 Nov 2016 12:38:11 +0000 (12:38 +0000)]
Merge "Update test expectation."

7 years agoUpdate test expectation.
Nicolas Geoffray [Mon, 14 Nov 2016 12:36:55 +0000 (12:36 +0000)]
Update test expectation.

test: 902
Change-Id: I0d9082a34a66c5f2aadec90eda0c5c2a0feef2e4

7 years agoMerge "Revert "Revert "Rename vdex-fd to output-vdex-fd, add input-vdex-fd."""
Nicolas Geoffray [Mon, 14 Nov 2016 09:24:56 +0000 (09:24 +0000)]
Merge "Revert "Revert "Rename vdex-fd to output-vdex-fd, add input-vdex-fd."""

7 years agoMerge "Revert "Revert "JIT root tables."""
Nicolas Geoffray [Mon, 14 Nov 2016 09:13:46 +0000 (09:13 +0000)]
Merge "Revert "Revert "JIT root tables."""

7 years agoMerge "Update 902 test to highlight JIT issue."
Nicolas Geoffray [Mon, 14 Nov 2016 09:12:59 +0000 (09:12 +0000)]
Merge "Update 902 test to highlight JIT issue."

7 years agoUpdate 902 test to highlight JIT issue.
Nicolas Geoffray [Fri, 11 Nov 2016 11:45:59 +0000 (11:45 +0000)]
Update 902 test to highlight JIT issue.

Test: 902-hello-transformation
bug: 32821077
Change-Id: Ic7d267a5e62d4e001d1b85f1cc3d10546814bd18

7 years agoMerge "ARM: VIXL32: Implement more codegen visitors."
Nicolas Geoffray [Sat, 12 Nov 2016 13:58:17 +0000 (13:58 +0000)]
Merge "ARM: VIXL32: Implement more codegen visitors."

7 years agoMerge "Add visiting for class loaders in StickyMarkSweep"
Treehugger Robot [Sat, 12 Nov 2016 06:48:17 +0000 (06:48 +0000)]
Merge "Add visiting for class loaders in StickyMarkSweep"

7 years agoUse OUT_DIR_COMMON_BASE if OUT_DIR is unset.
Fredrik Roubert [Sat, 12 Nov 2016 03:28:18 +0000 (19:28 -0800)]
Use OUT_DIR_COMMON_BASE if OUT_DIR is unset.

In build/make/core/envsetup.mk the logic for setting OUT_DIR is this:

ifeq (,$(strip $(OUT_DIR)))
ifeq (,$(strip $(OUT_DIR_COMMON_BASE)))
OUT_DIR := $(TOPDIR)out
else
OUT_DIR := $(OUT_DIR_COMMON_BASE)/$(notdir $(PWD))
endif
endif

To get the correct value for its out_dir variable, buildbot-build.sh
needs to do the same, otherwise it'll generate incorrect target names
in environments where OUT_DIR_COMMON_BASE is set but OUT_DIR unset.

Test: art/tools/buildbot-build.sh --host

Change-Id: I558949655a97b47ce3c560ed70310c9768e1da5c

7 years agoMerge "ART: Fix alloc-dealloc mismatch"
Treehugger Robot [Sat, 12 Nov 2016 02:59:32 +0000 (02:59 +0000)]
Merge "ART: Fix alloc-dealloc mismatch"