7fc8f90b7160e879143be5cfd6ea3df866398884 |
|
26-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Change access flag behavior in verifier Note: this moves the miranda modifier to the upper 16 bit. Bug: 16161620 Change-Id: I2f591d53b7d1559171e70aaaf22225d94b4882f5
|
78d639ef4be3ad7314846e1e6c1261d7d30f83fa |
|
02-Sep-2014 |
Andreas Gampe <agampe@google.com> |
ART: Tighten verifier list reading and offsets Check offsets and sizes for header entries of a dex file. Bug: 17347459 Change-Id: Ia1727c33dea51f7a8e345f3799f1ba414708239c
|
b373ba1bf7e67d4dd8286df08065ac76aa8ac1ee |
|
02-Sep-2014 |
Andreas Gampe <agampe@google.com> |
ART: Fix typo Bug: 17327877 Change-Id: I6132a8afb4b69c8d22a01b477f6f324c789ed666
|
277a7c7b4bb9c421380592fd3998d2e79e4035b3 |
|
30-Aug-2014 |
Andreas Gampe <agampe@google.com> |
ART: Fix dex file verifier type-list handling It is rare, but valid, to have an empty type list. Bug: 17327877 Change-Id: Ib3a8ff3e5ccd8fe7c04b1e97485bf3e6de72aa4d
|
5cac343e28fe28d4bc9ccc6db5cab38db1f2b59d |
|
29-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Check for duplicate class definitions in dex file verifier Reject dex files that try to define two classes with the same type id. Bug: 16016492 (cherry picked from commit 0ba238dcc21ae3544e1e8cb5d108725db8a1c134) Change-Id: Ie04a684b41b50313449b87c5c3574e89f800e254
|
0ba238dcc21ae3544e1e8cb5d108725db8a1c134 |
|
29-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Check for duplicate class definitions in dex file verifier Reject dex files that try to define two classes with the same type id. Bug: 16016492 Change-Id: I82cc99c00b3e3cb2b3d537ec14beed9049fe900f
|
50d1bc198b2e347d60df74c3b0c452e1f929dd2f |
|
18-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Improve overflow detection in dex file verifier Overflows were hidden by the design of the checks. Push all range checks as lists, so we can explicitly check against the count. Bug: 16017886 Change-Id: I0083f83006ef1e55518b0919dff319004b66dcb8
|
acc2bb693d83102f93007d7c4881a94bbcc3b9bb |
|
18-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Fail dex file verification on invalid access flags Only allow standard java access flags in class-def items. Bug: 16018234 Change-Id: I54e788817d5974faf7b3841cd01b9ca4568249c1
|
ffdf1a72132be9113c4444b5fba3e81c9050b120 |
|
18-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Improve overflow detection in dex file verifier Overflows were hidden by the design of the checks. Push all range checks as lists, so we can explicitly check against the count. (cherry picked from commit 50d1bc198b2e347d60df74c3b0c452e1f929dd2f) Bug: 16017886 Change-Id: I0083f83006ef1e55518b0919dff319004b66dcb8
|
0bab231e8215bae409cc104ea3ff2d2481074d5a |
|
18-Jul-2014 |
Andreas Gampe <agampe@google.com> |
ART: Fail dex file verification on invalid access flags Only allow standard java access flags in class-def items. (cherry picked from commit acc2bb693d83102f93007d7c4881a94bbcc3b9bb) Bug: 16018234 Change-Id: I54e788817d5974faf7b3841cd01b9ca4568249c1
|
df10b32c4d0adfa86201169692eaa7ef038b642c |
|
12-Jun-2014 |
Andreas Gampe <agampe@google.com> |
ART: Dex file verifier needs to check proto idx of method id. Bug: 15570490 Change-Id: I4e90aea6e77711ee37d14d96a1fc9a2fbb980d94
|
bb836e14541d5424328182f3e20ce08c691d041e |
|
14-Jun-2014 |
Andreas Gampe <agampe@google.com> |
ART: Dex file verifier can't blindly use GetDescriptor The dex file verifier cannot call GetDescriptor without checking the index first. Bug: 15615908 Change-Id: Iec5e20b77aac3e6c25fb94b1b630d0846c0b8f33
|
5e31ddadd29325649260aa186e9ffa8ccdb370a2 |
|
13-Jun-2014 |
Andreas Gampe <agampe@google.com> |
ART: Clean up DexFile verifier API Use an out arg instead of widening a return type. Change-Id: I70744eec408b0c6f3487f168faf510869277daff
|
e3d5581266301e6a672af6233220037abf52fea1 |
|
11-Jun-2014 |
Ian Rogers <irogers@google.com> |
Fix host Mac build. Ptr - ptr is an int not size_t on the Mac. Fix use of assembly literal macro. Remove forgotten about WITH_HOST_DALVIK. Change-Id: I64db1927b2c6a145b6a96ffcc33d704914bba1bb
|
e09269ca05e3014e86198e9a2cf6092026fafefd |
|
07-Jun-2014 |
Andreas Gampe <agampe@google.com> |
ART: Check indices in dex file verifier The verifier did not check the indices into string, type, method and field arrays. Bug: 15467347 Change-Id: Ie04eb6f5a62ff528096a006fb2d3fd8f3773e0d8
|
ffddfdf6fec0b9d98a692e27242eecb15af5ead2 |
|
03-Jun-2014 |
Tim Murray <timmurray@google.com> |
DO NOT MERGE Merge ART from AOSP to lmp-preview-dev. Change-Id: I0f578733a4b8756fd780d4a052ad69b746f687a9
|
c647564845429bd709ed3338c13f15063c2f9fd9 |
|
27-May-2014 |
Brian Carlstrom <bdc@google.com> |
Workaround apparent clang compilation issue Bug: 15014252 (cherry picked from commit ec80e7e1506e7099210399626b46cb8183534e70) Change-Id: I159d66764749e41d2a97e0912f796085b4fdb6e1
|
ec80e7e1506e7099210399626b46cb8183534e70 |
|
27-May-2014 |
Brian Carlstrom <bdc@google.com> |
Workaround apparent clang compilation issue Bug: 15014252 Change-Id: Ie8cae91053c143e73dc0196e538937aad9feb1bc
|
700a402244a1a423da4f3ba8032459f4b65fa18f |
|
20-May-2014 |
Ian Rogers <irogers@google.com> |
Now we have a proper C++ library, use std::unique_ptr. Also remove the Android.libcxx.mk and other bits of stlport compatibility mechanics. Change-Id: Icdf7188ba3c79cdf5617672c1cfd0a68ae596a61
|
507dfdd147c97bfbadebfd63584d094b6a4e7b47 |
|
16-May-2014 |
Ian Rogers <irogers@google.com> |
Compatibility layer to transition from UniquePtr to std::unique_ptr. Use ART_WITH_STLPORT (enabled for the target) to cause the use of UniquePtr, for the host switch to std::unique_ptr. For now the type remains called UniquePtr. Make dalvik compile with clang on the host, move its build to C++11. Change-Id: I5ba8d2757904bc089ed62047ea03de3c0853fb12
|
8a6bbfc66e3cf01d4aa07ee08b515beee481d553 |
|
23-Jan-2014 |
Ian Rogers <irogers@google.com> |
64bit cleanliness for the dex file verifier. Change-Id: I08f55ca0185b8fc265afb2ca3f949c6d6ac7c5b6
|
92572be7f754c213e615a62955cc5f65ca8c0c0e |
|
28-Nov-2013 |
Narayan Kamath <narayan@google.com> |
Use libziparchive for art zip processing. This is part of the effort to move all VM & framework zip parsing to a common implementation. This also has the side effect of fixing various TODOs related to crc32 checking. bug: 10193060 Change-Id: I407f9ad5a94fc91d96ff43556adde00a00df1f14
|
8d31bbd3d6536de12bc20e3d29cfe03fe848f9da |
|
13-Oct-2013 |
Ian Rogers <irogers@google.com> |
Throw IOException at source of failing to open a dex file. Before is: java.lang.ClassNotFoundException: Didn't find class "GCBench" on path: DexPathList[[zip file "/disk2/dalvik-dev/out/host/linux-x86/framework/GCBench.jar"],nativeLibraryDirectories=[/disk2/dalvik-dev/out/host/linux-x86/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) Suppressed: java.lang.ClassNotFoundException: GCBench at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 1 more Caused by: java.lang.NoClassDefFoundError: Class "LGCBench;" not found ... 5 more And after is: java.lang.ClassNotFoundException: Didn't find class "GCBench" on path: DexPathList[[zip file "/disk2/dalvik-dev/out/host/linux-x86/framework/GCBench.jar"],nativeLibraryDirectories=[/disk2/dalvik-dev/out/host/linux-x86/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) Suppressed: java.io.IOException: Zip archive '/disk2/dalvik-dev/out/host/linux-x86/framework/GCBench.jar' doesn't contain classes.dex at dalvik.system.DexFile.openDexFile(Native Method) at dalvik.system.DexFile.<init>(DexFile.java:80) at dalvik.system.DexFile.<init>(DexFile.java:59) at dalvik.system.DexPathList.loadDexFile(DexPathList.java:268) at dalvik.system.DexPathList.makeDexElements(DexPathList.java:235) at dalvik.system.DexPathList.<init>(DexPathList.java:113) at dalvik.system.BaseDexClassLoader.<init>(BaseDexClassLoader.java:48) at dalvik.system.PathClassLoader.<init>(PathClassLoader.java:38) at java.lang.ClassLoader.createSystemClassLoader(ClassLoader.java:128) at java.lang.ClassLoader.access$000(ClassLoader.java:65) at java.lang.ClassLoader$SystemClassLoader.<clinit>(ClassLoader.java:81) at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:137) Suppressed: java.lang.ClassNotFoundException: GCBench at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 1 more Caused by: java.lang.NoClassDefFoundError: Class "LGCBench;" not found ... 5 more Also, move dex file verifier messages out of logs. In the process the ClassLinker::dex_lock_ needed tidying to cover a smaller scope. Bug 11301553. Change-Id: I80058652e11e7ea63457cc01a0cb48afe1c15543
|
a67249065e4c9b3cf4a7c081d95a78df28291ee9 |
|
23-Sep-2013 |
Ian Rogers <irogers@google.com> |
Move hot utf routines into -inl.h. Change-Id: I7050d8282a7e5870b2bf671d6867c57625e00ccc
|
02e25119b15a6f619f17db99f5d05124a5807ff3 |
|
15-Aug-2013 |
Mathieu Chartier <mathieuc@google.com> |
Fix up TODO: c++0x, update cpplint. Needed to update cpplint to handle const auto. Fixed a few cpplint errors that were being missed before. Replaced most of the TODO c++0x with ranged based loops. Loops which do not have a descriptive container name have a concrete type instead of auto. Change-Id: Id7cc0f27030f56057c544e94277300b3f298c9c5
|
7934ac288acfb2552bb0b06ec1f61e5820d924a4 |
|
26-Jul-2013 |
Brian Carlstrom <bdc@google.com> |
Fix cpplint whitespace/comments issues Change-Id: Iae286862c85fb8fd8901eae1204cd6d271d69496
|
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
|