summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add verification of boot.oat generated on deviceBrian Carlstrom2013-07-1711-183/+254
| | | | Change-Id: I069586205a9a92fc7375ccf5cdde136bbbcfc800
* Fix thread initialization issue when runtime started twice (as seen in ↵Brian Carlstrom2013-07-171-1/+7
| | | | | | image_test) Change-Id: Ic20758ee64c1b2c41cd2329cf6d66b15d0ac2473
* Use LOCAL_REQUIRED_MODULES instead of LOCAL_ADDITIONAL_DEPENDENCIES so we ↵Brian Carlstrom2013-07-171-6/+2
| | | | | | only relink the tests on libart changes but do not recompile them. Change-Id: I47d7cdaa51749970eccac8528b032448a26b6e91
* Fix typo in makefileBrian Carlstrom2013-07-161-1/+1
| | | | Change-Id: I462df0f268472460171c355d322eafc58a46a522
* Fix LOCAL_ADDITIONAL_DEPENDENCIES in Android.oat.mkBrian Carlstrom2013-07-161-4/+4
| | | | | | (cherry picked from commit c8475a6eda5d640263210e1e0c025d15b6180c02) Change-Id: Ie97484e53c9187fdcaaf9f27b6f0c3770ab7d7a9
* Use non-PHONY dependency to avoid rebuilding art gtests repeatedly.Brian Carlstrom2013-07-141-1/+6
| | | | Change-Id: I675552b68c3375204eb9ef356ce80aa9615f4ccf
* Include dex2oatd along with libart and libartd-compilerBrian Carlstrom2013-07-141-1/+3
| | | | Change-Id: I154fccef2667d640141f9fc484697d5cf6531608
* Merge "Do not mark pages executable unnecessarily to play nice with selinux"Brian Carlstrom2013-07-139-30/+38
|\
| * Do not mark pages executable unnecessarily to play nice with selinuxBrian Carlstrom2013-07-129-30/+38
| | | | | | | | Change-Id: Ief4a5da38ac7c2cf7bf6f7a640cb63c5e8ed03bd
* | Mark libbcinfo as a SHARED_LIBRARY dependency.Stephen Hines2013-07-121-1/+1
|/ | | | | | | | ART's compiler depends on libbcc, which transitively depends on libbcinfo. Without the direct specification, it is possible to end up with a build that fails to link. Change-Id: I8a7237e2d5ed8118e4f4d78031ac528d0905c070
* Create separate Android.mk for main build targetsBrian Carlstrom2013-07-12525-847/+926
| | | | | | | | | | 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
* Revert "Always enable lock level checks." DO NOT MERGEBrian Carlstrom2013-07-121-1/+1
| | | | | | | | This reverts commit ccf124800fe025be3ca05c28a60514909ca66a11. (cherry picked from commit 27c590edf6c24107b6473e84e526c432bd081f6e) Change-Id: I2be879dcd126fc8d043641bdfbf2f9b80a678d10
* Merge remote-tracking branch 'goog/dalvik-dev' into merge-art-to-masterBrian Carlstrom2013-07-122-3/+3
|\
| * Merge "Fixes for portable build" into dalvik-devBrian Carlstrom2013-07-122-3/+3
| |\ |/ /
| * Fixes for portable buildBrian Carlstrom2013-07-122-3/+3
| | | | | | | | Change-Id: I29d6a9fb7f8ec134128329d974acf6b6534e25f1
* | Add HAVE_ANDROID_OS check around cutils/properties.h includeBrian Carlstrom2013-07-121-1/+4
|/ | | | Change-Id: Ibe3ffd4a829d3ec0e41f861b09da0990e603f2c2
* resolved conflicts for merge of 51c2467e to dalvik-devBrian Carlstrom2013-07-1252-685/+647
|\ | | | | | | Change-Id: Ia7a8785d3220df6feeb999bc70f6d1917cad8d75
| * libart-compiler cleanupBrian Carlstrom2013-07-1152-684/+646
| | | | | | | | | | | | | | | | | | | | | | | | - Move compile-time code to src/compiler and libart-compiler OatWriter, ImageWriter, ElfWriter, ElfFixup, ElfStripper, stub generation - Move ClassReference and MethodReference to remove MethodVerifier dependency on CompilerDriver - Move runtime_support_llvm.cc out of src/compiler and next to runtime_support.cc - Change dex2oat and gtests to directly depend on libart-compiler - Move non-common definitions from Android.common.mk to more specific makefiles - Add LOCAL_ADDITIONAL_DEPENDENCIES on appropriate makefiles Change-Id: I897027e69945914128f21f317a92caf9255bc600
* | Merge "Let dalvikvm default based on persist.sys.dalvik.vm.lib" into dalvik-devBrian Carlstrom2013-07-121-1/+1
|\ \
| * | Let dalvikvm default based on persist.sys.dalvik.vm.libBrian Carlstrom2013-07-111-1/+1
| | | | | | | | | | | | Change-Id: I0e2aa9b1227d9665c37366d6d7bdca2b6c009271
* | | Port 1778d17feda232e5f794ba1ebdf400a600a17fd8 to art.Elliott Hughes2013-07-111-13/+38
| | | | | | | | | | | | | | | | | | | | | | | | Increase the default alloc tracker maximum, and add a new system property "dalvik.vm.allocTrackerMax" that allows developers to choose an arbitrary limit. Change-Id: I8b3fcfb00ba87d1cf515d5835c101b5375b1d8a2
* | | Merge "Adds missing dataflow flag for invoke-interface." into dalvik-devSebastien Hertz2013-07-112-4/+4
|\ \ \
| * | | Adds missing dataflow flag for invoke-interface.Sebastien Hertz2013-07-112-4/+4
| |/ / | | | | | | | | | | | | | | | | | | | | | Adds missing DF_NULL_CHK_OUT0 flag in dataflow attributes of invoke-interface and invoke-interface-range instructions. This is used by null check elimination pass. Change-Id: I41e6ff414b3d74a16d1e020fa8988a30b7431afa
* | | Fix DDMS allocation tracker.Mathieu Chartier2013-07-111-100/+100
|/ / | | | | | | | | | | | | | | | | | | | | The allocation tracker previously did a NewByteArray while holding the gAllocTrackerLock. This was problematic due to the fact that this new allocation would also try to acquire said lock. Fixed the issue by moving the newByteArray call outside of the lock. Bug: 9767557 Change-Id: I7e94e631d9c96aa642637de52f100b371f813294
* | Fix GetDirectBufferrAddress to use GetLongField.Jeff Hao2013-07-101-1/+1
| | | | | | | | | | | | The return type of this was recently changed from int to long. Change-Id: Ia9e5356b53fb3bf0f83190e42023ec56ad2bff54
* | Merge "Fix debug build assertion failing on boot." into dalvik-devJeff Hao2013-07-101-6/+1
|\ \
| * | Fix debug build assertion failing on boot.Jeff Hao2013-07-101-6/+1
| | | | | | | | | | | | Change-Id: Ica7b115340821fc729db674077ed2a488c02b7c3
* | | am 27c590ed: (-s ours) Revert "Always enable lock level checks." DO NOT MERGEBrian Carlstrom2013-07-100-0/+0
|\ \ \ | |/ / |/| / | |/ | | * commit '27c590edf6c24107b6473e84e526c432bd081f6e': Revert "Always enable lock level checks." DO NOT MERGE
| * Revert "Always enable lock level checks." DO NOT MERGEBrian Carlstrom2013-07-101-1/+1
| | | | | | | | This reverts commit ccf124800fe025be3ca05c28a60514909ca66a11.
* | am 4922e9d4: Use /system/framework/framework.jar:preloaded-classes for on ↵Brian Carlstrom2013-07-105-33/+90
|\ \ | |/ | | | | | | | | | | device dex2oat * commit '4922e9d4e5f86e40ca89fb097cec40e191dae0a1': Use /system/framework/framework.jar:preloaded-classes for on device dex2oat
| * Use /system/framework/framework.jar:preloaded-classes for on device dex2oatBrian Carlstrom2013-07-105-33/+90
| | | | | | | | Change-Id: I30ccbd5295a2979b9c89f00c93ad316d9b6475e9
* | am c6444052: Update class_initializer_black_list for masterBrian Carlstrom2013-07-101-0/+131
|\ \ | |/ | | | | | | * commit 'c64440528822281a7889aba9cebf96baa4235b87': Update class_initializer_black_list for master
| * Update class_initializer_black_list for masterBrian Carlstrom2013-07-101-0/+131
| | | | | | | | Change-Id: Id8c69cc349290ba7d255ea214f8d1b51d3ce062a
* | am 2c3caadb: Merge remote-tracking branch \'goog/dalvik-dev\' into ↵Brian Carlstrom2013-07-100-0/+0
|\ \ | |/ | | | | | | | | merge-art-to-master * commit '2c3caadb48b066a0355cd3d2dcd5d5e9b48fc19c':
| * Merge remote-tracking branch 'goog/dalvik-dev' into merge-art-to-masterBrian Carlstrom2013-07-10239-5553/+10219
| |\ | | | | | | | | | Change-Id: Id6bec909d7137192be0acc7bd8f736d1d8027745
* | \ Merge "Fix -Xint mode." into dalvik-devJeff Hao2013-07-092-34/+31
|\ \ \
| * | | Fix -Xint mode.Sebastien Hertz2013-07-092-34/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 9700950 Make ClassLinker::FixupStaticTrampolines updates entry point from compiled code with interpreter entry point when interpreter mode is enabled. Change-Id: Ie52ace8ea054ae7cb17442264dc62f68472409c6
* | | | Adds ThrowAbstractMethodError to common throws.Sebastien Hertz2013-07-094-12/+17
|/ / / | | | | | | | | | Change-Id: Ib9b6b634a934b075a168534e50b2160a4e4dbc65
* | | Interpret methods invoked via JNI in interpreter only mode.Jeff Hao2013-07-082-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the issue of Dhrystone having the same performance in interpreter only mode. Main was executing compiled code since it uses CallStaticVoidMethod directly. Now a check for interpreter only mode in InvokeWithArgArray redirects it to the interpreter. Change-Id: If6e6d8ede5cd0d8ad687d161667056373b1b031c
* | | Merge "Fix GetQuickCodeFor to return actual code pointer if it exists." into ↵Jeff Hao2013-07-081-1/+2
|\ \ \ | | | | | | | | | | | | dalvik-dev
| * | | Fix GetQuickCodeFor to return actual code pointer if it exists.Jeff Hao2013-07-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If the compiled entry point is the interpreter entry point, the code now tries to get oat code for it before returning. Change-Id: Iea1cec1ed003aadd71b432cc405fc81509bc644a
* | | | Improve sticky GC ergonomicsMathieu Chartier2013-07-083-39/+39
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before we scheduled a partial GC after 10 sticky GC had been run to prevent excessive heap growth and fragmentation. The issue with this is that it was just a ballpark estimate which was not based on reality. The new behaviour has that we do sticky GC until we have less space remaining than minimum free after the GC. When this occurs, we set the next GC to be a partial GC. After a partial / full GC we grow the heap and set the next GC to be a sticky GC. This prevents the heap from always growing more than the target utilization, while ensuring that we do sticky GC often. dumpsys meminfo: ~450Mb -> 420Mb. Slight slowdown in GCBench. Change-Id: Ifd865123f7d4ae39914fda44c9225a6731d27890
* | | Merge "Preparing SSA support for SEA IR: reaching definitions." into dalvik-devAnwar Ghuloum2013-07-0310-103/+1253
|\ \ \
| * | | Preparing SSA support for SEA IR: reaching definitions.Dragos Sbirlea2013-07-0310-103/+1253
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added the following: - Downward-exposed uses. - Reaching definitions. - Better .dot generation. Per file: sea_ir/sea.*: Downward exposed definitions and reaching definitions code. dex_instruction.*: Wrapper function added to expose the vA register, which is later used by dataflow analysis. sea_ir/instruction_tools.*: These tools provide info needed by dataflow analysis that is dependent on dex format. dex/frontend.cc: Formatting issues fixed. sea_ir/*.*: All files pass cpplint validation. *.mk: Support for new files added in this CL. Change-Id: Ic510e7fb55aebcde99a121304ee7e841a3307358
* | | | Merge "Add marks for instrumentation frames that get interpreted." into ↵Jeff Hao2013-07-036-21/+25
|\ \ \ \ | |/ / / |/| | | | | | | dalvik-dev
| * | | Add marks for instrumentation frames that get interpreted.Jeff Hao2013-07-026-21/+25
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During instrumentation, if a method goes to the interpreter, a special callee- save ref and args method frame is pushed onto the stack, instead of a frame for the method being called. This change adds a bool to mark methods that end up interpreted, so things that walk the stack know to look for the callee-save method instead. Also included is a change to UnsafeLogFatalForThreadSuspendAllTimeout to prevent it from grabbing locks before dumping. This was breaking DumpLocked, which eventually gets a ScopedObjectAccessUnchecked requiring those locks not be held. Change-Id: I7e68cf195c77f40df6f497551c94b0926d3c5065
* | | Merge "Constructor barrier support in DEX-to-DEX compiler." into dalvik-devSebastien Hertz2013-07-034-5/+63
|\ \ \
| * | | Constructor barrier support in DEX-to-DEX compiler.Sebastien Hertz2013-07-014-5/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 9307738 Some constructors require a barrier before returning. This CL introduces the RETURN-VOID-BARRIER instruction. The DEX-to-DEX compiler replaces all RETURN-VOID instructions where a barrier is required by this instruction. The interpreter and the verifier are updated to support this new instruction. Change-Id: If31979b4027bc12157b933eda9fcbd5270edd202
* | | | Merge "Fix DDMS lock ordering error." into dalvik-devMathieu Chartier2013-07-032-3/+3
|\ \ \ \
| * | | | Fix DDMS lock ordering error.Mathieu Chartier2013-07-022-3/+3
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Renamed kJdwpSerialLock to guard both the jdwp socket and serial. Moved the lock priority higher than the alloc space lock priority. This is needed since walking the dlmalloc heap requires acquiring the alloc space lock. Change-Id: Idce47ea8c400643829edc5aaebb57f8b686b2853