OSDN Git Service

android-x86/art.git
7 years agoMerge "Revert "Revert "Add basic implementation of IsModifiableClass"""
Alex Light [Tue, 10 Jan 2017 17:07:42 +0000 (17:07 +0000)]
Merge "Revert "Revert "Add basic implementation of IsModifiableClass"""
am: 4814f5e756

Change-Id: Ib24bf13f95c362cbf5d9d8c28c39383608057aba

7 years agoMerge "Revert "Revert "Add basic checks for redefinition."""
Alex Light [Tue, 10 Jan 2017 17:07:19 +0000 (17:07 +0000)]
Merge "Revert "Revert "Add basic checks for redefinition."""
am: 6c71cf9faf

Change-Id: Ib79a51ba61950dc702727d868cb83859f03d1798

7 years agoMerge "Revert "Revert "Add basic implementation of IsModifiableClass"""
Treehugger Robot [Tue, 10 Jan 2017 17:04:13 +0000 (17:04 +0000)]
Merge "Revert "Revert "Add basic implementation of IsModifiableClass"""

7 years agoMerge "Revert "Revert "Add basic checks for redefinition."""
Treehugger Robot [Tue, 10 Jan 2017 17:01:12 +0000 (17:01 +0000)]
Merge "Revert "Revert "Add basic checks for redefinition."""

7 years agoRevert "Revert "Add basic implementation of IsModifiableClass""
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

7 years agoRevert "Revert "Add basic checks for redefinition.""
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

7 years agoMerge "The HBoundsCheck should be the index input of String.charAt."
Nicolas Geoffray [Tue, 10 Jan 2017 12:18:33 +0000 (12:18 +0000)]
Merge "The HBoundsCheck should be the index input of String.charAt."
am: fac5c658f1

Change-Id: I17b4f972c473d14726a9ab0371d637c860cdd6e9

7 years agoMerge "The HBoundsCheck should be the index input of String.charAt."
Nicolas Geoffray [Tue, 10 Jan 2017 12:10:09 +0000 (12:10 +0000)]
Merge "The HBoundsCheck should be the index input of String.charAt."

7 years agoMerge "Revert "Add basic checks for redefinition.""
Nicolas Geoffray [Tue, 10 Jan 2017 09:04:40 +0000 (09:04 +0000)]
Merge "Revert "Add basic checks for redefinition.""
am: c38c429ef1

Change-Id: Ic414583e30bd59a2a87aa9114660f61bb8f6e1bd

7 years agoMerge "Revert "Add basic implementation of IsModifiableClass""
Nicolas Geoffray [Tue, 10 Jan 2017 09:04:22 +0000 (09:04 +0000)]
Merge "Revert "Add basic implementation of IsModifiableClass""
am: a82de09e6d

Change-Id: If86f3647e524da59d5168dee62c518e21934193d

7 years agoMerge "Revert "Add basic checks for redefinition.""
Nicolas Geoffray [Tue, 10 Jan 2017 09:00:28 +0000 (09:00 +0000)]
Merge "Revert "Add basic checks for redefinition.""

7 years agoRevert "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

7 years agoMerge "Revert "Add basic implementation of IsModifiableClass""
Nicolas Geoffray [Tue, 10 Jan 2017 08:59:54 +0000 (08:59 +0000)]
Merge "Revert "Add basic implementation of IsModifiableClass""

7 years agoRevert "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

7 years agoMerge "Add basic implementation of IsModifiableClass"
Alex Light [Tue, 10 Jan 2017 02:01:27 +0000 (02:01 +0000)]
Merge "Add basic implementation of IsModifiableClass"
am: 888e66fdfb

Change-Id: I3ce1d22ef8d9eb4b0bee782f4f6f0ed2d0336a40

7 years agoMerge "Add basic implementation of IsModifiableClass"
Treehugger Robot [Tue, 10 Jan 2017 01:52:42 +0000 (01:52 +0000)]
Merge "Add basic implementation of IsModifiableClass"

7 years agoMerge "Use relative futex timeout in SuspendAllInternal."
Mathieu Chartier [Tue, 10 Jan 2017 01:13:24 +0000 (01:13 +0000)]
Merge "Use relative futex timeout in SuspendAllInternal."
am: 99cd29fa68

Change-Id: Ib63fe3dc90863d23d0a95a9856915fd90108e95f

7 years agoMerge "Use relative futex timeout in SuspendAllInternal."
Mathieu Chartier [Tue, 10 Jan 2017 01:04:32 +0000 (01:04 +0000)]
Merge "Use relative futex timeout in SuspendAllInternal."

7 years agoAdd basic implementation of IsModifiableClass
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

7 years agoMerge "ART: Add method modifiers functions"
Andreas Gampe [Tue, 10 Jan 2017 00:28:51 +0000 (00:28 +0000)]
Merge "ART: Add method modifiers functions"
am: 6c0a92fd90

Change-Id: Ib753c915fbbeb1b68030da824eca6ea6b76a3899

7 years agoMerge "ART: Add method modifiers functions"
Treehugger Robot [Tue, 10 Jan 2017 00:22:41 +0000 (00:22 +0000)]
Merge "ART: Add method modifiers functions"

7 years agoMerge "Add basic checks for redefinition."
Alex Light [Tue, 10 Jan 2017 00:18:22 +0000 (00:18 +0000)]
Merge "Add basic checks for redefinition."
am: 5896957f4f

Change-Id: Iae3793a6c2cb6e5718bf33bea70b381eae94f7e8

7 years agoMerge "Add basic checks for redefinition."
Treehugger Robot [Tue, 10 Jan 2017 00:13:40 +0000 (00:13 +0000)]
Merge "Add basic checks for redefinition."

7 years agoMerge "Remove oat-target* rules"
Dan Willemsen [Tue, 10 Jan 2017 00:03:19 +0000 (00:03 +0000)]
Merge "Remove oat-target* rules"
am: 7399a7293b

Change-Id: I3a2f26175b360e5de9f2ae06ae71e285febed3f3

7 years agoMerge "Remove oat-target* rules"
Dan Willemsen [Mon, 9 Jan 2017 23:55:50 +0000 (23:55 +0000)]
Merge "Remove oat-target* rules"

7 years agoMerge "ART: Add method code item functions"
Andreas Gampe [Mon, 9 Jan 2017 23:01:16 +0000 (23:01 +0000)]
Merge "ART: Add method code item functions"
am: 25f38be13c

Change-Id: I7c15b662597a4a501bb31c78b37501eec48d6bf6

7 years agoMerge "ART: Add method code item functions"
Treehugger Robot [Mon, 9 Jan 2017 22:57:24 +0000 (22:57 +0000)]
Merge "ART: Add method code item functions"

7 years agoART: Add method modifiers functions
Andreas Gampe [Mon, 9 Jan 2017 22:40:25 +0000 (14:40 -0800)]
ART: Add method modifiers functions

Add support for IsMethodNative, IsMethodObsolete and IsMethodSynthetic.
Add tests.

Bug: 34163329
Test: m test-art-host-run-test-910-methods
Change-Id: I89077cfde1f37861ccb718345b753dfae1d6abe3

7 years agoAdd basic checks for redefinition.
Alex Light [Sat, 7 Jan 2017 00:21:48 +0000 (16:21 -0800)]
Add basic checks for redefinition.

This adds some checks for redefined classes. Currently it checks that
the transformed class has the same name, interfaces, and access flags.

Other checks will be added in the future.

Test: mma -j40 test-art-host
Change-Id: Iaa94e9e8688db1985d15f27acf3ddb53908a1c8b

7 years agoThe HBoundsCheck should be the index input of String.charAt.
Nicolas Geoffray [Mon, 9 Jan 2017 14:02:45 +0000 (14:02 +0000)]
The HBoundsCheck should be the index input of String.charAt.

Otherwise, the charAt call may be licmed but the bounds check
stay in the loop.

bug: 33909430
bug: 28330359
Test: 632-checker-char-at-bounds
Change-Id: I3cb749785c26ff8a016a7103899e9b19a24d5022

7 years agoART: Add method code item functions
Andreas Gampe [Mon, 9 Jan 2017 19:38:04 +0000 (11:38 -0800)]
ART: Add method code item functions

Add support for GetArgumentsSize, GetMaxLocals and GetMethodLocation
support. Add tests.

Bug: 34163329
Test: m test-art-host-run-test-910-methods
Change-Id: I14b5d02bf0513dc5a8d3f4ea17c849ab08b8554a

7 years agoMerge "ART: Change no-image run-test dependency"
Andreas Gampe [Mon, 9 Jan 2017 21:11:37 +0000 (21:11 +0000)]
Merge "ART: Change no-image run-test dependency"
am: 0d0bfae492

Change-Id: I73ef05eef66f124e9700b1ef1fc2dd6bd259227a

7 years agoMerge "ART: Change no-image run-test dependency"
Treehugger Robot [Mon, 9 Jan 2017 21:04:09 +0000 (21:04 +0000)]
Merge "ART: Change no-image run-test dependency"

7 years agoMerge "Simplify the collector names."
Hiroshi Yamauchi [Mon, 9 Jan 2017 20:33:22 +0000 (20:33 +0000)]
Merge "Simplify the collector names."
am: c6cbe3cdeb

Change-Id: Id67627117319183661438edccaca85a6d304a1cd

7 years agoMerge "ART: Add trivial implementation of extensions"
Andreas Gampe [Mon, 9 Jan 2017 20:33:06 +0000 (20:33 +0000)]
Merge "ART: Add trivial implementation of extensions"
am: eeb1ca64da

Change-Id: I5ba6dc20b0cca5849c712362c6b448554eb2049b

7 years agoMerge "Simplify the collector names."
Hiroshi Yamauchi [Mon, 9 Jan 2017 20:26:01 +0000 (20:26 +0000)]
Merge "Simplify the collector names."

7 years agoMerge "ART: Add trivial implementation of extensions"
Treehugger Robot [Mon, 9 Jan 2017 20:25:59 +0000 (20:25 +0000)]
Merge "ART: Add trivial implementation of extensions"

7 years agoART: Add trivial implementation of extensions
Andreas Gampe [Mon, 9 Jan 2017 18:50:17 +0000 (10:50 -0800)]
ART: Add trivial implementation of extensions

We do not need extension support.

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

7 years agoART: Change no-image run-test dependency
Andreas Gampe [Mon, 9 Jan 2017 18:42:25 +0000 (10:42 -0800)]
ART: Change no-image run-test dependency

Let the no-image run-test Make configuration depend on the pic
image for prebuilding. This is what the run-test/run-test-jar
configuration will use.

Test: m ART_TEST_RUN_TEST_NO_IMAGE=true test-art-host && rm $ANDROID_HOST_OUT/framework/x86*/* && m ART_TEST_RUN_TEST_NO_IMAGE=true test-art-host
Change-Id: I5c02e76d5e51a63416705a58f733135b688158c2

7 years agoMerge "ART: Add GetObjectSize and GetObjectHashCode"
Andreas Gampe [Mon, 9 Jan 2017 17:58:24 +0000 (17:58 +0000)]
Merge "ART: Add GetObjectSize and GetObjectHashCode"
am: 8cf62ddb99

Change-Id: Ia691573a79f27a4ef27e56eefe0524d49fe74495

7 years agoMerge "ART: Add GetObjectSize and GetObjectHashCode"
Treehugger Robot [Mon, 9 Jan 2017 17:53:25 +0000 (17:53 +0000)]
Merge "ART: Add GetObjectSize and GetObjectHashCode"

7 years agoUse relative futex timeout in SuspendAllInternal.
rock.yeh [Fri, 23 Dec 2016 07:11:13 +0000 (15:11 +0800)]
Use relative futex timeout in SuspendAllInternal.

This erroneously used an absolute timeout for FUTEX_WAIT, potentially
causing it to block for MUCH longer than 10 seconds.
http://man7.org/linux/man-pages/man2/futex.2.html
Note: for FUTEX_WAIT, timeout is interpreted as a relative value.

Error case:
kernel time: 15842.476344
nsec: 31694950164731
12-22 20:25:48.020043     0     0 F [15842.476344][HeapTaskDaemon:3008]
futex_wait 00000070fcdf8980 1 1 31694950164731

Normal case:
kernel time: 15842.476344
nsec: 15842476344

Block backtrace:
"HeapTaskDaemon" sysTid=3008
  #00 pc 000000000001bcac  /system/lib64/libc.so (syscall+28)
  #01 pc 0000000000461db0  /system/lib64/libart.so
(_ZN3art10ThreadList18SuspendAllInternalEPNS_6ThreadES2_S2_b+720)
  #02 pc 000000000046249c  /system/lib64/libart.so
(_ZN3art10ThreadList10SuspendAllEPKcb+532)
  #03 pc 00000000001e8fc8  /system/lib64/libart.so
(_ZN3art2gc9collector9MarkSweep9RunPhasesEv+232)
  #04 pc 00000000001e1694  /system/lib64/libart.so
(_ZN3art2gc9collector16GarbageCollector3RunENS0_7GcCauseEb+332)
  #05 pc 0000000000211500  /system/lib64/libart.so
(_ZN3art2gc4Heap22CollectGarbageInternalENS0_9collector6GcTypeENS0_7Gc
CauseEb+3048)
  #06 pc 0000000000218acc  /system/lib64/libart.so
(_ZN3art2gc4Heap12ConcurrentGCEPNS_6ThreadEb+124)
  #07 pc 000000000021fbf4  /system/lib64/libart.so
(_ZN3art2gc4Heap16ConcurrentGCTask3RunEPNS_6ThreadE+36)

This is a fix patch log and each timeout log interval of 10 seconds:
12-27 03:27:46.153744 1631 1713 E art : Unexpected time out during
suspend all.
12-27 03:27:56.154401 1631 1713 E art : Unexpected time out during
suspend all.
12-27 03:28:06.154956 1631 1713 E art : Unexpected time out during
suspend all.

7 years agoMerge "Find the classpath boundary for being assignable to an interface."
Nicolas Geoffray [Sat, 7 Jan 2017 13:52:50 +0000 (13:52 +0000)]
Merge "Find the classpath boundary for being assignable to an interface."
am: 91db41f315

Change-Id: Ib0ac9d0f6367701a6772748e41446040b07600e3

7 years agoMerge "Find the classpath boundary for being assignable to an interface."
Nicolas Geoffray [Sat, 7 Jan 2017 13:46:59 +0000 (13:46 +0000)]
Merge "Find the classpath boundary for being assignable to an interface."

7 years agoFind the classpath boundary for being assignable to an interface.
Nicolas Geoffray [Wed, 21 Dec 2016 16:54:52 +0000 (16:54 +0000)]
Find the classpath boundary for being assignable to an interface.

Test: verifier_deps_test, test-art-host

Change-Id: Icab3a5a9f94f6a38fa8ef320f93ac14691a732d3

7 years agoRemove oat-target* rules
Dan Willemsen [Sat, 7 Jan 2017 07:14:05 +0000 (23:14 -0800)]
Remove oat-target* rules

This really only did anything for the 'mm' case, and was broken:

* Didn't find any apps (needed to search app/*/*.apk)
* Attempted to build framework/pm.odex instead of
  framework/oat/arm/pm.odex.
* Caused Kati to re-read all the makefiles any time the contents of
  system/app or system/framework changed.

Test: m -j installclean; m -j a (repeat until kati doesn't regenerate)
      m -j pmlib; m -j a (doesn't regenerate)
Change-Id: Icca6556f0de952b8fbc740433272766a1ce5cdc9

7 years agoART: Add GetObjectSize and GetObjectHashCode
Andreas Gampe [Sat, 7 Jan 2017 02:00:20 +0000 (18:00 -0800)]
ART: Add GetObjectSize and GetObjectHashCode

Add support for these two functions. Add tests.

Bug: 31684578
Test: m test-art-host-run-test-920-objects
Change-Id: If5dfb5aedddee47e5d739b0c56c7d264ba6e2d51

7 years agoMerge "Revert "Revert "Create test for field access in obsolete methods."""
Alex Light [Sat, 7 Jan 2017 02:26:39 +0000 (02:26 +0000)]
Merge "Revert "Revert "Create test for field access in obsolete methods."""
am: dd5a42753d

Change-Id: I649bab26adb56dd2b1cf8b1dc85de8147b38a4c1

7 years agoMerge "Revert "Revert "Create test for field access in obsolete methods."""
Treehugger Robot [Sat, 7 Jan 2017 02:20:28 +0000 (02:20 +0000)]
Merge "Revert "Revert "Create test for field access in obsolete methods."""

7 years agoMerge "Make GetErrorName allocate the output buffer."
Alex Light [Sat, 7 Jan 2017 02:14:09 +0000 (02:14 +0000)]
Merge "Make GetErrorName allocate the output buffer."
am: d4abdaf889

Change-Id: I81e6521850ccfdd5371af3c4dbcb2d49b789c073

7 years agoMerge "Make GetErrorName allocate the output buffer."
Treehugger Robot [Sat, 7 Jan 2017 02:07:08 +0000 (02:07 +0000)]
Merge "Make GetErrorName allocate the output buffer."

7 years agoMerge "ART: Add GetClassLoader"
Andreas Gampe [Sat, 7 Jan 2017 02:02:08 +0000 (02:02 +0000)]
Merge "ART: Add GetClassLoader"
am: 0bf5ddc601

Change-Id: I893925bd8e30631cd711ca891940189320b325b5

7 years agoMerge "ART: Add GetClassLoader"
Treehugger Robot [Sat, 7 Jan 2017 01:55:10 +0000 (01:55 +0000)]
Merge "ART: Add GetClassLoader"

7 years agoART: Add GetClassLoader
Andreas Gampe [Fri, 6 Jan 2017 23:50:55 +0000 (15:50 -0800)]
ART: Add GetClassLoader

Add support for GetClassLoader. Add a test.

Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: I629ec2a1f4843bc3b28e40111805e250be44d993

7 years agoMerge "ART: Add GetImplementedInterfaces"
Andreas Gampe [Fri, 6 Jan 2017 23:56:59 +0000 (23:56 +0000)]
Merge "ART: Add GetImplementedInterfaces"
am: 2d02f857d3

Change-Id: Id1d25346c1c01fcc49716e6762637a5af4ccf416

7 years agoMerge "ART: Add GetImplementedInterfaces"
Andreas Gampe [Fri, 6 Jan 2017 23:49:35 +0000 (23:49 +0000)]
Merge "ART: Add GetImplementedInterfaces"

7 years agoMerge changes Ia14276d3,I7f063806
Andreas Gampe [Fri, 6 Jan 2017 23:09:35 +0000 (23:09 +0000)]
Merge changes Ia14276d3,I7f063806
am: 1b2f6c36c7

Change-Id: Ib274eaefc1e46db03bca7dbe03bc6d99b30746eb

7 years agoART: Add GetClassModifiers
Andreas Gampe [Fri, 6 Jan 2017 23:09:34 +0000 (23:09 +0000)]
ART: Add GetClassModifiers
am: 64013e5b5a

Change-Id: I299317fb59000b673fbfae6744faecb61d6e90d3

7 years agoART: Add GetClassMethods
Andreas Gampe [Fri, 6 Jan 2017 23:09:25 +0000 (23:09 +0000)]
ART: Add GetClassMethods
am: 18fee4d8e1

Change-Id: Ifadc60233ce0373a88cf043e02365e0db9174c53

7 years agoMerge changes Ia14276d3,I7f063806
Andreas Gampe [Fri, 6 Jan 2017 23:03:37 +0000 (23:03 +0000)]
Merge changes Ia14276d3,I7f063806

* changes:
  ART: Add GetClassModifiers
  ART: Add GetClassMethods

7 years agoSimplify the collector names.
Hiroshi Yamauchi [Fri, 6 Jan 2017 23:03:26 +0000 (15:03 -0800)]
Simplify the collector names.

To make it easier to distinguish the collector names in the GC logs.

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

7 years agoMake GetErrorName allocate the output buffer.
Alex Light [Fri, 6 Jan 2017 22:44:23 +0000 (14:44 -0800)]
Make GetErrorName allocate the output buffer.

Previously we were simply returning a static pointer which isn't
allowed by the spec.

Test: mma -j40 test-art-host
Change-Id: I84cfb81e58d479c7c0d5ee352f5b005183895c82

7 years agoRevert "Revert "Create test for field access in obsolete methods.""
Alex Light [Fri, 6 Jan 2017 16:58:19 +0000 (16:58 +0000)]
Revert "Revert "Create test for field access in obsolete methods.""

This reverts commit b710a0e0e32193d345a4bfeb93649de2503489be.

Reason for revert: Fixed test issue

Test: ART_TEST_RUN_TEST_NDEBUG=true mma -j40 test-art-host

Change-Id: I30b758a61afa0eb132af239e8071ea79eab58ac1

7 years agoART: Add GetImplementedInterfaces
Andreas Gampe [Fri, 6 Jan 2017 22:20:39 +0000 (14:20 -0800)]
ART: Add GetImplementedInterfaces

Add support for GetImplementedInterfaces. Add a test. Add cleanup
to some existing tests.

Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: Ic75bf3bba3b568232178d8525501122826b5a430

7 years agoMerge "Also use ThreadList::Dump() in empty checkpoint timeout."
Hiroshi Yamauchi [Fri, 6 Jan 2017 21:13:46 +0000 (21:13 +0000)]
Merge "Also use ThreadList::Dump() in empty checkpoint timeout."
am: 2c5315bf01

Change-Id: If2fe9ff6cb276e3fa28d2dc57ced65d40fab4fa0

7 years agoART: Add GetClassModifiers
Andreas Gampe [Fri, 6 Jan 2017 21:07:19 +0000 (13:07 -0800)]
ART: Add GetClassModifiers

Add support for GetClassModifiers. Add a test.

Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: Ia14276d3139503ce35f7684bd846b371e9eafa25

7 years agoMerge "Also use ThreadList::Dump() in empty checkpoint timeout."
Treehugger Robot [Fri, 6 Jan 2017 21:07:06 +0000 (21:07 +0000)]
Merge "Also use ThreadList::Dump() in empty checkpoint timeout."

7 years agoMerge "ART: Add GetClassStatus"
Andreas Gampe [Fri, 6 Jan 2017 20:04:20 +0000 (20:04 +0000)]
Merge "ART: Add GetClassStatus"
am: 96bfa96101

Change-Id: I09d57156db6cbae0cc649e15074e0be6d94d7dfb

7 years agoART: Add GetClassMethods
Andreas Gampe [Fri, 6 Jan 2017 19:36:35 +0000 (11:36 -0800)]
ART: Add GetClassMethods

Add GetClassMethods support. Add a test.

Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: I7f063806671db5a5a69f7064e61f950b246f0b86

7 years agoMerge "ART: Add GetClassStatus"
Treehugger Robot [Fri, 6 Jan 2017 19:58:30 +0000 (19:58 +0000)]
Merge "ART: Add GetClassStatus"

7 years agoMerge changes Id7509ef1,Id33b8c54,I2f9e5c62
Andreas Gampe [Fri, 6 Jan 2017 19:06:00 +0000 (19:06 +0000)]
Merge changes Id7509ef1,Id33b8c54,I2f9e5c62
am: ba16a82138

Change-Id: I7b395996ba609af0edc0ded00c38ff37a26df569

7 years agoART: Add GetClassFields support
Andreas Gampe [Fri, 6 Jan 2017 19:05:58 +0000 (19:05 +0000)]
ART: Add GetClassFields support
am: ac58727f26

Change-Id: I7cce7480ac88da2e0c914cdaf7f6f3194f35c89f

7 years agoART: Add Field methods
Andreas Gampe [Fri, 6 Jan 2017 19:05:47 +0000 (19:05 +0000)]
ART: Add Field methods
am: ab2f0d0395

Change-Id: Ifdfd28466aab620d433599768076bc6ef72e50e6

7 years agoART: Add IsInterface and IsArrayClass support
Andreas Gampe [Fri, 6 Jan 2017 19:05:39 +0000 (19:05 +0000)]
ART: Add IsInterface and IsArrayClass support
am: 4fd66ecf2e

Change-Id: I1cfe905046369ffc161ee2e6997ce832242484c1

7 years agoMerge changes Id7509ef1,Id33b8c54,I2f9e5c62
Treehugger Robot [Fri, 6 Jan 2017 18:59:54 +0000 (18:59 +0000)]
Merge changes Id7509ef1,Id33b8c54,I2f9e5c62

* changes:
  ART: Add GetClassFields support
  ART: Add Field methods
  ART: Add IsInterface and IsArrayClass support

7 years agoAlso use ThreadList::Dump() in empty checkpoint timeout.
Hiroshi Yamauchi [Fri, 6 Jan 2017 18:45:17 +0000 (10:45 -0800)]
Also use ThreadList::Dump() in empty checkpoint timeout.

After dumping runnable threading that haven't responded to the empty
checkpoint request, use ThreadList::Dump() to try to dump the other
threads, noting that it may get stuck, but it's the end of logging
anyway. This should help diagnose the timeout better as we would be
able to see more threads.

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

7 years agoMerge "Avoid using ThreadList::Dump() in empty checkpoint timeout."
Hiroshi Yamauchi [Fri, 6 Jan 2017 18:38:36 +0000 (18:38 +0000)]
Merge "Avoid using ThreadList::Dump() in empty checkpoint timeout."
am: 48ff5b9aec

Change-Id: If65a49ee08edc8539c10a63dbc9a3bf6d660c624

7 years agoMerge "Avoid using ThreadList::Dump() in empty checkpoint timeout."
Hiroshi Yamauchi [Fri, 6 Jan 2017 18:32:19 +0000 (18:32 +0000)]
Merge "Avoid using ThreadList::Dump() in empty checkpoint timeout."

7 years agoART: Add GetClassStatus
Andreas Gampe [Fri, 6 Jan 2017 17:12:49 +0000 (09:12 -0800)]
ART: Add GetClassStatus

Add support for GetClassStatus. Add a test.

Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: Id8a3c3f4e4855a0c9bd87976a1cc0fad2db13f25

7 years agoART: Add GetClassFields support
Andreas Gampe [Thu, 5 Jan 2017 23:21:34 +0000 (15:21 -0800)]
ART: Add GetClassFields support

Add GetClassFields support. Add a test.

Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: Id7509ef10ec9c19b54b7db8637729556b91273e5

7 years agoART: Add Field methods
Andreas Gampe [Fri, 6 Jan 2017 01:23:45 +0000 (17:23 -0800)]
ART: Add Field methods

Add GetFieldName, GetFieldDeclaringClass, GetFieldModifiers
and IsFieldSynthetic support. Add tests.

Bug: 34113943
Test: m test-art-host-run-test-918-fields
Change-Id: Id33b8c54c250f73f0658ec45ccb2b55eccb37623

7 years agoART: Add IsInterface and IsArrayClass support
Andreas Gampe [Thu, 5 Jan 2017 22:42:13 +0000 (14:42 -0800)]
ART: Add IsInterface and IsArrayClass support

Add support for these two required calls. Add a test.

Bug: 31684578
Test: m test-art-host-run-test-912-classes
Change-Id: I2f9e5c62dd4c3d7f29aaf3dd08f1297aa3b2fd8b

7 years agoMerge "Remove the IsInDexCache flag from HLoadString."
Vladimir Marko [Fri, 6 Jan 2017 16:24:57 +0000 (16:24 +0000)]
Merge "Remove the IsInDexCache flag from HLoadString."
am: 776ba76275

Change-Id: I3c1178a66c1cfbfca1b98cf724f3f24acaad2eca

7 years agoMerge "Remove the IsInDexCache flag from HLoadString."
Treehugger Robot [Fri, 6 Jan 2017 16:19:51 +0000 (16:19 +0000)]
Merge "Remove the IsInDexCache flag from HLoadString."

7 years agoRemove the IsInDexCache flag from HLoadString.
Vladimir Marko [Fri, 6 Jan 2017 14:43:11 +0000 (14:43 +0000)]
Remove the IsInDexCache flag from HLoadString.

This flag was obsolete and always false.

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

7 years agoMerge "ART: Make method handle runtime code callable from compiler."
Orion Hodson [Fri, 6 Jan 2017 09:11:29 +0000 (09:11 +0000)]
Merge "ART: Make method handle runtime code callable from compiler."
am: 6d2741f18b

Change-Id: I17ff895b0eafe68599f27d1872a7f16afee96027

7 years agoMerge "Remove bogus DCHECK."
Nicolas Geoffray [Fri, 6 Jan 2017 09:07:52 +0000 (09:07 +0000)]
Merge "Remove bogus DCHECK."
am: fe150d9821

Change-Id: Ic849a5672989d9e0d411f22e4c0e02375926ab63

7 years agoMerge "ARM: VIXL32: Fix crash in Exchange for stack slots."
Nicolas Geoffray [Fri, 6 Jan 2017 09:07:31 +0000 (09:07 +0000)]
Merge "ARM: VIXL32: Fix crash in Exchange for stack slots."
am: a79003958e

Change-Id: I376622aeffbe9641bf86f0e5c557bf6739f2fb55

7 years agoMerge "ART: Make method handle runtime code callable from compiler."
Orion Hodson [Fri, 6 Jan 2017 09:04:47 +0000 (09:04 +0000)]
Merge "ART: Make method handle runtime code callable from compiler."

7 years agoMerge "Remove bogus DCHECK."
Treehugger Robot [Fri, 6 Jan 2017 09:04:18 +0000 (09:04 +0000)]
Merge "Remove bogus DCHECK."

7 years agoMerge "ARM: VIXL32: Fix crash in Exchange for stack slots."
Nicolas Geoffray [Fri, 6 Jan 2017 09:03:36 +0000 (09:03 +0000)]
Merge "ARM: VIXL32: Fix crash in Exchange for stack slots."

7 years agoMerge "Actually record arrays in classpath."
Nicolas Geoffray [Fri, 6 Jan 2017 09:03:27 +0000 (09:03 +0000)]
Merge "Actually record arrays in classpath."
am: a1d0d63614

Change-Id: Iad707649501c3bcb9bbe591b147666f130345fc4

7 years agoMerge "Actually record arrays in classpath."
Nicolas Geoffray [Fri, 6 Jan 2017 09:00:15 +0000 (09:00 +0000)]
Merge "Actually record arrays in classpath."

7 years agoART: Make method handle runtime code callable from compiler.
Orion Hodson [Wed, 7 Dec 2016 11:35:37 +0000 (11:35 +0000)]
ART: Make method handle runtime code callable from compiler.

Most of this change is moving the existing method handles code, but it
also introduces a new header file, common_dex_operations.h, that has
some operations taken from interpreter_common.{h,cc} that are also used
by method handles (perform call, set field, get field).

Bug: 30550796
Test: m test-art-host
Change-Id: I2235e13770a5562950f2767f65a25ca273479150

7 years agoMerge "Prevent moving GC from running during redefinition."
Alex Light [Fri, 6 Jan 2017 04:06:39 +0000 (04:06 +0000)]
Merge "Prevent moving GC from running during redefinition."
am: b51edffe1c

Change-Id: I490c0709510a8ced17316baccc4bae9b7aad72ca

7 years agoMerge "Prevent moving GC from running during redefinition."
Treehugger Robot [Fri, 6 Jan 2017 03:59:24 +0000 (03:59 +0000)]
Merge "Prevent moving GC from running during redefinition."

7 years agoPrevent moving GC from running during redefinition.
Alex Light [Fri, 6 Jan 2017 01:53:00 +0000 (17:53 -0800)]
Prevent moving GC from running during redefinition.

This could cause a deadlock during deoptimization.

Test: ART_USE_READ_BARRIER=true ART_READ_BARRIER_TYPE=TABLELOOKUP mma -j40 test-art-host
Change-Id: I57e4f1a50709bf4a1817227913e61f3ef434d04a

7 years agoAvoid using ThreadList::Dump() in empty checkpoint timeout.
Hiroshi Yamauchi [Thu, 5 Jan 2017 04:32:57 +0000 (20:32 -0800)]
Avoid using ThreadList::Dump() in empty checkpoint timeout.

ThreadList::Dump() that uses a checkpoint to dump threads may get
stuck when an empty checkpoint gets stuck and isn't useful when
debugging an empty checkpoint timeout. Instead, directly use
Thread::Dump() for each runnable thread that isn't responding to an
empty checkpoint request.

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

7 years agoMerge "Revert "Revert "Cleanup jvmti tests"""
Alex Light [Fri, 6 Jan 2017 00:50:23 +0000 (00:50 +0000)]
Merge "Revert "Revert "Cleanup jvmti tests"""
am: 9890a5b579

Change-Id: I44a27f4655bf378c007d7f8814d251e3d04cce77

7 years agoMerge "Revert "Revert "Cleanup jvmti tests"""
Alex Light [Fri, 6 Jan 2017 00:46:17 +0000 (00:46 +0000)]
Merge "Revert "Revert "Cleanup jvmti tests"""