History log of /libcore/libart/src/main/java/java/lang/Class.java
Revision Date Author Comments
793b9ef91876cb7bea31ddf74f110ac45302f1dd 23-Apr-2014 Jeff Hao <jeffhao@google.com> Fix Class.newInstance to not wrap its exceptions.

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
96e2e4faf806aa22ca205354c16b04288d51ddbf 01-Apr-2014 Jeff Hao <jeffhao@google.com> Fix reflection access checks for app compatibility in libcore.

Libcore side of this change. Corresponding art change here:
https://android-review.googlesource.com/#/c/89620/

Change-Id: I00610421438155fc60d6780b06581b874419ca2b
0a21bb40b8ade2e932ef7608bc861f183bfe594d 26-Mar-2014 Jeff Hao <jeffhao@google.com> Add access checks to Method and Field reflection.

Libcore side of this change. Has a corresponding art change.

Bug: 13620925
Change-Id: I68f726af5f2b5a79c9ffd6f2c76a0b3f2600ca9d
3b8c8cba4defe9049aca66d505e509395e5485f5 21-Nov-2013 Narayan Kamath <narayan@google.com> Fix the art version of getGenericSuperclass.

art version of:
https://android-review.googlesource.com/#/c/70325

bug: 10918616
Change-Id: Id4e221137410027757a5353476d78290f73d7ad8
(cherry picked from commit 34ab628b61321c17b5c1406656e7b352ab0a76a2)
96caa8ec10a5d64d804a9ed3897c9a34c8626239 21-Oct-2013 Brian Carlstrom <bdc@google.com> Fix Class.getEnclosingClass for anonymous classes declared in <clinit> methods

(cherry picked from commit b9be313bdc257089534f738ff8e1e5ad4de3d25e)

Bug: 11245138
Related bug: https://code.google.com/p/android/issues/detail?id=61003

Change-Id: I5cc1db6ca6628b845409d7a6ea864da5f625fdc3
59351c4e69b0e917d1f60e7ae32e76615150690c 29-Oct-2013 Jeff Hao <jeffhao@google.com> Libcore support for Interface Method Tables (IMT).

(cherry picked from commit 500f98f9696baad7ba16bd5ad65e8caa475ebfe7)

Change-Id: I0d611ba7b24f2a990a4a2958939b0f6d739d3c14
4583b2cee94e9582a6c7a1d715f4896073d03bad 13-Oct-2013 Brian Carlstrom <bdc@google.com> Fix Class.getDeclaringClass bug for ART

Bug: https://code.google.com/p/android/issues/detail?id=61003
Change-Id: Ia2cc774a9239ecd64f8039b2ca9e27593126e2cf
a6e22fc9b70ebe39abd716ce37450bda935c0fb8 19-Sep-2013 Ian Rogers <irogers@google.com> Avoid computing class def indices.

Bug: 10244719
Also tidy AnnotationAccess.

(cherry-picked from 8b2c0b9abc3f520495f4387ea040132ba85cae69)
Change-Id: I6ec8fd4e36b428d7e16e01d98b7bebc143fac8c3

Conflicts:
libdvm/src/main/java/java/lang/Class.java
98430d0d75f4cfd40614b77debeb3c8d0abf40df 15-Sep-2013 Ian Rogers <irogers@google.com> Fix getGenericInterfaces for the no annotation case.

Bug: 10244719
(cherry-picked from 43111aab512b1a7c7c8095a7135a7ae2754ea5bd)
Change-Id: I758d32e9cffcabf771e6f5f86ffa2666c8e1cb02

Conflicts:
libdvm/src/main/java/java/lang/Class.java
d4ec55c4e1acc3c3df937facbd367aff6618536c 07-Sep-2013 Ian Rogers <irogers@google.com> Lazier annotation signature parsing.

Bug: 10244719.
Also, make wider use of empty arrays.
Also, use named inner classes to aid profiling.
Remove caching as the empty result will be fast.
Porting the ART changes to DVM, to avoid the caching, results in bringing
in a bunch of other ART clean-up.
TODO, avoid modified-UTF8 to String conversions by Dex.

Change-Id: I051b6e34b5a4e7a7f1383461a799755947a5ba36

Conflicts:
libdvm/src/main/java/java/lang/Class.java
71dc4f7d4829335f7aba5414b43d16cd316ba22f 31-Jul-2013 Brian Carlstrom <bdc@google.com> Refactor ART java.lang.reflect implementation

Bug: 10014286.

(cherry picked from commit 1222a700a25956b0e3634731160017f0d3aa0585)

Change-Id: Ic5672489f6c028d47e6c2a499d6a2bbdd5cc4e4c
d3e311496e0b08acd959c3ffa31d9930a71bae19 24-Jul-2013 Ian Rogers <irogers@google.com> Improve the performance of reflective operations.

Common dex index lookups require a number of different types to be constructed,
implement short-cuts that avoid the intermediate data types.
Refactor reflective operations to use dex methods that don't require temporary
objects.
Note: this change adds an empty short array to Dex, this code can't appear in
libcore.util as Dex doesn't always come with libcore.util.

Bug: 9968234

(cherry picked from commit 381db8de0ac5df124c7f482bf4be9d5756bf3ca4)

Change-Id: I9122a3f01b4f41b07a84aff768193c092e29698c
6a51140fd83dc16867ca38a4ca2e47cbbf090dfd 20-Jul-2013 Ian Rogers <irogers@google.com> Restructure Class.getDeclaredMethodInternal.

Prefer virtual over direct methods when searching for a specific method.
For direct methods, check they are method rather than constructors early
(cheap test) and cast to Method as check-cast ellision can remove.

Motivation, android.widget.RemoteViews is using Class.getMethod and showing
as hot in the calendar launcher widget.

Change-Id: Id12fe9549c8f6626fd1abf0494d81aee32e0bc7a
78728ebce868f5949739e6e204e3e0fbf0356f8d 15-Jun-2013 Elliott Hughes <enh@google.com> Fix Class.getModifiers for arrays of inner classes.

Bug: https://code.google.com/p/android/issues/detail?id=56267

(cherry picked from commit 8aa5892195543e80b1c4eb10d8764268927cc1be)

Change-Id: I3be5433b04607e5f41e7c68f03cfabc166b56d54
2cf03dc15c40b92634ff606694af5a6e9aa4db09 22-May-2013 Brian Carlstrom <bdc@google.com> Adding libart support to libcore

Change-Id: I86febf08eacf42bb4b2f06dbd51c5b2d5b25c9fb