7c8aa8357196781c811a73d2eb66aaaa1681ce36 |
|
06-Jun-2016 |
Jeff Hao <jeffhao@google.com> |
Wrap certain exception types when loading an erroneous class. Bug: 28787733 Change-Id: I22e1e4339a95706a0fb9c1474b360e9bde232539
|
942dc298d7af3e60fe40c69b4b416ef144e5c723 |
|
24-Feb-2016 |
Dimitry Ivanov <dimitry@google.com> |
Simplify LoadNativeLibrary() With ApplicationLoaders.getClassLoader() ensuring linker-namespace initialization there is no longer need for LoadNativeLibrary() and callers to pass along namespace-specific information to art. This change removes unnecessary parameters of such calls. Bug: http://b/27189432 Bug: http://b/22548808 Change-Id: I341d35a2d5195e634678b352f4361f8712984b69 (cherry picked from commit c286a7fcd8a446c086127bf03fd07f904e017336)
|
c286a7fcd8a446c086127bf03fd07f904e017336 |
|
24-Feb-2016 |
Dimitry Ivanov <dimitry@google.com> |
Simplify LoadNativeLibrary() With ApplicationLoaders.getClassLoader() ensuring linker-namespace initialization there is no longer need for LoadNativeLibrary() and callers to pass along namespace-specific information to art. This change removes unnecessary parameters of such calls. Bug: http://b/27189432 Bug: http://b/22548808 Change-Id: I341d35a2d5195e634678b352f4361f8712984b69
|
fbc31087932a65e036a153afab3049dc5298656a |
|
24-Jan-2016 |
Mathieu Chartier <mathieuc@google.com> |
Revert "Revert "Load app images"" This reverts commit 1bc977cf2f8199311a97f2ba9431a184540e3e9c. Bug: 22858531 Change-Id: Ide00bf3a73a02cba3bb364177204ad1b13f70295
|
1bc977cf2f8199311a97f2ba9431a184540e3e9c |
|
23-Jan-2016 |
Nicolas Geoffray <ngeoffray@google.com> |
Revert "Load app images" Fails when a method is duplicated (see test 097-duplicate-method) Bug: 22858531 This reverts commit f7fd970244f143b1abb956e29794c446e4d57f46. Change-Id: Ib30ae5be00cc568e799290be6b3c8f29cbbe4c20
|
f7fd970244f143b1abb956e29794c446e4d57f46 |
|
09-Nov-2015 |
Mathieu Chartier <mathieuc@google.com> |
Load app images Support in-place patching of the app image based on boot image location and app oat location. Only loads for art run test so far since we do not automatically generate app images for app installs. N5 maps launch time (~200 runs): Before: 930ms After: 878.18ms After + image class table: 864.57ms TODO: Oatdump support. Store class loaders as class roots in image. Bug: 22858531 Change-Id: I9cbc645645e62ea2ed1ad8e139e91af7d88514c1
|
d5bbadf44032510b1ce12d9e5f2adad9234cf6b9 |
|
15-Dec-2015 |
Dimitry Ivanov <dimitry@google.com> |
Use shared namespaces for bundled apps Shared namespaces clone the list of loaded native libraries from the caller namespace. This allows classloaders for bundled apps to share already loaded libraries with default namespace. Bug: http://b/26165097 Bug: http://b/22548808 Change-Id: Ia90b603a0ca97194618b82fb191d6790a4b1f281 (cherry picked from commit 986f650d8b552e8b7dbebef1f50f015e7850edfc)
|
986f650d8b552e8b7dbebef1f50f015e7850edfc |
|
15-Dec-2015 |
Dimitry Ivanov <dimitry@google.com> |
Use shared namespaces for bundled apps Shared namespaces clone the list of loaded native libraries from the caller namespace. This allows classloaders for bundled apps to share already loaded libraries with default namespace. Bug: http://b/26165097 Bug: http://b/22548808 Change-Id: Ia90b603a0ca97194618b82fb191d6790a4b1f281
|
44409d33e05cd2f73d69e0a98daa5c9e2fe38089 |
|
11-Nov-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Use isolated namespaces for app native libs Linker namespaces provide necessary level of isolation for application native libraries. The native libraries will no longer be able to mistakenly depend on platform private libraries like /system/lib/libssl.so This change creates one namespace for each instance of class-loader and uses it when loading native libraries. For backwards compatibility with older apps we keep using default namespace and LD_LIBRARY_PATH if target sdk version is <= 23. (currently set to 0 for testing) Bug: http://b/22548808 Change-Id: I64e97af7450fbf7e3740ccddda96bb2f7c52e03b (cherry picked from commit f5a3099c509cf9b8a4ce9c3073a4db47e14a23bc)
|
f5a3099c509cf9b8a4ce9c3073a4db47e14a23bc |
|
11-Nov-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Use isolated namespaces for app native libs Linker namespaces provide necessary level of isolation for application native libraries. The native libraries will no longer be able to mistakenly depend on platform private libraries like /system/lib/libssl.so This change creates one namespace for each instance of class-loader and uses it when loading native libraries. For backwards compatibility with older apps we keep using default namespace and LD_LIBRARY_PATH if target sdk version is <= 23. (currently set to 0 for testing) Bug: http://b/22548808 Change-Id: I64e97af7450fbf7e3740ccddda96bb2f7c52e03b
|
464595f53abe4370ee6f589eb472e2036e39bce7 |
|
24-Nov-2015 |
Przemyslaw Szczepaniak <pszczepaniak@google.com> |
Enso ThreadGroup.groups is an array not ArrayList ThreadGroup.groups in the enso branch uses plain array in place of ArrayList. debugger.cc code needed minor adjustments to access it. Bug: 25857261 Change-Id: I77ffb92b64a3642933c3240dbadedab5def5dc1b
|
e6cd3b53e54c4e5ea817561904e98397dd903a61 |
|
07-May-2015 |
Piotr Jastrzebski <haaawk@google.com> |
Track renaming of a couple of fields. Change-Id: I8585eba6da868c751eb28f8becb06d2a0a0f3af5
|
c16a50f4837d6204c0cf6c71129492cb4b86784d |
|
07-May-2015 |
Piotr Jastrzebski <haaawk@google.com> |
Track changes to the layout of java.lang.Throwable. The stack trace is now stored in an object called |backtrace|. Change-Id: Icb3f43fed7bc13ecd9124b0e012fef33b7cdbe50
|
8c145b99fd47dca629b815ea7d76a17b7d50f742 |
|
05-May-2015 |
Piotr Jastrzebski <haaawk@google.com> |
DirectByteBuffer: Track renaming of field. address -> effectiveDirectAddress. Change-Id: I484f91621a36fdcad1ebd591bde3faa877cfbeac
|
13e748b28c5f2bd1e83674d2ca899ff61ae5c0a1 |
|
25-Aug-2015 |
Jeff Hao <jeffhao@google.com> |
Revert "Revert "Move annotations to native."" This reverts commit 7db6dd79a24570448ae737ee1946b00396696cac. Adds check if field's declaring class is proxy. Bug: 23508574 Change-Id: Ie829f1526e74427711e818b56d1588d92946cbf6
|
7db6dd79a24570448ae737ee1946b00396696cac |
|
25-Aug-2015 |
Roland Levillain <rpl@google.com> |
Revert "Move annotations to native." This reverts commit 0042c6d49b8488c78f0b937063e316e8d6244439. Reverting this change (as well as the companion CL https://android-review.googlesource.com/#/c/167510/ in platform/libcore) as they make libcore test libcore.java.lang.reflect.ProxyTest#test24846 fail. Change-Id: Ie0676cabb128277c7df5dab7bde17aefd3b2c09c
|
0042c6d49b8488c78f0b937063e316e8d6244439 |
|
30-Jul-2015 |
Jeff Hao <jeffhao@google.com> |
Move annotations to native. Art side of this change. There is also a corresponding Libcore change. Seeing ~2-3x speedup over dalvik KK MR1 in AnnotatedElementBenchmark. Benchmark Speedup of Art AOSP to Dalvik KK MR1 GetAllReturnsLargeAnnotation 2.99 GetAllReturnsMarkerAnnotation 2.20 GetAllReturnsNoAnnotation 2.43 GetAllReturnsSmallAnnotation 2.52 GetAllReturnsThreeAnnotations 2.87 GetAnnotationsOnSubclass 2.42 GetDeclaredAnnotationsOnSubclass 2.49 GetFieldAnnotation 2.68 GetFieldAnnotations 2.60 GetMethodAnnotation 2.66 GetMethodAnnotations 2.61 GetParameterAnnotations 2.52 GetTypeAnnotation 2.56 GetTypeAnnotations 2.17 IsFieldAnnotationPresent 3.26 IsMethodAnnotationPresent 4.99 IsTypeAnnotationPresent 1.34 Change-Id: Ibdbb6d23b17eaab6e83c8774b1bb9401e8227941
|
95456e413497d3373fab3ef9bc78dea1c6b69dbc |
|
12-Jun-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Let classloader provide correct LD_LIBRARY_PATH" This reverts commit 8117250a0bb57bf2aa6b1ab0c7d4d4a7dd402c08.
|
906846fc297bd0c2346f62338508ba9ac0c3baa4 |
|
05-Jun-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Let classloader provide correct LD_LIBRARY_PATH Rely on BaseDexClassLoader to provide correct LD_LIBRARY_PATH Bug: http://b/21647354 Bug: http://b/21667767 Bug: http://b/8076853 Change-Id: I8c690a2578d5de43be9da964fa5a4c0246aa6eec (cherry picked from commit 8117250a0bb57bf2aa6b1ab0c7d4d4a7dd402c08)
|
8117250a0bb57bf2aa6b1ab0c7d4d4a7dd402c08 |
|
05-Jun-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Let classloader provide correct LD_LIBRARY_PATH Rely on BaseDexClassLoader to provide correct LD_LIBRARY_PATH Bug: http://b/21647354 Bug: http://b/21667767 Bug: http://b/8076853 Change-Id: I8c690a2578d5de43be9da964fa5a4c0246aa6eec
|
b5de3bb65556950d5cce1dea3ea6d80adcc5051d |
|
05-Jun-2015 |
Mathieu Chartier <mathieuc@google.com> |
Use runFinalizationWithTimeout for native allocations Prevents deadlocks by not waiting longer than 250ms for finalizers to complete. (cherry picked from commit 3b532d744034b43ed329a3198f15846d80fec3f0) Bug: 21544853 Change-Id: I57b2f7ae8b74185922eb3c15ba0ab71a4d2348aa
|
3b532d744034b43ed329a3198f15846d80fec3f0 |
|
05-Jun-2015 |
Mathieu Chartier <mathieuc@google.com> |
Use runFinalizationWithTimeout for native allocations Prevents deadlocks by not waiting longer than 250ms for finalizers to complete. Bug: 21544853 Change-Id: I57b2f7ae8b74185922eb3c15ba0ab71a4d2348aa
|
3d21bdf8894e780d349c481e5c9e29fe1556051c |
|
22-Apr-2015 |
Mathieu Chartier <mathieuc@google.com> |
Move mirror::ArtMethod to native Optimizing + quick tests are passing, devices boot. TODO: Test and fix bugs in mips64. Saves 16 bytes per most ArtMethod, 7.5MB reduction in system PSS. Some of the savings are from removal of virtual methods and direct methods object arrays. Bug: 19264997 (cherry picked from commit e401d146407d61eeb99f8d6176b2ac13c4df1e33) Change-Id: I622469a0cfa0e7082a2119f3d6a9491eb61e3f3d Fix some ArtMethod related bugs Added root visiting for runtime methods, not currently required since the GcRoots in these methods are null. Added missing GetInterfaceMethodIfProxy in GetMethodLine, fixes --trace run-tests 005, 044. Fixed optimizing compiler bug where we used a normal stack location instead of double on ARM64, this fixes the debuggable tests. TODO: Fix JDWP tests. Bug: 19264997 Change-Id: I7c55f69c61d1b45351fd0dc7185ffe5efad82bd3 ART: Fix casts for 64-bit pointers on 32-bit compiler. Bug: 19264997 Change-Id: Ief45cdd4bae5a43fc8bfdfa7cf744e2c57529457 Fix JDWP tests after ArtMethod change Fixes Throwable::GetStackDepth for exception event detection after internal stack trace representation change. Adds missing ArtMethod::GetInterfaceMethodIfProxy call in case of proxy method. Bug: 19264997 Change-Id: I363e293796848c3ec491c963813f62d868da44d2 Fix accidental IMT and root marking regression Was always using the conflict trampoline. Also included fix for regression in GC time caused by extra roots. Most of the regression was IMT. Fixed bug in DumpGcPerformanceInfo where we would get SIGABRT due to detached thread. EvaluateAndApplyChanges: From ~2500 -> ~1980 GC time: 8.2s -> 7.2s due to 1s less of MarkConcurrentRoots Bug: 19264997 Change-Id: I4333e80a8268c2ed1284f87f25b9f113d4f2c7e0 Fix bogus image test assert Previously we were comparing the size of the non moving space to size of the image file. Now we properly compare the size of the image space against the size of the image file. Bug: 19264997 Change-Id: I7359f1f73ae3df60c5147245935a24431c04808a [MIPS64] Fix art_quick_invoke_stub argument offsets. ArtMethod reference's size got bigger, so we need to move other args and leave enough space for ArtMethod* and 'this' pointer. This fixes mips64 boot. Bug: 19264997 Change-Id: I47198d5f39a4caab30b3b77479d5eedaad5006ab
|
e401d146407d61eeb99f8d6176b2ac13c4df1e33 |
|
22-Apr-2015 |
Mathieu Chartier <mathieuc@google.com> |
Move mirror::ArtMethod to native Optimizing + quick tests are passing, devices boot. TODO: Test and fix bugs in mips64. Saves 16 bytes per most ArtMethod, 7.5MB reduction in system PSS. Some of the savings are from removal of virtual methods and direct methods object arrays. Bug: 19264997 Change-Id: I622469a0cfa0e7082a2119f3d6a9491eb61e3f3d
|
848f70a3d73833fc1bf3032a9ff6812e429661d9 |
|
15-Jan-2014 |
Jeff Hao <jeffhao@google.com> |
Replace String CharArray with internal uint16_t array. Summary of high level changes: - Adds compiler inliner support to identify string init methods - Adds compiler support (quick & optimizing) with new invoke code path that calls method off the thread pointer - Adds thread entrypoints for all string init methods - Adds map to verifier to log when receiver of string init has been copied to other registers. used by compiler and interpreter Change-Id: I797b992a8feb566f9ad73060011ab6f51eb7ce01
|
a61894d88fabe45677f491c9f6bde30059a49026 |
|
24-Apr-2015 |
Mathieu Chartier <mathieuc@google.com> |
Fix reflection handling and test flakiness Fixed reflection invoke to handle exceptions which occur from FindClass or NewObject by throwing these instead of the expected InvocationTargetException. Added test case to 080 for this reflection invoke. Fixed println throwing OOM in 104-growth-limit. Change-Id: I65766e7c3478e299da06fdc3a521fe3f3e8fdba9
|
2cebb24bfc3247d3e9be138a3350106737455918 |
|
22-Apr-2015 |
Mathieu Chartier <mathieuc@google.com> |
Replace NULL with nullptr Also fixed some lines that were too long, and a few other minor details. Change-Id: I6efba5fb6e03eb5d0a300fddb2a75bf8e2f175cb
|
fc58af45e342ba9e18bbdf597f205a58ec731658 |
|
17-Apr-2015 |
Mathieu Chartier <mathieuc@google.com> |
Add AbstractMethod, Constructor, Method Moves functionality to ART from libcore. Precursor to moving ArtMethods to native. Mostly performance improvements. N5 perf before (irrelevant results removed): Class_getConstructor 962.87 =========== Class_getDeclaredMethod 2394.37 ============================ Class_getMethod 2509.20 ============================== Class_newInstance 1999.81 ======================= Method_invokeI 1439.02 ================= Method_invokePreBoxedI 1415.82 ================ Method_invokeStaticI 1456.24 ================= Method_invokeStaticPreBoxedI 1427.32 ================= Method_invokeStaticV 814.47 ========= Method_invokeV 816.56 ========= After: benchmark ns linear runtime Class_getConstructor 1302.04 ================ Class_getDeclaredMethod 1459.01 ================== Class_getMethod 1560.40 =================== Class_newInstance 2029.94 ========================= Method_invokeI 1312.89 ================ Method_invokePreBoxedI 1255.01 =============== Method_invokeStaticI 1289.13 =============== Method_invokeStaticPreBoxedI 1196.52 ============== Method_invokeStaticV 790.82 ========= Method_invokeV 791.73 ========= Performance improvements are more than just fixing regressions introduced in: http://android-review.googlesource.com/#/c/146069/ Bug: 19264997 Change-Id: Ife79c469fdb09f30e3aefcfc3e0ce5ed32303fce
|
daaf3265806eb2eadb2e03302bd68022fab5ca28 |
|
24-Mar-2015 |
Mathieu Chartier <mathieuc@google.com> |
Add AccessibleObject and Field to mirror Main motivation is to remove all the functionality / field access on java side to ArtField. Also comes with some reflection speedups / slowdowns. Summary results: getDeclaredField/getField are slower mostly due to JNI overhead. However, there is a large speedup in getInt, setInt, GetInstanceField, and GetStaticField. Before timings (N5 --compiler-filter=everything): benchmark ns linear runtime Class_getDeclaredField 782.86 === Class_getField 832.77 === Field_getInt 160.17 = Field_setInt 195.88 = GetInstanceField 3214.38 ============== GetStaticField 6809.49 ============================== After: Class_getDeclaredField 1068.15 ============ Class_getField 1180.00 ============== Field_getInt 121.85 = Field_setInt 139.98 = GetInstanceField 1986.15 ======================= GetStaticField 2523.63 ============================== Bug: 19264997 Change-Id: Ic0d0fc1b56b95cd6d60f8e76f19caeaa23045c77
|
785049f8083e56e88dfeab5ff74fb3817f9854e3 |
|
18-Jul-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add paths to apk!lib/<abi> to LD_LIBRARY_PATH Add paths to .apk to LD_LIBRARY_PATH to enable bionic linker's "open from zip-file" feature. Bug: 8076853 Change-Id: I1aa2c039bb2a590ae72f256acc9ba5401c2c59b1
|
324b9bb2f48be39e20077c1d7da45cf3dc47fe06 |
|
24-Feb-2015 |
Andreas Gampe <agampe@google.com> |
ART: Move DexFile vector to Java array To avoid having native vectors only referenced by Java objects, which look like leaks to Valgrind, use a Java array to store references to native DexFile objects. Change-Id: If3c2b31b9d0914ed1965cfd5e3fdb94ea41b1477
|
079101a17575114622f6e1d5be5c9ba643630e9a |
|
15-Dec-2014 |
Mathieu Chartier <mathieuc@google.com> |
Move GC daemon locking logic into heap Fixes deadlock caused by acquirng the mutator lock while synchronizing on the daemon thread. Bug: 18739541 Change-Id: I925b8f0f3b58178da6eff17b9c073f655c39597b
|
cef50f0487929f72183623bc2a5819cf3a63bff6 |
|
10-Dec-2014 |
Mathieu Chartier <mathieuc@google.com> |
Stop daemon threads in runtime shutdown Ensure that daemons are stopped and joins before bringing down the runtime. This fixes bugs related to native code still running when we shutdown the runtime. Also changed the mutex destructor to allow contenders if we are deleting a monitor lock level mutex. Bug: 18577101 Change-Id: I6457b35fd69c6997b9003b5f15f39861749843a9
|
e49e195c4bc2f20df0289c0bbb46f56839308dde |
|
13-Oct-2014 |
Sebastien Hertz <shertz@google.com> |
More use of WellKnownClasses for debugger Uses WellKnownClasses cached fields for ThreadGroupReference-related JDWP commands. Adds fields of java.lang.ThreadGroup and java.util.ArrayList used by the debugger. Change-Id: I54f7ef7e44cb61bec95657a69177bba1fbb7dc75
|
c7dd295a4e0cc1d15c0c96088e55a85389bade74 |
|
22-Oct-2014 |
Ian Rogers <irogers@google.com> |
Tidy up logging. Move gVerboseMethods to CompilerOptions. Now "--verbose-methods=" option to dex2oat rather than runtime argument "-verbose-methods:". Move ToStr and Dumpable out of logging.h, move LogMessageData into logging.cc except for a forward declaration. Remove ConstDumpable as Dump methods are all const (and make this so if not currently true). Make LogSeverity an enum and improve compile time assertions and type checking. Remove log_severity.h that's only used in logging.h. With system headers gone from logging.h, go add to .cc files missing system header includes. Also, make operator new in ValueObject private for compile time instantiation checking. Change-Id: I3228f614500ccc9b14b49c72b9821c8b0db3d641
|
c8ccf68b805c92674545f63e0341ba47e8d9701c |
|
30-Sep-2014 |
Andreas Gampe <agampe@google.com> |
ART: Fix some -Wpedantic errors Remove extra semicolons. Dollar signs in C++ identifiers are an extension. Named variadic macros are an extension. Binary literals are a C++14 feature. Enum re-declarations are not allowed. Overflow. Change-Id: I7d16b2217b2ef2959ca69de84eaecc754517714a
|
3c821c67e28ee1ec7bea2b3b644f5aed303f19f3 |
|
10-Sep-2014 |
Brian Carlstrom <bdc@google.com> |
Add DumpClass context on CacheField and CacheMethod failures Change-Id: Ia1992d98c998cdc98896f5912da50c4849de7699
|
3437531f515d84609fa43baaec32a0d1cc0e3fe0 |
|
11-Sep-2014 |
Brian Carlstrom <bdc@google.com> |
Use WellKnownClasses in ThrowStackOverflowError to reduce changes of further stack overflow Bug: 17463118 (cherry picked from commit bfc2b98a3cf7a9d580f2477e54aabded5004fd26) Change-Id: Iea04bb7f6c4daa9cbdb8ee6ce8ddcbeb9f05aa3d
|
b30e0c644d1f15cf7f048ce733131e7ac70772ae |
|
11-Sep-2014 |
Sebastien Hertz <shertz@google.com> |
Fix crash when connected to DDMS Restore init of WellKnownClasses::org_apache_harmony_dalvik_ddmc_Chunk_data and removed duplicated line. Bug: 17467328 Bug: 17463118 (cherry picked from commit 96cd6714d94b47512710776761dec98c8be68bef) Change-Id: I9f225825bef4995460e1c79a9f3a6c1331f24201
|
96cd6714d94b47512710776761dec98c8be68bef |
|
11-Sep-2014 |
Sebastien Hertz <shertz@google.com> |
Fix crash when connected to DDMS Restore init of WellKnownClasses::org_apache_harmony_dalvik_ddmc_Chunk_data and removed duplicated line. Bug: 17467328 Bug: 17463118 Change-Id: I64638e23615b7c20061b49c41a9c0e9f35a4d537
|
bfc2b98a3cf7a9d580f2477e54aabded5004fd26 |
|
11-Sep-2014 |
Brian Carlstrom <bdc@google.com> |
Use WellKnownClasses in ThrowStackOverflowError to reduce changes of further stack overflow Bug: 17463118 Change-Id: Ic05b07803d2d3112e0b67064f380cd46ba9e293f
|
6bcae8fa93684af581d16400f360541d39e5b5e6 |
|
05-Sep-2014 |
Mathieu Chartier <mathieuc@google.com> |
Add fast path for FindClass using the type dex file. If we are using the PathClassLoader with a BootClassLoader parent, we can handle the common case in the FindClass function without needing to go back to java code. Around 10% speedup measured of maps launch, could be noise due to large variation of app launch times. Eliminates defineClassNative from being anywhere near the top of sampling profiles. Bug: 17397179 Bug: 16828525 (cherry picked from commit 8a39e7fe02e9a81853dc7a75cb50d9ece07a9b37) Change-Id: I1f31de76c1b1a53e32173b1e61a59b0e2f267c98
|
8a39e7fe02e9a81853dc7a75cb50d9ece07a9b37 |
|
05-Sep-2014 |
Mathieu Chartier <mathieuc@google.com> |
Add fast path for FindClass using the type dex file. If we are using the PathClassLoader with a BootClassLoader parent, we can handle the common case in the FindClass function without needing to go back to java code. Around 10% speedup measured of maps launch, could be noise due to large variation of app launch times. Eliminates defineClassNative from being anywhere near the top of sampling profiles. Bug: 17397179 Bug: 16828525 Change-Id: Ide0db2b5f6cf5b96fc46e89178e0799de667cb88
|
0f45f22eb3c52f0ece4c56989180e79c6680d825 |
|
15-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Throw StackOverflowError in native code Initialize stack-overflow errors in native code to be able to reduce the preserved area size of the stack. Includes a refactoring away from constexpr in instruction_set.h to allow for easy changing of the values. Bug: 16256184 (cherry picked from commit 7ea6f79bbddd69d5db86a8656a31aaaf64ae2582) Change-Id: I117cc8485f43da5f0a470f0f5e5b3dc3b5a06246
|
7ea6f79bbddd69d5db86a8656a31aaaf64ae2582 |
|
15-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Throw StackOverflowError in native code Initialize stack-overflow errors in native code to be able to reduce the preserved area size of the stack. Includes a refactoring away from constexpr in instruction_set.h to allow for easy changing of the values. Change-Id: I117cc8485f43da5f0a470f0f5e5b3dc3b5a06246
|
dd157d732b557a854b3689faf8a24170fb47c270 |
|
15-May-2014 |
Ian Rogers <irogers@google.com> |
Avoid some unnecessary use of stl types. May be a minor performance win but really done for libc++ as this removes a dependency on a library function whose prototype includes a std::string. Change-Id: Ifc07a9caef1206caf2a69a6e1b0bfc0ba56c8c62
|
ef7d42fca18c16fbaf103822ad16f23246e2905d |
|
06-Jan-2014 |
Ian Rogers <irogers@google.com> |
Object model changes to support 64bit. Modify mirror objects so that references between them use an ObjectReference value type rather than an Object* so that functionality to compress larger references can be captured in the ObjectRefererence implementation. ObjectReferences are 32bit and all other aspects of object layout remain as they are currently. Expand fields in objects holding pointers so they can hold 64bit pointers. Its expected the size of these will come down by improving where we hold compiler meta-data. Stub out x86_64 architecture specific runtime implementation. Modify OutputStream so that reads and writes are of unsigned quantities. Make the use of portable or quick code more explicit. Templatize AtomicInteger to support more than just int32_t as a type. Add missing, and fix issues relating to, missing annotalysis information on the mutator lock. Refactor and share implementations for array copy between System and uses elsewhere in the runtime. Fix numerous 64bit build issues. Change-Id: I1a5694c251a42c9eff71084dfdd4b51fff716822
|
a3d2718d1fac53210b2a311b1728409d6c8e7b9d |
|
06-Nov-2013 |
Brian Carlstrom <bdc@google.com> |
Change thread.h to thread-inl.h to pick up missing Thread::Currnet for debug build in master Change-Id: I56a4dd18ec1c212f9dbb73b14c0c0623b23c87bd
|
ea46f950e7a51585db293cd7f047de190a482414 |
|
30-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Refactor java.lang.reflect implementation Cherry-picked from commit ed41d5c44299ec5d44b8514f6e17f802f48094d1. Move to ArtMethod/Field instead of AbstractMethod/Field and have java.lang.reflect APIs delegate to ArtMethod/ArtField. Bug: 10014286. Change-Id: Iafc1d8c5b62562c9af8fb9fd8c5e1d61270536e7
|
7940e44f4517de5e2634a7e07d58d0fb26160513 |
|
12-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Create separate Android.mk for main build targets The runtime, compiler, dex2oat, and oatdump now are in seperate trees to prevent dependency creep. They can now be individually built without rebuilding the rest of the art projects. dalvikvm and jdwpspy were already this way. Builds in the art directory should behave as before, building everything including tests. Change-Id: Ic6b1151e5ed0f823c3dd301afd2b13eb2d8feb81
|