OSDN Git Service
Treehugger Robot [Mon, 23 Jan 2017 16:48:50 +0000 (16:48 +0000)]
Merge "ART: Reference.getReferent intrinsic for arm and arm64"
Vladimir Marko [Mon, 23 Jan 2017 15:08:01 +0000 (15:08 +0000)]
Merge "Fix inserting classes to initiating loader's class table."
TatWai Chong [Wed, 2 Nov 2016 08:12:48 +0000 (16:12 +0800)]
ART: Reference.getReferent intrinsic for arm and arm64
Test: m test-art-host
Test: m test-art-target
Test: export ART_HEAP_POISONING=true; m test-art-host
Test: export ART_HEAP_POISONING=true; m test-art-target
Bug:
32535355
Change-Id: Ie63317689dd9e03a24e701c30411f8014970173a
Nicolas Geoffray [Mon, 23 Jan 2017 13:24:23 +0000 (13:24 +0000)]
Merge "Allow multiple HArmDexCacheArrayBase."
Nicolas Geoffray [Mon, 23 Jan 2017 13:13:35 +0000 (13:13 +0000)]
Merge "ART: Re-enable TI tests for target"
Treehugger Robot [Mon, 23 Jan 2017 12:20:28 +0000 (12:20 +0000)]
Merge "MIPS64: Extend assembler_mips64_test"
Nicolas Geoffray [Mon, 23 Jan 2017 09:03:12 +0000 (09:03 +0000)]
Allow multiple HArmDexCacheArrayBase.
So that even graphs with irreducible loops can use it
and avoid loading methods through KDexCacheViaMethod.
Test: test-art-target
Change-Id: I913eece1c134ebe9ea989064e477f694b8895d8f
Treehugger Robot [Sun, 22 Jan 2017 23:33:19 +0000 (23:33 +0000)]
Merge "Use higher default thread suspend timeout for run tests"
Mathieu Chartier [Sun, 22 Jan 2017 21:33:40 +0000 (13:33 -0800)]
Use higher default thread suspend timeout for run tests
Increase the default for tests from 10s-50s to 500s. This is done
by adding a run-test option "--suspend-timeout" that defaults to
500000.
Example when passing a low value of 100:
test/run-test --host --suspend-timeout 100 --dev 004-ThreadStress
Results in:
dalvikvm32 F 01-22 13:33:31 12067 12118 thread_list.cc:669] Timed
out waiting for threads to suspend, waited for 100.114ms
This should fix some of the recent test flakiness.
Test: test-art-host
Change-Id: I303c4f198e560e9f38ec375e9d7a80a5e61f776e
Andreas Gampe [Sat, 21 Jan 2017 03:49:11 +0000 (19:49 -0800)]
ART: Re-enable TI tests for target
Fix invalid null handle for dlsym on arm32. Fix missing cast in
dispatch.
Remove the test black-list.
Bug:
31681198
Test: m test-art-target-run-test (bullhead)
Change-Id: I3edc68421933330b4361fb9e49d4e5ff4966a4ff
Treehugger Robot [Sat, 21 Jan 2017 01:34:30 +0000 (01:34 +0000)]
Merge "ART: Refactor TI tests"
Mathieu Chartier [Sat, 21 Jan 2017 01:29:33 +0000 (01:29 +0000)]
Merge "Compressed native PC for stack maps"
Treehugger Robot [Sat, 21 Jan 2017 00:56:30 +0000 (00:56 +0000)]
Merge "ARM64: Clean-up and extend the supported cpu_variant list."
Mathieu Chartier [Thu, 19 Jan 2017 22:48:48 +0000 (14:48 -0800)]
Compressed native PC for stack maps
Compress native PC based on instruction alignment. This reduces the
size of stack maps, boot.oat is 0.4% smaller for arm64.
Test: test-art-host, test-art-target, N6P booting
Change-Id: I2b70eecabda88b06fa80a85688fd992070d54278
Andreas Gampe [Fri, 20 Jan 2017 05:13:46 +0000 (21:13 -0800)]
ART: Refactor TI tests
Add a helper to explicitly bind native methods in a given class,
using dlsym to look up C functions in the local environment.
Add a callback helper that hooks VmInit and calls the above function
on the Main class. Use the callback helper before calling the test-
defined or shared minimal OnLoad function.
Add a binder helper that immediately binds the Main functions. Use
the helper before calling the test-defined OnAttach function.
Remove System.loadLibrary from tests. Instead rely on the explicit
binding.
In preparation for making the tests functional on device.
Test: m test-art-host
Change-Id: I12e68f070e8c6331e51d3a1fa4b9ebd8f28dfce6
Treehugger Robot [Fri, 20 Jan 2017 22:30:29 +0000 (22:30 +0000)]
Merge "ART: More valgrind suppressions"
Alex Light [Fri, 20 Jan 2017 22:06:09 +0000 (22:06 +0000)]
Merge "Use original dex file for retransformation."
Andreas Gampe [Fri, 20 Jan 2017 19:38:37 +0000 (11:38 -0800)]
ART: More valgrind suppressions
Local host seems different from build bots.
Bug:
31684920
Test: m valgrind-test-art-host-gtest-runtime_callbacks_test
Change-Id: Ie662373e7779be1694b8d338b3ddf91b5fd25df1
Alex Light [Thu, 19 Jan 2017 22:57:28 +0000 (14:57 -0800)]
Use original dex file for retransformation.
The spec requires us to pass the dex file as it appeared before any
retransformation-capable agents had modified it to the
ClassFileLoadHooks when RetransformClasses is called. We do this by
saving the initial dex file bytes into the class as a byte[].
Bug:
32369916
Test: mma -j40 test-art-host
Change-Id: Ic6af3738cd2a831e91ba1144f502fa58b3c333e4
Treehugger Robot [Fri, 20 Jan 2017 19:10:32 +0000 (19:10 +0000)]
Merge "Dexfuzz: Added --divergence-retry option."
Colin Cross [Fri, 20 Jan 2017 18:34:32 +0000 (18:34 +0000)]
Merge "Revert "CHA for abstract methods.""
Colin Cross [Fri, 20 Jan 2017 17:37:02 +0000 (17:37 +0000)]
Revert "CHA for abstract methods."
This reverts commit
ae6c189b9d63ca4c2ae0e952187819c5e442e3c9.
This is causing sporadic build failures with:
dex2oatd F 01-20 15:05:33 8343 10164 cha.cc:292] Check failed: method_in_super->HasSingleImplementation()
Change-Id: I4435ab028d3f7893e18b44347f294326c573a255
Vladimir Marko [Wed, 18 Jan 2017 15:22:59 +0000 (15:22 +0000)]
Fix inserting classes to initiating loader's class table.
Fix two cases that were missed in
https://android-review.googlesource.com/312285
First, copy all class references to app image class table,
including boot image classes where the class loader used for
AOT is only the initiating loader, not the defining loader.
Second, add array classes to the initiating loader's class
table.
Without these fixes, ClassLinker::LookupResolvedType() was
actually relying on the type being in the dex cache because
in some cases the slow path would not be able to find it.
Add a test for ClassLinker::LookupResolvedType() with an
array type and fix that function to avoid null pointer
dereference.
Test: m test-art-host
Bug:
30627598
Change-Id: I7cb14788700e6a22d16c364f8a35e2b6b3d954e4
Treehugger Robot [Fri, 20 Jan 2017 17:06:30 +0000 (17:06 +0000)]
Merge "ART: Add GetClassVersionNumbers."
Treehugger Robot [Fri, 20 Jan 2017 17:05:23 +0000 (17:05 +0000)]
Merge "ART: Add tests for TLS"
Treehugger Robot [Fri, 20 Jan 2017 17:04:29 +0000 (17:04 +0000)]
Merge changes I914dfac9,I33b1934a
* changes:
ART: Add phase events
ART: Add GetPhase
Mingyao Yang [Fri, 20 Jan 2017 14:23:39 +0000 (14:23 +0000)]
Merge "CHA for abstract methods."
Branislav Rankov [Fri, 23 Dec 2016 16:19:09 +0000 (16:19 +0000)]
Dexfuzz: Added --divergence-retry option.
This option controls the number of retries done when checking for self-divergence.
Test: dexfuzz --inputs=seeds --execute --arm --optimizing --interpreter --repeat=100 --divergence-retry=20
Change-Id: I90e2705e40c6f23d47ddbb856828147c4f6a4157
Treehugger Robot [Fri, 20 Jan 2017 10:57:28 +0000 (10:57 +0000)]
Merge "Fix polymorphic invokes (one more round)."
Nicolas Geoffray [Fri, 20 Jan 2017 10:29:59 +0000 (10:29 +0000)]
Merge "vdex optimization: avoid doing application type resolution."
Goran Jakovljevic [Fri, 20 Jan 2017 10:11:11 +0000 (11:11 +0100)]
MIPS64: Extend assembler_mips64_test
Add tests for several existing instructions.
Test: mma test-art-host-gtest-assembler_mips64_test
Change-Id: I1505dc0cf019de2afedc9648e3fd41e7fd051861
Treehugger Robot [Fri, 20 Jan 2017 09:08:47 +0000 (09:08 +0000)]
Merge "ART: Add valgrind suppression"
Treehugger Robot [Fri, 20 Jan 2017 08:47:51 +0000 (08:47 +0000)]
Merge "Do not use npic image for oat file assistant tests."
Andreas Gampe [Fri, 20 Jan 2017 06:04:46 +0000 (22:04 -0800)]
ART: Add GetClassVersionNumbers.
Add support for GetClassVersionNumbers. Return the dex file version
as major, zero as minor. Add test.
Bug:
31684578
Test: m test-art-host-run-test-912-classes
Change-Id: Ib5082cd58b27a9183d8f19d42d4d8af46a6bb9c9
Andreas Gampe [Fri, 20 Jan 2017 05:59:22 +0000 (21:59 -0800)]
ART: Add phase events
Add VMStart, VMInit and VMDeath event support. Add removal of
jvmtiEnv from the event handler. Add and extend tests.
Bug:
31684920
Test: m test-art-host-901-hello-ti-agent
Change-Id: I914dfac98c2fb7b59efdfde69597a7fcd20fd486
Andreas Gampe [Fri, 20 Jan 2017 07:30:41 +0000 (23:30 -0800)]
ART: Add valgrind suppression
Suppress libunwind/libbacktrace reading arbitrary memory. Triggered
by SIGQUIT behavior in runtime_callbacks_test.
Bug:
31684920
Test: m valgrind-test-art-host-gtest-runtime_callbacks_test
Change-Id: Ifba237027b5e029b0e4f98264bd5c9eafa243beb
Andreas Gampe [Fri, 20 Jan 2017 03:45:30 +0000 (19:45 -0800)]
ART: Add GetPhase
Extend RuntimePhaseCallback. Add support for GetPhase.
Add tests.
Bug:
31455788
Test: m test-art-host-run-test-901-hello-ti-agent
Change-Id: I33b1934a0789bc713675f21c2c9f676c9d3a1ed1
Alexey Frunze [Fri, 20 Jan 2017 03:07:37 +0000 (19:07 -0800)]
Fix polymorphic invokes (one more round).
memcpy() exhibits undefined behavior when the source and the
destination overlap. Use memmove() instead.
This fixes test failures when running the below tests on MIPS.
Test: booted MIPS32R2 in QEMU
Test: ./run-test --interpreter 953-invoke-polymorphic-compiler
Test: ./run-test --interpreter 955-methodhandles-smali
Test: ./run-test --interpreter 956-methodhandles
Test: ./run-test --interpreter 957-methodhandle-transforms
Test: ./run-test --interpreter 958-methodhandle-emulated-stackframe
Test: ./run-test --interpreter 959-invoke-polymorphic-accessors
Change-Id: Ia17ff25001faa7d91ce1178ab35313c36e75aa07
Treehugger Robot [Fri, 20 Jan 2017 05:13:17 +0000 (05:13 +0000)]
Merge "ART: Add runtime phase callback"
Andreas Gampe [Fri, 20 Jan 2017 04:40:42 +0000 (20:40 -0800)]
ART: Add tests for TLS
Wire up the functions. Actually add tests to 924-threads.
Bug:
31684593
Test: m test-art-host-run-test-924-threads
Change-Id: Ie4966a57633188fb75278d6bf4bdeb0ff2cd25aa
Andreas Gampe [Fri, 20 Jan 2017 01:23:17 +0000 (17:23 -0800)]
ART: Add runtime phase callback
Add callback that describes the current runtime phase, one of
starting, initialized and death. Add test.
Bug:
31684920
Test: m test-art-host-gtest-runtime_callbacks_test
Change-Id: I08ae7c45851572f8b3e446c07f0498f66bb032d3
Treehugger Robot [Fri, 20 Jan 2017 03:14:44 +0000 (03:14 +0000)]
Merge "Enable CC (ART_USE_READ_BARRIER) by default."
Treehugger Robot [Fri, 20 Jan 2017 01:52:53 +0000 (01:52 +0000)]
Merge "ART: Add SigQuit Callback"
Treehugger Robot [Fri, 20 Jan 2017 01:49:00 +0000 (01:49 +0000)]
Merge changes Ib5a3632c,I871f6b3c,I6ce0f71d
* changes:
ART: Make RuntimeCallbacks unique_ptr
ART: Add ClassLoadCallback
Revert "Revert "ART: Start RuntimeCallbacks""
Treehugger Robot [Fri, 20 Jan 2017 01:14:42 +0000 (01:14 +0000)]
Merge "ART: Add Agent Thread API"
Andreas Gampe [Wed, 18 Jan 2017 23:23:39 +0000 (15:23 -0800)]
ART: Add Agent Thread API
Add support for RunAgentThread. Add test.
Bug:
31684593
Test: m test-art-host-run-test-931-agent-thread
Change-Id: I5deb213fb06eedc5ee78a340458cf0dff615d0ac
Treehugger Robot [Fri, 20 Jan 2017 01:08:56 +0000 (01:08 +0000)]
Merge "Revert "Revert "Implement RetransformClasses"""
Andreas Gampe [Thu, 19 Jan 2017 05:43:16 +0000 (21:43 -0800)]
ART: Add SigQuit Callback
Add callback being triggered when the runtime handles SigQuit.
Bug:
31684920
Test: m test-art-host-gtest-runtime_callbacks_test
Change-Id: I23e3b256c654b6078c79b3897439d893ea79d96e
Alex Light [Thu, 19 Jan 2017 23:05:06 +0000 (15:05 -0800)]
Revert "Revert "Implement RetransformClasses""
This reverts commit
52a2db50b76f2b981d21d5508c3d9e8ab4c5fe93.
Reason for revert: Issue with RedefineClasses was resolved.
Test: ART_TEST_JNI_FORCECOPY=true mma -j40 test-art-host
Change-Id: I06f198df4fb40c48647b358d241710329e0812e9
Andreas Gampe [Thu, 19 Jan 2017 05:02:36 +0000 (21:02 -0800)]
ART: Make RuntimeCallbacks unique_ptr
Reduce the transitive closure of headers on runtime.h
Test: m
Change-Id: Ib5a3632c28b08bf07773f217a7ad711c1f12af6b
Andreas Gampe [Wed, 18 Jan 2017 23:22:37 +0000 (15:22 -0800)]
ART: Add ClassLoadCallback
Add callback for class-load and class-prepare events. Move Dbg
over. Add tests.
Bug:
31684920
Test: m test-art-host-gtest-runtime_callbacks_test
Test: art/tools/run-jdwp-tests.sh --mode=host
Change-Id: I871f6b3c54448fd6ece8d9a7571b2042be50d525
Andreas Gampe [Thu, 19 Jan 2017 17:49:03 +0000 (17:49 +0000)]
Revert "Revert "ART: Start RuntimeCallbacks""
This reverts commit
bf6331a45f730e1f1044af2ce43bceda660ae6fc.
Switch to using the mutator lock.
Bug:
31684920
Test: m test-art-host-gtest-runtime_callbacks_test
Test: art/tools/run-jdwp-tests.sh --mode=host --debug
Change-Id: I6ce0f71de2aa9f90cd23cfca7723a793b560b16b
Alex Light [Thu, 19 Jan 2017 23:01:26 +0000 (23:01 +0000)]
Merge "Revert "Implement RetransformClasses""
Alex Light [Thu, 19 Jan 2017 23:00:21 +0000 (23:00 +0000)]
Revert "Implement RetransformClasses"
This reverts commit
a6c5e97a4395352bc8684e6af9cecb62b80c316c.
Reason for revert: Accidently introduces double-free bug in RedefineClasses.
Change-Id: I021336c4fcf0cfb304915b0ffc5eaba5f91fdd5e
Mathieu Chartier [Thu, 19 Jan 2017 22:21:31 +0000 (22:21 +0000)]
Merge "Delete deadlocking DCHECK for LOS allocation"
Treehugger Robot [Thu, 19 Jan 2017 21:09:19 +0000 (21:09 +0000)]
Merge "Implement RetransformClasses"
Mathieu Chartier [Thu, 19 Jan 2017 19:37:22 +0000 (11:37 -0800)]
Delete deadlocking DCHECK for LOS allocation
The DCHECK required acquiring the heap bitmap lock. This lock
may be held by the GC during checkpoint marking. If the GC was
blocked waiting for the allocating thread to run its checkpoint, the
allocating thread would deadlock trying to acquire the heap bitmap
lock.
Bug:
34386492
Test: test-art-host
Change-Id: Idc0bf43cba726c690e578c15bd6373ba0a2c1ecb
Calin Juravle [Thu, 19 Jan 2017 19:42:25 +0000 (19:42 +0000)]
Merge "Rename offline_profiling_info to profile_compilation_info"
Alex Light [Fri, 13 Jan 2017 22:15:41 +0000 (14:15 -0800)]
Implement RetransformClasses
This CL implements basic support for the RetransformClasses function
and callbacks of the ClassFileLoadHook.
We do not yet support calling the ClassFileLoadHook events on first
load of class.
Bug:
32369913
Bug:
31684920
Test: mma -j40 test-art-host
Change-Id: I7959474f03f9903cc6f10ae3c06d9fd531ec7957
Hiroshi Yamauchi [Wed, 18 Jan 2017 22:47:25 +0000 (14:47 -0800)]
Enable CC (ART_USE_READ_BARRIER) by default.
Bug:
34084559
Bug:
12687968
Test: boot on angler
Test: test-art-host
Change-Id: I0287b813335b472dd59aa6b94aeeab2da60b9c99
Treehugger Robot [Thu, 19 Jan 2017 19:02:07 +0000 (19:02 +0000)]
Merge "Partial revert of "Reduce using ArtMethod's dex_cache_resolved_types_.""
Mingyao Yang [Thu, 5 Jan 2017 21:46:36 +0000 (13:46 -0800)]
CHA for abstract methods.
Add the ability to devirtualize abstract method invocation if
an abstract method has only one implementation. Only support in JIT
mode currently.
Test: new testcase and ART_TEST_JIT=true m -j20 test-art-host-run-test
Change-Id: I43da03a9fa9a73840f5eaf207c6611e0913a7f66
Nicolas Geoffray [Thu, 19 Jan 2017 16:25:06 +0000 (16:25 +0000)]
Partial revert of "Reduce using ArtMethod's dex_cache_resolved_types_."
Change Ic45a5ff8c66b79429e440cbc08d67bf22a083682 made the resolution
from true to false, assuming we could only enter that specific code
with a resolved type. Unfortunately b/
34440020 shows we still
need to resolve.
Also move arg to a Handle, now that we are resolving, which could
lead to thread suspension.
bug:
34440020
bug:
34452336
Test: test-art-host test-art-target
Change-Id: I98c834158733a46cf896e7dfa7ce226c53e2d949
Richard Uhler [Thu, 19 Jan 2017 16:58:39 +0000 (16:58 +0000)]
Do not use npic image for oat file assistant tests.
Because patchoat will no longer support relocating npic images.
All that matters for the oat file assistant test is that the secondary
boot image has a different checksum than the primary one.
Bug:
33192586
Test: oat_file_assistant_test
Change-Id: I7ece86337221a9d0c56534b2045026ba5d3d7d89
Mingyao Yang [Thu, 19 Jan 2017 14:24:54 +0000 (14:24 +0000)]
Merge "Always inline some methods related to StackMap."
Nicolas Geoffray [Thu, 19 Jan 2017 14:11:35 +0000 (14:11 +0000)]
Merge "Remove unused array entrypoints."
Nicolas Geoffray [Thu, 19 Jan 2017 13:20:58 +0000 (13:20 +0000)]
Merge "Remove now unused dex_cache_resolved_types_ from ArtMethod."
Treehugger Robot [Thu, 19 Jan 2017 13:09:10 +0000 (13:09 +0000)]
Merge "ART: Remove unused runtime.h include"
Nicolas Geoffray [Wed, 18 Jan 2017 18:07:15 +0000 (18:07 +0000)]
Remove unused array entrypoints.
Test: test-art-host test-art-target
Change-Id: I910d1c912c7c9056ecea0e1e7da7afb2a7220dfa
Nicolas Geoffray [Wed, 18 Jan 2017 14:34:48 +0000 (14:34 +0000)]
vdex optimization: avoid doing application type resolution.
When looking up for methods/fields, we can take the class
that was originally found as holding the method. If a subclass
of that class ends up redefining it after an OTA, it cannot
alter the expected flags anyways (eg a public method cannot be
overridden with a non-public method).
bug:
30937355
test: test-art-host
Change-Id: Ie3fbe0e829a27db61c534c4a49e945cc1afed9b9
Nicolas Geoffray [Thu, 19 Jan 2017 11:15:05 +0000 (11:15 +0000)]
Merge "Revert "Revert "Load the array class in the compiler for allocations."""
Richard Uhler [Thu, 19 Jan 2017 10:57:52 +0000 (10:57 +0000)]
Merge "Revert^3 "Remove unused code for patching oat files.""
Richard Uhler [Thu, 19 Jan 2017 10:53:59 +0000 (10:53 +0000)]
Revert^3 "Remove unused code for patching oat files."
This reverts commit
e7ec8b25dd6ac1b8ad8a68f808048bd6a61138f0.
Because tests are failing.
Bug:
33192586
Change-Id: I3e575c6c037873195c2177241153e3646d58e8a6
Treehugger Robot [Thu, 19 Jan 2017 10:35:47 +0000 (10:35 +0000)]
Merge "ART: Improve class initializer and constructor verification."
Treehugger Robot [Thu, 19 Jan 2017 09:40:34 +0000 (09:40 +0000)]
Merge "Revert "Revert "Remove unused code for patching oat files."""
Nicolas Geoffray [Thu, 19 Jan 2017 08:59:37 +0000 (08:59 +0000)]
Revert "Revert "Load the array class in the compiler for allocations.""
This reverts commit
fee255039e30c1c3dfc70c426c3d176221c3cdf9.
Change-Id: I02b45f9a659d872feeb35df40b42c1be9878413a
Nicolas Geoffray [Thu, 19 Jan 2017 09:03:12 +0000 (09:03 +0000)]
Merge "Revert "ART: Start RuntimeCallbacks""
Nicolas Geoffray [Thu, 19 Jan 2017 09:02:50 +0000 (09:02 +0000)]
Revert "ART: Start RuntimeCallbacks"
jdwp tests failing with:
STDERR> dalvikvm32 E 01-18 23:14:50 12180 12198 thread-inl.h:137] holding "runtime callbacks lock" at point where thread suspension is expected
Bug:
31684920
This reverts commit
13093d455b8266338fd713b04261c58e9dc2b164.
Change-Id: I94e4154e273d006eecdd485607dcfd96392d6a00
Orion Hodson [Wed, 21 Sep 2016 14:41:06 +0000 (15:41 +0100)]
ART: Improve class initializer and constructor verification.
DEX file verifier checks additional properties of class initializers
and constructors:
(i) Names match expected <clinit> / <init>.
(ii) The method descriptor for <clinit> is ()V.
(iii) The return type of <init> is V.
(iV) No other names start with '<'.
Bug:
31313719
Change-Id: I60bffa6561e1bae353f97c42377ea556bfa790af
Test: m test-art-host-gtest-dex_file_verifier_test
Andreas Gampe [Thu, 19 Jan 2017 05:30:48 +0000 (21:30 -0800)]
ART: Remove unused runtime.h include
This has not been used since
98e6ce44c700abd9375fe17f0aa31fea1e1e938b.
Test: m
Change-Id: If10971f9fcfb2417eece23f0c9186734314ad81b
Treehugger Robot [Thu, 19 Jan 2017 03:37:11 +0000 (03:37 +0000)]
Merge "Revert "Load the array class in the compiler for allocations.""
Calin Juravle [Wed, 18 Jan 2017 23:29:12 +0000 (15:29 -0800)]
Rename offline_profiling_info to profile_compilation_info
This solves a long standing TODO to align the names of the files and the
class.
Bug:
32434870
Test: test-art-host
Change-Id: I2707da8fef8736a7223189d894fc00ff11bfab12
Hiroshi Yamauchi [Thu, 19 Jan 2017 02:11:15 +0000 (02:11 +0000)]
Revert "Load the array class in the compiler for allocations."
libcore test fails.
This reverts commit
cc99df230feb46ba717252f002d0cc2da6828421.
Change-Id: I5bac595acd2b240886062e8c1f11f9095ff6a9ed
Treehugger Robot [Thu, 19 Jan 2017 02:10:20 +0000 (02:10 +0000)]
Merge "ART: Note CC configuration down into oat files"
Treehugger Robot [Thu, 19 Jan 2017 01:24:24 +0000 (01:24 +0000)]
Merge "Split ArtJvmtiEvent::kClassFileLoadHook in two."
Mingyao Yang [Wed, 18 Jan 2017 22:51:59 +0000 (14:51 -0800)]
Always inline some methods related to StackMap.
This significantly speeds up stack walking on Pmd in Dacapo (10-30%).
Test: test-art-host
Change-Id: I79513b0b3d611e591c44e252062abf6a4f902797
Andreas Gampe [Thu, 19 Jan 2017 00:05:01 +0000 (16:05 -0800)]
ART: Note CC configuration down into oat files
To detect changes in configuration, write the runtime configuration
of ART_USE_READ_BARRIER into the oat file key-value store.
Bug:
34084559
Bug:
12687968
Test: m test-art-host
Test: m ART_USE_READ_BARRIER=true test-art-host
Change-Id: I0b2bd9aa5546538e2b4b669b0acc0a4bebfd7bf0
Treehugger Robot [Wed, 18 Jan 2017 22:52:26 +0000 (22:52 +0000)]
Merge "ART: Start RuntimeCallbacks"
Alex Light [Wed, 18 Jan 2017 19:17:47 +0000 (11:17 -0800)]
Split ArtJvmtiEvent::kClassFileLoadHook in two.
Since the ClassFileLoadHook event is sent to different environments
based on when it is invoked we split the event in two behind the
scenes. The event dispatcher is responsible for making sure that
either or both of the appropriate underlying events are invoked when a
JVMTI_EVENT_CLASS_FILE_LOAD_HOOK is sent.
We also make sure to modify the EventHandler so it sends the correct
events in the correct places when an environment changes its
capabilities.
Bug:
32369913
Bug:
31684920
Test: mma -j40 test-art-host
Change-Id: I82567fc66debe0b658e8d7fced6284a8c4355b7a
Treehugger Robot [Wed, 18 Jan 2017 20:47:13 +0000 (20:47 +0000)]
Merge "Refactor jvmtiEvent so we can add to it."
Treehugger Robot [Wed, 18 Jan 2017 20:43:01 +0000 (20:43 +0000)]
Merge "Fix check failure in ConcurrentCopying::IssueEmptyCheckpoint()."
Andreas Gampe [Wed, 18 Jan 2017 05:40:35 +0000 (21:40 -0800)]
ART: Start RuntimeCallbacks
Add a central RuntimeCallbacks structure to handle certain interesting
runtime events.
In a first iteration, add ThreadLifecycleCallback with ThreadStart and
ThreadStop. Move Dbg over to ThreadLifecycleCallback.
Add a test.
Bug:
31684920
Test: m test-art-host-gtest-runtime_callbacks_test
Test: art/tools/run-jdwp-tests.sh --mode=host
Change-Id: Ie0f77739a563207bfb4f04374e72dc6935c40b4f
Treehugger Robot [Wed, 18 Jan 2017 19:26:44 +0000 (19:26 +0000)]
Merge "ART: Disable test 901 on target"
Alex Light [Wed, 18 Jan 2017 18:27:06 +0000 (10:27 -0800)]
Refactor jvmtiEvent so we can add to it.
Change all code over to using ArtJvmtiEvent from jvmtiEvent so that we
have a way to add additional internal events if the need arises.
Bug:
32369913
Bug:
31684920
Test: mma -j40 test-art-host
Change-Id: I555475048d2e753db8adf317dc1f66d81533cde0
Treehugger Robot [Wed, 18 Jan 2017 18:54:49 +0000 (18:54 +0000)]
Merge changes Ib9fafbac,I05d73734,I0e95b0cb
* changes:
ART: Add JNI API
ART: Align jvmti.h with jni.h
ART: Add JNI function table manipulation
Andreas Gampe [Wed, 18 Jan 2017 17:55:54 +0000 (09:55 -0800)]
ART: Disable test 901 on target
As this is now doing slightly more work, disable like the other
tests.
Bug:
31681198
Test: m test-art-target
Change-Id: I73c9f2da1024f8eabc67aba12659d34878cec1f1
Andreas Gampe [Tue, 17 Jan 2017 02:18:14 +0000 (18:18 -0800)]
ART: Add JNI API
Add support for GetJNIFunctionTable and SetJNIFunctionTable. Add
tests.
Bug:
34343708
Test: m test-art-host-run-test-928-jni-table
Change-Id: Ib9fafbac2781c570aa6eacf5242afbbf6c3ee7a9
Andreas Gampe [Tue, 17 Jan 2017 02:53:59 +0000 (18:53 -0800)]
ART: Align jvmti.h with jni.h
Android follows the JNI specification and names the JNI function
table without the underscore.
Bug:
34343708
Test: m test-art-host
Change-Id: I05d73734545f9077ad66aceb335bdc8a76603a71
Andreas Gampe [Mon, 16 Jan 2017 20:41:12 +0000 (12:41 -0800)]
ART: Add JNI function table manipulation
Add support for a function table override. This will override the
decision between the regular and the CheckJNI function tables, if
set.
Bug:
34343708
Test: m test-art-host-gtest-jni_internal_test
Change-Id: I0e95b0cbd21f4efdcd8c3d312781d9aeeff54a1e
Treehugger Robot [Wed, 18 Jan 2017 17:16:06 +0000 (17:16 +0000)]
Merge "ART: Add Search API"