| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, waitForFinalization would hold whatever object was being
finalized live for MAX_FINALIZE_NANOS even though the finalizer on
this object was run much earlier. This caused a test to be flaky since
it was assuming that the JNI weak global reference of a recently
finalized object wouldn't be held live.
Bug: 17305633
(cherry picked from commit 6ba680664fa14a547543a8c63708543ea8072680)
Change-Id: Ide60db55190a3764c16e4919a7c71a113cbf3968
|
|\
| |
| |
| | |
anymore."
|
| |
| |
| |
| |
| | |
Bug: 16236588
Change-Id: Icebdf0febee72a5dbbebc1906b069d52bf756e80
|
|/
|
|
|
|
|
|
|
| |
Reference intrinsic was incorrectly inlining PhantomReference.get().
We get around this by adding a layer of indirection. Reference.get()
now calls getReferent() which is intrinsified and inlined.
Bug: 17429865
Change-Id: I39803506c7bd800500ca3632a6cdf1077e382bff
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is an Optimization to reduce how often we call
System.identityHashCode. If the lockword is set to the hash code
state then we simply return this value. Otherwise, we use
System.identityHashCode.
Maps launch exclusive time spent in System.identityHashCode:
Before: 4.5%
After: 2.4%
Bug: 16828525
(cherry picked from commit 6917aebf2eb26c2b003a72d09c1c5bb6310160b0)
Change-Id: I0ccad53cb5f8f4f27fe11725a91ab45a117452a3
|
|
|
|
| |
Change-Id: I0620c33972e061ba18504579430d2ac02656d17a
|
|
|
|
|
|
|
|
| |
The new behavior is to throw a SecurityException.
Bug: 16866726
Bug: https://code.google.com/p/android-developer-preview/issues/detail?id=561
Change-Id: I1fa0d9617f8b25bf4e93a52c4aed22f0be27555b
|
|
|
|
|
|
|
|
| |
Bug: 16828157
(cherry picked from commit fe51ef7c7974e33b2ee20457aa16d6aef6cf3485)
Change-Id: I271571a7501b9bce03ad1c09e09b5bfe4ffc422b
|
|
|
|
|
|
|
|
|
| |
This is required to implement some aspects of the multi
lib installation process.
(cherry picked from commit 32f32721e65c93a3aaf8a792b7742aabe7e29e7e)
Change-Id: I10fedcbee1318d132d2ac517ddf8cdca02a51cda
|
|
|
|
|
|
|
| |
Added static field in Reference class to hold slow path flag and added
benchmark to test Reference.get() performance.
Change-Id: I13ad65a356fe4e104d8d83980694dc2740d7d039
|
|
|
|
| |
Change-Id: Icb2e2b075615fdf384c49da85145c2b5cb6f38c5
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Our use of vague terms like "negative" and "positive" led VM engineers to
assume they had more leeway than they actually do.
While we're here, let's fix all the ambiguous use of 'character' and add a
warning and link to Collator anywhere the non-standard (and
non-locale-specific) case folding is used.
Change-Id: I0a0fb2a493861d32fac0bc4e28ae9634f8ac342c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As E extends Enum<E>, it is safe to cast the comparable object to
Enum<?> as it should not throw any exceptions. When it is cast, the
ordinal value can be accessed directly. Doing so would be preferred as
either both the variables this.ordinal and o.ordinal should be used or
the methods this.ordinal() and o.ordinal() should be used without
mixing them together.
Change-Id: I7c4e93fdf35b0bf2949738a91c0855d9a52e5c13
|
|/
|
|
|
| |
Bug: 14298175
Change-Id: I3f36ca6259a28bf9beae02bf30ba365eb263e3c1
|
|
|
|
|
|
|
|
|
|
| |
Adds methods vmInstructionSet, is64Bit and isCheckJniEnabled to the VMRuntime
class. They are used by DdmHandleHello class in the framework to report new
information about the runtime to DDMS.
Bug: 14888999
Bug: 14888124
Change-Id: I8a2d3f22f84a093be2fbc74464af6aa7b2a2bebb
|
|
|
|
|
|
|
|
| |
This is a companion CL for art/ change
"Move quick frame info to OatQuickMethodHeader."
https://android-review.googlesource.com/93241
Change-Id: I07e2f4c756a0738433d9341847410b612001c5b6
|
|
|
|
|
|
|
|
|
| |
This enables us to have mostly concurrent reference processing in the
GC. Reference.get() may block if references are being processed.
Bug: 14381653
Change-Id: I7cf6ef34b08f804897c8e6d5e9e6ae94420dc489
|
|
|
|
|
|
|
|
|
|
|
| |
Finalizers are now added from native code in the allocation code
path. This is an optimization since some of the entrypoints aren't
used for finalizable objects and therefore we can eliminate the
check.
Bug: 14078487
Change-Id: I7edba4c884abec23678e59eb7480abc344f1ffa8
|
|
|
|
|
|
|
|
|
|
|
| |
Bridges the android ABI lists (TARGET_CPU_ABI, TARGET_CPU_ABI2
from the BoardConfig and android.os.Build.CPU_ABI) and the
runtime concept of an instruction set used for compilation
(the --instruction-set to dex2oat and so on).
(cherry picked from commit 6174cff204aa36e622e9bd93569b4a1eb2ed222c)
Change-Id: Id2eaa60f0546d6c88770f8981adac2a896ed7d49
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is a companion CL for art/ change
"Move mapping table and vmap table offsets to OatMethodHeader."
https://android-review.googlesource.com/90699
Change-Id: Ibc46e2d6f0f8dce5f1ec6acbefea3c80f034cbd2
|
|/
|
|
|
|
|
|
|
| |
Unlike Constructor.newInstance, Class.newInstance should not wrap
exceptions it throws.
Bug: https://code.google.com/p/android/issues/detail?id=68620
Change-Id: I3b89e8417d770b1908fea585062e62d5de292331
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Libcore side of this change. Corresponding art change here:
https://android-review.googlesource.com/#/c/89620/
Change-Id: I00610421438155fc60d6780b06581b874419ca2b
|
|/
|
|
|
| |
Bug: 12687968
Change-Id: I9161cb06dda2e9113476f2f400cac70e01726c58
|
|
|
|
|
|
|
| |
Libcore side of this change. Has a corresponding art change.
Bug: 13620925
Change-Id: I68f726af5f2b5a79c9ffd6f2c76a0b3f2600ca9d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add isDexOptNeededInternal() to the DexFile class. This is like
isDexOptNeeded() except takes additional arguments that are used
to determine whether a profile has changed of not.
The isDexOptNeeded() method is part of the exported API and cannot
be changed. The new method is not part of the API.
Also add additional argument to the registerAppInfo() methods (the
package name). This is used to determine the profile filename.
Bug: 12877748
Change-Id: If862cc5d20fae4b9d46c488f401cda6d433b4a57
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unpadded array allocations avoid unused bytes following arrays. API conventions
follow those of newNonMovableArray.
Dalvik implementation assume dlmalloc allocation properties, ART implementation
is handled by resizing the array post-allocation:
https://android-review.googlesource.com/83670
Add VMRuntimeTest to check the properties of the array allocation routines.
Change java.lang.reflect.Array.newInstance to compare more probable array types
before less probable ones.
Bug: 13028925.
Change-Id: Icf6bfb1aa5ad4faa062b393082c689b6118a84b5
|
|
|
|
|
|
| |
This feature is disabled by default.
Change-Id: Ia8db311c1bc994737964121700a70b33920ddc4a
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add documentation to cover the fact that wait()
and join() treat zero-length timeouts as "wait indefinitely".
Improved documentation for when a thread is already
interrupted when the various sleep/join/wait calls are made,
and what happens to the interrupted state.
Bug: 12931322
Change-Id: I4e8353cb556ff335df187fd5efa1f42c9b196cd6
|
| |
| |
| |
| | |
Change-Id: I0e2509a1a46c2aa937e4a45cabefb4998a8ed7f4
|
|/
|
|
|
| |
Bug: 12929305
Change-Id: I3061c3345c68de8bcf438e6935446b4f7cd76001
|
|
|
|
|
|
|
| |
The libcore portion of:
https://android-review.googlesource.com/#/c/80375/
Change-Id: Ic974e92fbb98e184b9cb01ea82b0bfba03374f79
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I01f099b26bbfa04cc211e31cd0444400d0a00395
|
|/
|
|
|
|
|
|
|
| |
This adds the native function registerAppInfo() to the VMRuntime
object. It is called by the ActivityThread in the framework
to tell the runtime about application info.
Bug: 11539952
Change-Id: I3958a40af5afd513f943093fb483885c2b6b119e
|
|
|
|
|
|
|
|
|
| |
Used to know when to do trimming and will be used for knowing when
to do compaction.
Bug: 8981901
Change-Id: I0f715f8c9dfc5f7399b54261fe08410449fef10e
|
|
|
|
|
|
|
|
|
|
|
| |
Use a List<Class<?>> as the cache key instead, but
dedup and check for nulls in the list using a HashSet
instead. This will improve performance for large
lists of interfaces.
bug: 10316383
Change-Id: Id0c36a731e6e3cb39bf36c083180c0c4da5c2dd4
(cherry picked from commit 6074af533f57a93e1b8e1ab63dce6a264a4d5dae)
|
|
|
|
|
|
|
|
| |
art version of:
https://android-review.googlesource.com/#/c/70325
bug: 10918616
Change-Id: Id4e221137410027757a5353476d78290f73d7ad8
(cherry picked from commit 34ab628b61321c17b5c1406656e7b352ab0a76a2)
|
|
|
|
|
|
|
|
|
| |
(cherry picked from commit b9be313bdc257089534f738ff8e1e5ad4de3d25e)
Bug: 11245138
Related bug: https://code.google.com/p/android/issues/detail?id=61003
Change-Id: I5cc1db6ca6628b845409d7a6ea864da5f625fdc3
|
|
|
|
|
|
| |
(cherry picked from commit 500f98f9696baad7ba16bd5ad65e8caa475ebfe7)
Change-Id: I0d611ba7b24f2a990a4a2958939b0f6d739d3c14
|
|
|
|
|
|
|
| |
The goal is to enable libcore to adjust its behavior based on the
target SDK version / API Level of the app.
Change-Id: I60f1febc1f8ddf2a97925a48ddf232508d5c44f9
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 11045348
Change-Id: Idbd6ad284964035a3fcf1ec360a3490f32f99d42
|
|/
|
| |
Change-Id: I901d818e96af0b9240808bb70ccbe8a17854d485
|
|
|
|
|
| |
Bug: https://code.google.com/p/android/issues/detail?id=61003
Change-Id: Ia2cc774a9239ecd64f8039b2ca9e27593126e2cf
|
|\
| |
| |
| |
| | |
* commit '83c419d78e40c8bccc07ba3f118667b8bb958d30':
Preload DexCaches
|
| |
| |
| |
| |
| | |
Bug: 11045348
Change-Id: I3025d8f95e157af602b0ae91d974cb5e6678fb3d
|