summaryrefslogtreecommitdiffstats
path: root/runtime
Commit message (Collapse)AuthorAgeFilesLines
* [MIPS] Enable futex supportChris Dearman2013-11-141-1/+1
| | | | Change-Id: I4095d889229fe1b96f7b276d7952b3578c8fcd6d
* Hold proxy classes live in class linker.Mathieu Chartier2013-10-151-1/+3
| | | | | | | | | | We currently assume that class loaders hold proxy classes live, but this is not always the case (e.g. class loader gets freeed). This was resulting in a bug where we were freeing a class when there was still a live object referencing it. Bug: 11141694 Change-Id: I318e9fee41c86b7790431d09ba5e83633fab547b
* Have JNI FindClass fall back to system ClassLoaderBrian Carlstrom2013-10-103-14/+46
| | | | | | Bug: 10994325 Change-Id: Id0a46e78eecfe8a9eb91008765c4fff48697cc58
* Validate ELF file segment lengths against file length when loadingBrian Carlstrom2013-10-101-2/+17
| | | | | Bug: 11152153 Change-Id: I31047b9bb607aac478b79dea4ed9a72abe1bd775
* Revert "Add Jack modifier."Brian Carlstrom2013-10-092-6/+2
| | | | | | This reverts commit 6ffd0967027c092a62d7100ca42ceded369c8ca1. Change-Id: Ia69241a5100e8f740379e2ed944279de4daaf9ed
* Verifier allows arguments of integral types to be interchangeable.Jeff Hao2013-10-041-1/+8
| | | | | | | | This fixes a bug where code was passing an int into a method with a byte argument. The RI allows this, but the verifier was rejecting it. Bug: 11033423 Change-Id: I2a6af3bbbc6e9288fc000f711ae1337ab5786d1a
* Find OatDexFile by DexFile name and checksum, not just checksumBrian Carlstrom2013-10-035-50/+80
| | | | | Bug: 10614658 Change-Id: Ie0b5a34fd396b6299000c37909108c5e7e6ab80f
* Use ElfFile instead of dlopen for QuickBrian Carlstrom2013-10-032-4/+14
| | | | | Bug: 10614658 Change-Id: I6a7e2cb0960a5d468a55d220c3fafa80bc239fa9
* Use file magic to determine file type, not file extension.Brian Carlstrom2013-10-0311-75/+90
| | | | | Bug: 10614658 Change-Id: I9156dfca78ac8cd1c62fb258825cc791629270a4
* Fix OatFile leak causing dlopen to return stale OatFile contentsBrian Carlstrom2013-09-301-12/+18
| | | | | Bug: 10917637 Change-Id: If6b7bb8dd9c7aa3d870bd43964f31512385c5d39
* MIPS fix.Ian Rogers2013-09-271-1/+2
| | | | | | | | | Bug 10094803. Resolution stub needs to set $t9 to ensure the global pointer is calculated correctly. Fix copy-paste error in resolution stub in function being invoked. Change-Id: I330b3052f87f47c10cbde2f7e6b271664185d7b0 (cherry picked from commit 65d1b22d0b02fb0111f69013163c8170e68392f1)
* Fix handling of unresolved references in verifier.Jeff Hao2013-09-245-27/+105
| | | | | | | | | | | | The verifier should not treat use of unresolved references as a reason to reject the entire class. Instead, the verifier treats the instruction as a throw. If that class is run, the interpreter with extra checks will throw an exception. Bug: 10457426 (cherry picked from commit a3faaf4bece7f42529c013fe87bd41de59798656) Change-Id: I161bfdbfa116890ffa9e7a593c756229bd939eb4
* Fix overly restrictive assertBrian Carlstrom2013-09-231-1/+2
| | | | | | | Found by 084-class-init on a clean build. Bug: 10750824 Change-Id: I7cf1ee190cbddbda98132511527eab36c36da523
* Make sure CompilerDriver actually resolves typesBrian Carlstrom2013-09-231-0/+1
| | | | | Bug: 10750824 Change-Id: Ie61881f24196e851d87822798a7e9abdf9678aa3
* Use class def index from java.lang.Class.Ian Rogers2013-09-2124-334/+298
| | | | | | | | | | | Bug: 10244719 This removes the computation of the dex file index, when necessary this is computed by searching the dex file. Its only necessary in dalvik.system.DexFile.defineClassNative and DexFile::FindInClassPath, the latter not showing up significantly in profiling with this change. (cherry-picked from 8b2c0b9abc3f520495f4387ea040132ba85cae69) Change-Id: I20c73a3b17d86286428ab0fd21bc13f51f36c85c
* Merge "Re-enable concurrent system weak sweeping." into klp-devMathieu Chartier2013-09-2012-103/+167
|\
| * Re-enable concurrent system weak sweeping.Mathieu Chartier2013-09-2012-103/+167
| | | | | | | | | | | | | | | | | | | | | | Enabled by disallowing new system weaks during the pause and re-allowing it after the system weaks have been swept. Reduces GC pause by ~1ms. Fixes pause regression caused by fix for Bug: 10626133 Change-Id: If49d33e7ef19cb728ed3cef5187acfa53b9b05d8
* | Merge "Fix dumpsys meminfo for art" into klp-devAnwar Ghuloum2013-09-202-1/+6
|\ \ | |/ |/|
| * Fix dumpsys meminfo for artAnwar Ghuloum2013-09-192-1/+6
| | | | | | | | | | BUG:10112253 Change-Id: I2a34cc0841bdcf922c4ab4eadda360313858a0d6
* | Merge "Reconcile differences between zip implementations" into klp-devKenny Root2013-09-202-37/+100
|\ \ | |/ |/|
| * Reconcile differences between zip implementationsKenny Root2013-09-192-37/+100
| | | | | | | | | | | | | | Copy new behavior of ZipFileRO to art's zip_archive.cc Bug: 10424836 Change-Id: I0ec81425ab372d0884c684eab299449834c35e82
* | Improve heap verification.Mathieu Chartier2013-09-199-77/+213
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Re-enabled checking the allocation stack for heap verification. Added tracking of recent frees in DlMallocSpace if debug spaces is enabled. This is useful when you have heap corruption caused by a live object referencing a recently freed object. Added various other sanity checks in the GC. Bug: 10626133 Change-Id: I5ada11966336ae9a06615b16f4b933f05b5d0c32
* | Fix system weak sweeping race.Mathieu Chartier2013-09-181-12/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was a race related to sweeping the intern table with mutators unpaused. The race occurred when an unused intern was seen as not referenced by the GC but another thread attempted to create intern this same string before we swept the system weaks. This caused the thread to get a pointer to the stale string which was shortly going to be reclaimed. The fix moves sweeping the system weaks inside of the pause. This is a temporary solution since it adds < 1ms of pause time. Bug: 10626133 Change-Id: Ibf669ae5237ddb2ab44a9efd72e207bd06b53147
* | Merge "Fix soft reference clearing issue." into klp-devMathieu Chartier2013-09-183-19/+34
|\ \ | |/ |/|
| * Fix soft reference clearing issue.Mathieu Chartier2013-09-183-19/+34
| | | | | | | | | | | | | | | | | | | | There was a bug where we would check that the pending next field was non null before enqueueing up cleared references. This was causing references to not get queued up during ProcessReferences. Bug: 10626133 Change-Id: Ic1e00e42045092280b4abb3d41f1c58f7adbc3de
* | Merge "Allow traversal into /storage paths." into klp-devJeff Sharkey2013-09-181-1/+1
|\ \ | |/ |/|
| * Allow traversal into /storage paths.Jeff Sharkey2013-09-171-1/+1
| | | | | | | | | | | | | | | | | | Apps are no longer required to have sdcard_r or sdcard_rw to access some parts of external storage. Relax the mount parameters to allow everyone to traverse. Bug: 10577808 Change-Id: Ife3c6fb18028f7093ff853459c1ca1e0ec7a6d01
* | Fix race in root marking.Mathieu Chartier2013-09-177-47/+41
|/ | | | | | | | | | | | | | There was a race which caused the class linker / intern table to not become dirty after adding a root. We now guard the is dirty flag by the corresponding locks to prevent this from occuring. This was causing roots to be occasionally missed. Also fixes the bug where we occasionally scan more cards than needed. Bug: 10626133 Change-Id: I0f6e72d92035ff463954d66988ef610ea0df61be
* Merge "Remove dependency on JNIHelp header side effects." into klp-devRuben Brunk2013-09-111-2/+4
|\
| * Remove dependency on JNIHelp header side effects.Ruben Brunk2013-09-101-2/+4
| | | | | | | | | | Bug: 10680559 Change-Id: I2f8ab34803a4554dac35c941ed58c0c845754655
* | Remove OBB bind mounts, now provided by FUSE.Jeff Sharkey2013-09-101-18/+1
| | | | | | | | | | | | | | | | | | | | The OBB storage area is now presented on a per-user basis by the FUSE daemon, so we no longer need to create bind mounts. (In fact, we must use the FUSE daemon since it now correctly synthesizes UID ownership on a per-user basis.) Bug: 10506809 Change-Id: I763b340bb040396cbcc1f1f32277eca15fe69fc6
* | Disable lock contention logging by default.Jeff Hao2013-09-092-8/+6
|/ | | | | | | The verifier runs out of memory with lock contention logging on nakasi. Bug: 10646091 Change-Id: I8ddffdb48d779a20107bae7013cbe92d13dc8bdb
* Merge "Support apps that pass JNI_VERSION_1_1 to GetEnv." into klp-devElliott Hughes2013-09-061-1/+4
|\
| * Support apps that pass JNI_VERSION_1_1 to GetEnv.Elliott Hughes2013-09-061-1/+4
| | | | | | | | | | Bug: 10649815 Change-Id: I73b9bef20f7f8fa96cdcb5afdab9592c35ea0f3e
* | Revert "Revert "Remove bogus fastpath from String::Equals(const StringPiece&)""Brian Carlstrom2013-09-062-11/+9
| | | | | | | | | | | | | | This reverts commit 2b25433c561ff53494e948f20a221143b3165a14. Bug: 10614658 Change-Id: I757329f8643bf5e32a7d3005f8314fb9ebea440c
* | Revert "Remove bogus fastpath from String::Equals(const StringPiece&)"Brian Carlstrom2013-09-067-41/+15
|/ | | | | | | This reverts commit 8438ed31e10f3881ed92f03877d5edaca7d5b48c. Bug: 10614658 Change-Id: I335f10a7140e1644957bc1cee21a9b310a558499
* Fix verifier upcasting type after instance_of.Jeff Hao2013-09-061-1/+4
| | | | | | | | | | | | | The verifier automatically changed the type of a register to be the checked type in an instance_of instruction, even if the checked type was the register type's superclass. This would loosen the type information of the register and cause problems later. Bug: 10614872 (cherry picked from commit c642ec8987746a2a44b990bd5354306242d709da) Change-Id: Ib447557d3582dad6ac01f0e3b4ee497a27a45172
* Remove bogus fastpath from String::Equals(const StringPiece&)Brian Carlstrom2013-09-067-15/+41
| | | | | Bug: 10614658 Change-Id: I907ec77a65c1ae29e800356abdf755a457620081
* Add more systrace logging to GC.Mathieu Chartier2013-09-052-2/+8
| | | | | | | | | | There was some confusing systrace messages which made it seem like pauses were longer than they actually were due to premption occuring during thread_list->ResumeAll(). Bug: 10612142 Change-Id: I6eeedd1cf85ff38c5b116f15059469db52cbb73b
* [build fix] Remove redundant complexity from JNI aborts.Elliott Hughes2013-09-031-15/+2
| | | | | | (cherry picked from commit 8e4d3ed463df1a9f5fdc1e927a6afe6d208558e1) Change-Id: I375f27efbec35a7d21070b3a5699ab798143a6a2
* Merge "Multi threaded hashed deduplication during compilation." into klp-devMathieu Chartier2013-09-043-315/+0
|\
| * Multi threaded hashed deduplication during compilation.Mathieu Chartier2013-09-033-315/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moved deduplication to be in the compiler driver instead of oat writer. This enables deduplication to be performed on multiple threads. Also added a hash function to avoid excessive comparison of byte arrays. Improvements: Before (alloats host): real 1m6.967s user 4m22.940s sys 1m22.610s Thinkfree.apk (target mako): 0m23.74s real 0m50.95s user 0m9.50s system 0m24.62s real 0m50.61s user 0m10.07s system 0m24.22s real 0m51.44s user 0m10.09s system 0m23.70s real 0m51.05s user 0m9.97s system 0m23.50s real 0m50.74s user 0m10.63s system After (alloats host): real 1m5.705s user 4m44.030s sys 1m29.990s Thinkfree.apk (target mako): 0m23.32s real 0m51.38s user 0m10.00s system 0m23.49s real 0m51.20s user 0m9.80s system 0m23.18s real 0m50.80s user 0m9.77s system 0m23.52s real 0m51.22s user 0m10.02s system 0m23.50s real 0m51.55s user 0m9.46s system Bug: 10552630 Change-Id: Ia6d06a747b86b0bfc4473b3cd68f8ce1a1c7eb22
* | Fix image_test on targetBrian Carlstrom2013-09-032-14/+17
|/ | | | | Bug: 10606994 Change-Id: I39838483e59479ceb9ba014bef9086b32f2596a8
* Fix ImageHeader.IsValidBrian Carlstrom2013-09-031-2/+2
| | | | Change-Id: Ia56f4ded63a726a416225bf4a536175aa435866e
* Change IsMethodTracingActive to GetMethodTracingMode for art.Jeff Hao2013-08-303-7/+19
| | | | | | | | | | This allows traceview to tell whether sampling or just normal method profiling is enabled. Bug: 9968521 Change-Id: I518a1888a90bc50568fe56bf708d801027ac98d7 (cherry picked from commit 64caa7dcf46ed6139b766dbe77fbd7353899417f)
* am 01e9779a: Merge "Write out image bitmap inside of image file." into klp-devMathieu Chartier2013-08-297-60/+100
|\ | | | | | | | | * commit '01e9779ad3860a44bc356d4734957bbbd6b77e48': Write out image bitmap inside of image file.
| * Merge "Write out image bitmap inside of image file." into klp-devMathieu Chartier2013-08-297-60/+100
| |\
| | * Write out image bitmap inside of image file.Mathieu Chartier2013-08-297-60/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now create the image bitmap when we generate the image. The image bitmap is written after the image inside of the image file. This speeds up dex2oat by making walking the image during heap creation unnecessary. This should also help memory pressure by enabling the image bitmap to be swappable. Bug: 10432288 Change-Id: Idebf459ed15edbb41a7d9b9b353934155bce2f19
* | | Merge "Make DexFiles opened from files readonly by default, but writable ↵Brian Carlstrom2013-08-296-39/+22
|\ \ \ | | | | | | | | | | | | during dex2oat" into dalvik-dev
| * | | Make DexFiles opened from files readonly by default, but writable during dex2oatBrian Carlstrom2013-08-296-39/+22
| |/ / | | | | | | | | | | | | Bug: 9618388 Change-Id: I83f2e16ee8446a79a94a84971146d807bb0c9ee0