OSDN Git Service
Treehugger Robot [Fri, 13 Jan 2017 19:56:51 +0000 (19:56 +0000)]
Merge "ART: Add ThreadGroup API support"
Treehugger Robot [Fri, 13 Jan 2017 19:53:13 +0000 (19:53 +0000)]
Merge "Try really hard for JIT in test 916"
Treehugger Robot [Fri, 13 Jan 2017 19:48:20 +0000 (19:48 +0000)]
Merge "Complete unrolling of loops with small body and trip count one."
Aart Bik [Wed, 11 Jan 2017 18:20:43 +0000 (10:20 -0800)]
Complete unrolling of loops with small body and trip count one.
Rationale:
Avoids the unnecessary loop control overhead, suspend check,
and exposes more opportunities for constant folding in the
resulting loop body. Fully unrolls loop in execute() of
the Dhrystone benchmark (3% to 8% improvements).
Test: test-art-host
Change-Id: If30f38caea9e9f87a929df041dfb7ed1c227aba3
Treehugger Robot [Fri, 13 Jan 2017 16:54:30 +0000 (16:54 +0000)]
Merge "ART: Add GetThreadListStackTraces"
Treehugger Robot [Fri, 13 Jan 2017 16:52:52 +0000 (16:52 +0000)]
Merge "ART: Refactor test 911"
Andreas Gampe [Fri, 13 Jan 2017 01:34:39 +0000 (17:34 -0800)]
ART: Add ThreadGroup API support
Add support for GetThreadGroupInfo, GetThreadGroupChildren and
GetTopThreadGroups. Add tests.
Bug:
31455788
Test: m test-art-host-run-test-925-threadgroups
Change-Id: I56809c95dfd2666c2e18769a8960d6b1604274b4
Alex Light [Mon, 9 Jan 2017 21:31:06 +0000 (13:31 -0800)]
Try really hard for JIT in test 916
Sometimes we would fail to jit stuff due to high load. This makes us
try even harder to JIT so we won't fail in these scenarios.
Test: mma -j40 test-art-host
Test: stress --cpu 60 &; while ./test/run-test --host 916; do ; done
Change-Id: Ic944582bf021f119b8bc3f135af508ed8a8586c4
Nicolas Geoffray [Fri, 13 Jan 2017 16:03:05 +0000 (16:03 +0000)]
Merge "Make 129-ThreadGetId more robust."
Nicolas Geoffray [Fri, 13 Jan 2017 15:10:45 +0000 (15:10 +0000)]
Merge "ART tests: do not retrieve OatQuickMethodHeader for bridge methods"
Treehugger Robot [Fri, 13 Jan 2017 15:03:01 +0000 (15:03 +0000)]
Merge "MIPS32: Refined comment in java.lang.Math.abs(float/double) intrinsics"
Sebastien Hertz [Fri, 13 Jan 2017 14:41:56 +0000 (14:41 +0000)]
Merge "Revert "Update ART run-tests for new Jack optimizations""
Sebastien Hertz [Fri, 13 Jan 2017 14:27:26 +0000 (14:27 +0000)]
Revert "Update ART run-tests for new Jack optimizations"
This reverts commit
8960b0ba78a70948810f0e178f51b0a6d201985d.
Bug:
34066768
Test: make -j32 test-art-host
Change-Id: Ifeb22d1e909d31ac6dd31bc0a66bab41ccb53425
Nicolas Geoffray [Fri, 13 Jan 2017 11:29:41 +0000 (11:29 +0000)]
Make 129-ThreadGetId more robust.
Make sure we get the heap task daemon, to avoid a race with the runtime
creating the stack trace, and then updating the peer.
test: 129-ThreadGetId
bug:
28261069
Change-Id: I739ab6cd0180e2be07b7cecac6ad8a905a7c9cd0
Goran Jakovljevic [Fri, 13 Jan 2017 11:13:39 +0000 (12:13 +0100)]
MIPS32: Refined comment in java.lang.Math.abs(float/double) intrinsics
Bug:
30758343
Test: ./run-test 631-checker-fp-abs on CI20
Change-Id: Id7270c40887a0b904af59d6034b6867033c7dba3
Sebastien Hertz [Fri, 13 Jan 2017 10:23:47 +0000 (10:23 +0000)]
Merge "Update ART run-tests for new Jack optimizations"
Nicolas Geoffray [Fri, 13 Jan 2017 09:28:47 +0000 (09:28 +0000)]
Merge "Revert "Revert "Make object allocation entrypoints only take a class."""
Nicolas Geoffray [Fri, 13 Jan 2017 09:28:20 +0000 (09:28 +0000)]
Merge "Dont keep around scoped allocated ArtMethod after thread suspension."
Nicolas Geoffray [Thu, 12 Jan 2017 15:15:45 +0000 (15:15 +0000)]
Dont keep around scoped allocated ArtMethod after thread suspension.
Those methods are used after thread suspension, and their eg
declaring class is read. Because the GC does not see these methods,
the declaring class can move and the code will then access a stalled
pointer.
Test: test-art-host, ART_TEST_GC_STRESS=true/false
Test: 690-default-smali
Change-Id: I632197bc51f0da1dcf33b08195e8cfa4ccd73188
Nicolas Geoffray [Fri, 13 Jan 2017 09:22:08 +0000 (09:22 +0000)]
Merge "Revert "Revert "Refactor ClassLinker::LinkInterfaceMethods()."""
Andreas Gampe [Fri, 13 Jan 2017 05:16:14 +0000 (05:16 +0000)]
Merge "ART: Add GetThreadState"
Andreas Gampe [Fri, 13 Jan 2017 01:40:05 +0000 (17:40 -0800)]
ART: Add GetThreadListStackTraces
Add support for GetThreadListStackTraces. Add a test.
Bug:
31684812
Test: m test-art-host-run-test-911-get-stack-trace
Change-Id: I958d02306d515f7ac03fddf4371805b133330d26
Andreas Gampe [Fri, 13 Jan 2017 04:51:02 +0000 (20:51 -0800)]
ART: Refactor test 911
Break out the different test cases. As the stack traces print line
numbers, this will reduce the amount of expected.txt churn when
new tests are added.
Bug:
31684812
Test: m test-art-host-run-test-911-get-stack-trace
Change-Id: I3b4cb80ec5dd851ebbdf25fd660038d20a9daa9e
Andreas Gampe [Fri, 13 Jan 2017 03:35:49 +0000 (03:35 +0000)]
Merge "ART: Fix GetAllStackTraces"
Mathieu Chartier [Fri, 13 Jan 2017 03:35:15 +0000 (03:35 +0000)]
Merge "Avoid suspending heap task thread for getting stack traces"
Andreas Gampe [Thu, 12 Jan 2017 21:22:16 +0000 (13:22 -0800)]
ART: Add GetThreadState
Add support for GetThreadState. Add test.
Bug:
31684593
Test: m test-art-host-run-test-924-threads
Change-Id: I67a240c711e1165cfb72a856fc59ca69abaec3f6
Andreas Gampe [Fri, 13 Jan 2017 01:43:13 +0000 (17:43 -0800)]
ART: Fix GetAllStackTraces
Correctly select threads, skip starting threads. Amend test.
Bug:
31684812
Test: m ART_TEST_JIT=true test-art-host-run-test-911-get-stack-trace
Change-Id: Ieae6ba135ec7ec677615064ca020e10e14ec2cfe
Andreas Gampe [Fri, 13 Jan 2017 00:51:03 +0000 (00:51 +0000)]
Merge "Revert "Revert "ART: Ensure plugin is loaded on AttachAgent"""
Andreas Gampe [Thu, 12 Jan 2017 23:26:55 +0000 (23:26 +0000)]
Merge "ART: Add GetAllStackTraces"
Mathieu Chartier [Thu, 12 Jan 2017 22:51:44 +0000 (14:51 -0800)]
Avoid suspending heap task thread for getting stack traces
Instead of suspending the heap task thread, GetThreadStack (called by
VMStack_fillStackTraceElements and VMStack_getThreadStackTrace) will
return an empty thread stack. This fixes possible deadlocks caused by
suspending the GC thread and doing allocations for the stack trace.
Bug:
28261069
Test: test-art-host
Change-Id: I45a0b8ac94a99d6bbcfcdc2b41afadf941ec0138
Treehugger Robot [Thu, 12 Jan 2017 20:22:57 +0000 (20:22 +0000)]
Merge "ART: Add GetCurrentThread and GetThreadInfo"
Andreas Gampe [Thu, 12 Jan 2017 00:37:16 +0000 (16:37 -0800)]
ART: Add GetAllStackTraces
Add support for GetAllStackTraces. Add a test.
Bug:
31684812
Test: m test-art-host-run-test-911-get-stack-trace
Change-Id: I81f783a6b37bfc7b68c10ba6c803a11e1bd5d350
Hiroshi Yamauchi [Thu, 12 Jan 2017 19:50:46 +0000 (19:50 +0000)]
Merge "Don't need to block in AddWeakGlobalRef and MonitorList::Add under CC."
Vladimir Marko [Thu, 12 Jan 2017 18:37:06 +0000 (18:37 +0000)]
Revert "Revert "Refactor ClassLinker::LinkInterfaceMethods().""
Drop the fix for using the correct linear allocator.
That fix breaks some debug checks that need non-trivial
changes and extra testing, so leave that for another CL.
This reverts commit
dce413d333c88c86f28b9d0fe3a8052942ed9080.
Test: m test-art-host
Change-Id: I69935236a843a08d79b77c5fce74b4cc55f8ea99
Hiroshi Yamauchi [Thu, 12 Jan 2017 18:58:38 +0000 (18:58 +0000)]
Merge "Fix race condition btw DelayReferenceRefernent vs Reference.clear()."
Andreas Gampe [Thu, 12 Jan 2017 16:59:39 +0000 (16:59 +0000)]
Revert "Revert "ART: Ensure plugin is loaded on AttachAgent""
Agents require the JVMTI plugin. Ensure that it is loaded when
trying to satisfy an AttachAgent request. Amend test 909.
This reverts commit
98cf7cf8766770dba2718a6131345cc7f57c5bc7.
Blacklist debuggable test configurations for negative test.
Bug:
31682382
Test: m test-art-host-run-test-909-attach-agent
Change-Id: I7720a18689bd6ddee38292dd42faf190fc06d14d
Andreas Gampe [Thu, 12 Jan 2017 04:57:40 +0000 (20:57 -0800)]
ART: Add GetCurrentThread and GetThreadInfo
Add support for GetCurrentThread and GetThreadInfo. Add tests.
Bug:
31684593
Test: m test-art-host-run-test-924-threads
Change-Id: Ic2bc4c9b5c283e4eefe4075b6abe251b8be499c8
Nicolas Geoffray [Thu, 12 Jan 2017 18:00:02 +0000 (18:00 +0000)]
Merge "Revert "Refactor ClassLinker::LinkInterfaceMethods().""
Nicolas Geoffray [Thu, 12 Jan 2017 17:59:39 +0000 (17:59 +0000)]
Revert "Refactor ClassLinker::LinkInterfaceMethods()."
Fails libcore tests.
This reverts commit
afbd71ffbcc7b37067d3a4703648e62fc0e55e6f.
Change-Id: I611620f915025a0c077a78a480b2b730b3be3de8
Sebastien Hertz [Mon, 9 Jan 2017 13:26:12 +0000 (14:26 +0100)]
Update ART run-tests for new Jack optimizations
Disables Jack's use/def optimization that breaks run-test
442-checker-constant-folding.
This is done by introducing the "--jack-option" argument in the
build script. Tests can now individually pass jack options (like test
442-checker-constant-folding does now).
Bug:
34066768
Test: make -j32 test-art-host
(cherry picked from commit
282f2b10edbd03ffd2a98910babbd2607d1c1fb1)
Change-Id: Id5b247cfa2cfb743d28cb6f4e38eb79421c56ed9
Treehugger Robot [Thu, 12 Jan 2017 16:51:36 +0000 (16:51 +0000)]
Merge "ART: Simplify 9xx OnLoad setup"
Nicolas Geoffray [Thu, 12 Jan 2017 15:35:12 +0000 (15:35 +0000)]
Revert "Revert "Make object allocation entrypoints only take a class.""
This reverts commit
f7aaacd97881c6924b8212c7f8fe4a4c8721ef53.
Change-Id: I6756cd1e6110bb45231f62f5e388f16c044cb145
Treehugger Robot [Thu, 12 Jan 2017 12:39:01 +0000 (12:39 +0000)]
Merge "Refactor ClassLinker::LinkInterfaceMethods()."
Treehugger Robot [Thu, 12 Jan 2017 12:24:01 +0000 (12:24 +0000)]
Merge "MIPS32: Change java.lang.Math.abs(float/double) intrinsics"
Vladimir Marko [Mon, 19 Dec 2016 17:32:17 +0000 (17:32 +0000)]
Refactor ClassLinker::LinkInterfaceMethods().
Add a helper class and split LinkInterfaceMethods() into
several functions to improve readability. Even with this
change, it is still almost 250 lines long.
Fix the method array reallocation to use the appropriate
linear allocator for the class's defining loader. Given that
this is a native reallocation, failure to reallocate would
result in an abort, so CHECK() that we get a non-null array
instead of expecting a null and asserting a pending OOME.
Test: m test-art-host
Change-Id: I8ff8257e4271ae8c975ea4b33fd8af36e1a1f77e
Nicolas Geoffray [Thu, 12 Jan 2017 10:46:23 +0000 (10:46 +0000)]
Merge "Revert "ART: Ensure plugin is loaded on AttachAgent""
Nicolas Geoffray [Thu, 12 Jan 2017 10:46:04 +0000 (10:46 +0000)]
Revert "ART: Ensure plugin is loaded on AttachAgent"
Test fails.
Bug:
31682382
This reverts commit
ad2dc875ce29c3fafc1129a2a25184df28b66a10.
Change-Id: Id15d9d5478d2f72a4dc59f119944a311be7bc989
Goran Jakovljevic [Wed, 11 Jan 2017 12:42:38 +0000 (13:42 +0100)]
MIPS32: Change java.lang.Math.abs(float/double) intrinsics
abs.s and abs.d instructions can't be used when NAN2008=0 (R2 and
before). In these cases, abs(NaN) might change other bits (not just
sign bit).
This fixes test failure 631-checker-fp-abs for MIPS32.
Bug:
30758343
Test: mma test-art-target-run-test on CI20
Change-Id: I352efd66f2f72740406462c9ccc3bc4b1b5aea20
Treehugger Robot [Thu, 12 Jan 2017 07:20:35 +0000 (07:20 +0000)]
Merge "ART: Ensure plugin is loaded on AttachAgent"
Treehugger Robot [Thu, 12 Jan 2017 06:19:22 +0000 (06:19 +0000)]
Merge "Revert "Make object allocation entrypoints only take a class.""
Andreas Gampe [Thu, 12 Jan 2017 03:53:50 +0000 (19:53 -0800)]
ART: Simplify 9xx OnLoad setup
Provide the default implementation in common_load.cc, and only
mark cases that deviate.
Bug:
31455788
Test: m test-art-host-run-test
Change-Id: I40d467fb344405c443805749ced6717574430b75
Hiroshi Yamauchi [Thu, 12 Jan 2017 02:58:38 +0000 (02:58 +0000)]
Revert "Make object allocation entrypoints only take a class."
960-default-smali64 is failing.
This reverts commit
2b615ba29c4dfcf54aaf44955f2eac60f5080b2e.
Change-Id: Iebb8ee5a917fa84c5f01660ce432798524d078ef
Andreas Gampe [Wed, 11 Jan 2017 16:36:59 +0000 (08:36 -0800)]
ART: Ensure plugin is loaded on AttachAgent
Agents require the JVMTI plugin. Ensure that it is loaded when
trying to satisfy an AttachAgent request. Amend test 909.
Bug:
31682382
Test: m test-art-host-run-test-909-attach-agent
Change-Id: Id99d0315b5b2577167dd8f8448a052e04f3ed2e5
Andreas Gampe [Thu, 12 Jan 2017 01:21:20 +0000 (01:21 +0000)]
Merge "ART: Add raw monitor API"
Andreas Gampe [Tue, 10 Jan 2017 00:42:21 +0000 (16:42 -0800)]
ART: Add raw monitor API
Add support for CreateRawMonitor, DestroyRawMonitor,
RawMonitorEnter, RawMonitorExit, RawMonitorWait, RawMonitorNotify
and RawMonitorNotifyAll.
Bug:
31455788
Test: m test-art-host-run-test-923-monitors
Change-Id: I4eeab8011b547ae0ea8b2317701c68ce56677f79
Treehugger Robot [Wed, 11 Jan 2017 21:15:47 +0000 (21:15 +0000)]
Merge "Set timeout before connect to adb in jdwp."
Mathieu Chartier [Wed, 11 Jan 2017 21:10:28 +0000 (21:10 +0000)]
Merge "Increase thread suspension timeout for debug builds"
Orion Hodson [Wed, 11 Jan 2017 19:18:51 +0000 (19:18 +0000)]
Merge "Revert "ART: Compiler support for invoke-polymorphic.""
Orion Hodson [Wed, 11 Jan 2017 18:58:15 +0000 (18:58 +0000)]
Revert "ART: Compiler support for invoke-polymorphic."
This reverts commit
02e3092f8d98f339588e48691db77f227b48ac1e.
Reasons for revert:
- Breaks MIPS/MIPS64 build.
- Fails under GCStress test on x64.
- Different x64 build configuration doesn't like relocation.
Change-Id: I512555b38165d05f8a07e8aed528f00302061001
Mathieu Chartier [Wed, 11 Jan 2017 18:09:30 +0000 (10:09 -0800)]
Increase thread suspension timeout for debug builds
The current timeout may be causing some test failures. Also print how
long we waited.
Test: test-art-host -j32
Change-Id: Ib8a9c68ab4571efc8456c098b03bf35f648bfaf1
Treehugger Robot [Wed, 11 Jan 2017 18:30:04 +0000 (18:30 +0000)]
Merge "liblog: use log/log.h to access ALOG macros"
Treehugger Robot [Wed, 11 Jan 2017 18:08:03 +0000 (18:08 +0000)]
Merge "ART: Compiler support for invoke-polymorphic."
Mathieu Chartier [Wed, 11 Jan 2017 17:59:34 +0000 (17:59 +0000)]
Merge "Move most of art::Thread to ObjPtr"
Mathieu Chartier [Wed, 11 Jan 2017 17:47:30 +0000 (17:47 +0000)]
Merge "Fix possible deadlock in AddAccessFlags and ClearAccessFlags"
Orion Hodson [Thu, 1 Dec 2016 10:33:51 +0000 (10:33 +0000)]
ART: Compiler support for invoke-polymorphic.
Adds basic support to invoke method handles in compiled code.
Enables method verification for methods containing invoke-polymorphic.
Adds k45cc/k45rc output to Instruction::DumpString() which
was found to be missing when enabling verification.
Include stack traces in test 957-methodhandle-transforms for
failures so they can be easily identified.
Bug:
30550796,
33191393
Test: art/test/run-test 953
Test: m test-art-run-test
Change-Id: Ic9a96ea24906087597d96ad8159a5bc349d06950
Mark Salyzyn [Tue, 10 Jan 2017 23:12:38 +0000 (15:12 -0800)]
liblog: use log/log.h to access ALOG macros
Test: compile
Bug:
30465923
Change-Id: Ia2699768da1af6d508472360baa08c77c07fca01
Nicolas Geoffray [Wed, 11 Jan 2017 14:05:08 +0000 (14:05 +0000)]
Merge "Keep resolved String in HLoadString."
Treehugger Robot [Wed, 11 Jan 2017 12:58:15 +0000 (12:58 +0000)]
Merge "ARM: Instruction set features clean-up."
Vladimir Marko [Wed, 11 Jan 2017 11:25:38 +0000 (11:25 +0000)]
Merge "Remove the unused SMP instruction set feature option."
Nicolas Geoffray [Wed, 11 Jan 2017 10:37:54 +0000 (10:37 +0000)]
Merge "Make object allocation entrypoints only take a class."
Nicolas Geoffray [Fri, 6 Jan 2017 14:40:07 +0000 (14:40 +0000)]
Make object allocation entrypoints only take a class.
Change motivated by:
- Dex cache compression: having the allocation fast path do a
dex cache lookup will be too expensive. So instead, rely on the
compiler having direct access to the class (either through BSS for
AOT, or JIT tables for JIT).
- Inlining: the entrypoints relied on the caller of the allocation to
have the same dex cache as the outer method (stored at the bottom of
the stack). This meant we could not inline methods from a different
dex file that do allocations. By avoiding the dex cache lookup in
the entrypoint, we can now remove this restriction.
Code expansion on average for Docs/Gms/FB/Framework (go/lem numbers):
- Around 0.8% on arm64
- Around 1% for x64, arm
- Around 1.5% on x86
Test: test-art-host, test-art-target, ART_USE_READ_BARRIER=true/false
Test: test-art-host, test-art-target, ART_DEFAULT_GC_TYPE=SS ART_USE_TLAB=true
Change-Id: I41f3748bb4d251996aaf6a90fae4c50176f9295f
Treehugger Robot [Wed, 11 Jan 2017 10:28:16 +0000 (10:28 +0000)]
Merge "Do not return patchoat for dexopt needed."
Przemyslaw Szczepaniak [Wed, 11 Jan 2017 10:15:43 +0000 (10:15 +0000)]
Merge "Track libcore java.lang.reflect.Proxy update"
Nicolas Geoffray [Wed, 11 Jan 2017 09:08:09 +0000 (09:08 +0000)]
Merge "Recognize getClass() in RTP."
Mathieu Chartier [Wed, 11 Jan 2017 00:48:11 +0000 (16:48 -0800)]
Fix possible deadlock in AddAccessFlags and ClearAccessFlags
Reload the value each loop iteration or else it will spin forever
if the CAS fails due to another thread adding a different flag.
Test: mm
Change-Id: Idc320921597acc20d56301899b398756563029f2
Treehugger Robot [Wed, 11 Jan 2017 00:42:14 +0000 (00:42 +0000)]
Merge "Make all class redefinition operations after suspend_all infallible"
Treehugger Robot [Wed, 11 Jan 2017 00:26:10 +0000 (00:26 +0000)]
Merge "ART: Add system properties support"
Mathieu Chartier [Tue, 10 Jan 2017 23:54:41 +0000 (15:54 -0800)]
Move most of art::Thread to ObjPtr
Bug:
31113334
Test: test-art-host
Change-Id: I73d0de3c875d3ec3d732034fdc961dae79ef4070
Alex Light [Tue, 10 Jan 2017 21:33:56 +0000 (13:33 -0800)]
Make all class redefinition operations after suspend_all infallible
We can guarantee that the mutations to the class, classloader, method
& stack data-structures which occur after the suspend_all can never
fail. This will simplify implementing the required semantics of class
redefinition with respect to atomically updating multiple classes at
once.
Test: mma -j40 test-art-host
Change-Id: Iab95c66afbdcfe161a9486f5fb7193c53642c060
Nicolas Geoffray [Mon, 9 Jan 2017 20:54:52 +0000 (20:54 +0000)]
Keep resolved String in HLoadString.
For the following reasons:
- Avoids needing to do a lookup again in CodeGenerator::EmitJitRoots.
- Fixes races where we the string was GC'ed before CodeGenerator::EmitJitRoots.
- Makes it possible to do GVN on the same string but defined in different
dex files.
Test: test-art-host, test-art-target
Change-Id: If2b5d3079f7555427b1b96ab04546b3373fcf921
Andreas Gampe [Tue, 10 Jan 2017 03:21:06 +0000 (19:21 -0800)]
ART: Add system properties support
Add simple support for GetSystemProperties, GetSystemProperty and
SetSystemProperty. Add a test.
Bug:
31455788
Test: m test-art-host-run-test-922-properties
Change-Id: I02914f04643f0f8fab96f1b372925c2c5306fc9b
Mathieu Chartier [Tue, 10 Jan 2017 18:40:25 +0000 (18:40 +0000)]
Merge "Fix some issues reported by Valgrind"
Mathieu Chartier [Tue, 10 Jan 2017 18:09:21 +0000 (18:09 +0000)]
Merge "Delete extra arm64/mips64 MterpReturn suspend check"
Treehugger Robot [Tue, 10 Jan 2017 17:04:13 +0000 (17:04 +0000)]
Merge "Revert "Revert "Add basic implementation of IsModifiableClass"""
Treehugger Robot [Tue, 10 Jan 2017 17:01:12 +0000 (17:01 +0000)]
Merge "Revert "Revert "Add basic checks for redefinition."""
Przemyslaw Szczepaniak [Wed, 17 Aug 2016 16:46:38 +0000 (17:46 +0100)]
Track libcore java.lang.reflect.Proxy update
Test: make -j 32 & booted device & m test-art-host
Bug:
28666126
Change-Id: I6e7d75fd904e9b130925756ef1ff1122c25ab245
Mathieu Chartier [Tue, 10 Jan 2017 02:48:11 +0000 (18:48 -0800)]
Delete extra arm64/mips64 MterpReturn suspend check
Doing a suspend check after moving the result into the shadow frame
result_register_ is not safe since result_register_ is not a GC
root. The suspend check is unnecessary since the opcodes that branch
to MterpReturn already do a suspend check.
This could maybe explain one crash for CC that was seen after calling
a getter that had no compiled code.
The extra suspend check appears to only be present on arm64 amd mips64.
Test: test-art-target ART_TEST_INTERPRETER=true
Bug:
33211261
Change-Id: I70b8863f40a25a26f278ac8ef0d57e083b663e0f
Alex Light [Tue, 10 Jan 2017 15:41:24 +0000 (07:41 -0800)]
Revert "Revert "Add basic implementation of IsModifiableClass""
This reverts commit
c66c077d40db58ec239f93a9c42b9939439c85c7.
Reason for revert: Problem with preceding CL fixed.
Test: mma -j40 test-art-host
Alex Light [Tue, 10 Jan 2017 15:37:17 +0000 (15:37 +0000)]
Revert "Revert "Add basic checks for redefinition.""
This reverts commit
f9d41c1d269f3031c0a89e34fc4a04303e186958.
Reason for revert: Fixed issue of missing target skip.
Test: mma -j40 test-art-host
Change-Id: Ibe632e1f3063373950fb873e1716d0439c561297
Nicolas Geoffray [Mon, 19 Dec 2016 09:18:07 +0000 (09:18 +0000)]
Recognize getClass() in RTP.
Also always keep around the resolved field
in related HInstructions to avoid resolving it again
and again.
Test: test-art-host, 631-checker-get-class
Change-Id: I3bc6be11f3eb175c635e746006f39865947e0669
Nicolas Geoffray [Tue, 10 Jan 2017 12:10:09 +0000 (12:10 +0000)]
Merge "The HBoundsCheck should be the index input of String.charAt."
Nicolas Geoffray [Tue, 10 Jan 2017 09:00:28 +0000 (09:00 +0000)]
Merge "Revert "Add basic checks for redefinition.""
Nicolas Geoffray [Tue, 10 Jan 2017 08:58:44 +0000 (08:58 +0000)]
Revert "Add basic checks for redefinition."
Test fails.
This reverts commit
10f02fb4f026c493c69b21d4ec7c3096970357e1.
Change-Id: I21abfff0d7cd4ec840447f19819b7859b90f45b2
Nicolas Geoffray [Tue, 10 Jan 2017 08:59:54 +0000 (08:59 +0000)]
Merge "Revert "Add basic implementation of IsModifiableClass""
Nicolas Geoffray [Tue, 10 Jan 2017 08:59:31 +0000 (08:59 +0000)]
Revert "Add basic implementation of IsModifiableClass"
Built on top of a failing change.
This reverts commit
b4e51ebfa23a1cb175a6c317ac4a69228709e78f.
Change-Id: I7f4dbe22271a9c04e518bceabba12c95cad3c6f7
Treehugger Robot [Tue, 10 Jan 2017 01:52:42 +0000 (01:52 +0000)]
Merge "Add basic implementation of IsModifiableClass"
Mathieu Chartier [Tue, 10 Jan 2017 01:04:32 +0000 (01:04 +0000)]
Merge "Use relative futex timeout in SuspendAllInternal."
Alex Light [Tue, 10 Jan 2017 00:28:58 +0000 (16:28 -0800)]
Add basic implementation of IsModifiableClass
Currently we just flatly disallow some types of modifications that
might be allowed in the future.
Bug:
31684578
Test: mma -j40 test-art-host
Change-Id: Ica76d12276eb11b318da2f642591ea78766f36ad
Treehugger Robot [Tue, 10 Jan 2017 00:22:41 +0000 (00:22 +0000)]
Merge "ART: Add method modifiers functions"
Treehugger Robot [Tue, 10 Jan 2017 00:13:40 +0000 (00:13 +0000)]
Merge "Add basic checks for redefinition."