Permalink
Commits on Feb 3, 2012
  1. merge form tag exdroid4.0.3r1-v0.7

    weng committed Feb 3, 2012
Commits on Nov 1, 2011
  1. Fix cleanup

    (cherry-picked from ics-mr1)
    
    The code was attempting to null out a struct member after freeing
    the struct.
    
    Also, changed the order of directory permission tests so that
    writable comes first.  Somehow "dalvik-cache directory not
    writable" seems more direct than "not readable", since the code
    isn't generally interested in reading the directory.
    
    Bug 5549907
    
    Change-Id: If737ab822b356aae98e47292d21946e33a04342b
    fadden committed with Ben Cheng Nov 1, 2011
  2. Disable JIT single-stepping resume mode.

    BUG: 5551114
    Change-Id: Id8ee75be5e71ee258994235952871ad181024e56
    Ben Cheng committed Nov 1, 2011
Commits on Oct 28, 2011
  1. Fix single-stepping resume mode in the interpreter.

    (cherry-picked from master)
    
    When a resume attempt is cancelled due to other pending request make sure
    the old native resume PC is cleared. Otherwise the JIT code cache may be
    re-entered with mismatching Dalvik PC.
    
    Also fix a code bloat problem where single-step count is not set properly
    after executing a return instruction.
    
    BUG: 5208786
    
    Change-Id: I54775215b11eae29ccdb6111dc0fdfa99e41e08d
    Ben Cheng committed Oct 27, 2011
Commits on Oct 14, 2011
  1. Avoid deadlock.

    dvmIsHeapAddress is the pointer validity checker for use outside the GC. If
    it doesn't take the heap lock, it risks looking at data structures that are
    changing under its feet. If it does take the heap lock, it risks deadlock
    between a thread doing an explicit GC and the signal catcher trying to dump
    threads (causing the GC thread to be suspended while holding the heap lock).
    
    Calling back into managed code while holding the heap lock and with other
    threads resumed sounds like an inherently bad idea to me, but that's a battle
    for another day.
    
    With this change, we can handle SIGQUIT while we're in ReferenceQueue.add
    as a result of an explicit GC in a system doing concurrent collections, so
    the only known problem is fixed.
    
    Bug: 5425802
    Change-Id: I42d434d5ea3ffbcb77a4c544b81b08a4c7364a16
    enh committed Oct 14, 2011
Commits on Oct 10, 2011
  1. Merge "Leave up to 512 chars of gDvm.lastMessage on dvmAbort's stack …

    …frame."
    Ben Cheng committed with Android (Google) Code Review Oct 10, 2011
  2. Leave up to 512 chars of gDvm.lastMessage on dvmAbort's stack frame.

    Bug: 5372634
    Change-Id: I019a059e5a989de3dfc9e2f5e78f7caa7168cf75
    Ben Cheng committed Oct 10, 2011
  3. Merge "Reordered some checks and added more to the verifier."

    jeffyhao committed with Android (Google) Code Review Oct 10, 2011
  4. Merge "Revert "Use the card table to scan the immune region of the he…

    …ap.""
    Ben Cheng committed with Android (Google) Code Review Oct 10, 2011
  5. Revert "Use the card table to scan the immune region of the heap."

    This reverts commit 6c355e5.
    
    Conflicts are resolved in:
    
    	vm/alloc/CardTable.cpp
    	vm/alloc/HeapBitmap.cpp
    	vm/alloc/HeapInternal.h
    	vm/alloc/HeapSource.cpp
    	vm/alloc/MarkSweep.cpp
    
    Tested with overnight monkey runs + Delaunay.
    
    Bug: 5037417
    Change-Id: I400eff8542d0bddd865ce570a479f7750c1ba484
    Ben Cheng committed Oct 10, 2011
  6. Merge "Don't say UTF-8 in Dalvik's CheckJNI when we mean Modified UTF…

    …-8."
    enh committed with Android (Google) Code Review Oct 10, 2011
Commits on Oct 7, 2011
  1. Don't say UTF-8 in Dalvik's CheckJNI when we mean Modified UTF-8.

    Change-Id: I4130e7f92275275a6d6f782e1ad979fbf9197a8e
    enh committed Oct 7, 2011
Commits on Oct 6, 2011
  1. Reordered some checks and added more to the verifier.

    The verifier checks for 2 errors in put instructions. First, if the
    field can't be resolved, the instruction is overwritten to throw a
    verifier error. Second, if the data types of the field and instruction
    mismatch, the verifier rejects the whole class. This change swaps the
    order of the checks, so that if both errors occur, the class is
    rejected.
    
    Also, checks were added to prevent float values from being used as array
    indexes or arguments to if statements.
    
    Change-Id: I7b122f4ebc4043266be4466e10679c6319a788ef
    jeffyhao committed Oct 6, 2011
Commits on Oct 4, 2011
  1. Fixed dx verifier issue when an error is detected.

    The code needed to break out properly when an error was detected to
    prevent it from causing even more problems.
    
    Change-Id: If497655a406689aeb1b4aa6523421cc22f2b7593
    jeffyhao committed Oct 4, 2011
Commits on Sep 29, 2011
  1. Fix a typo in unused code.

    Change-Id: Ied11a79337a3cc795428dfde29e405ec0bbcb98c
    enh committed Sep 29, 2011
Commits on Sep 27, 2011
  1. Fix memory barriers (Issue 3338450)

    Add extra memory barrier on volatile stores.
    
    Change-Id: Id4a4750cdfc910eda2f0b44ead0af2a569b5735e
    buzbee committed Sep 27, 2011
Commits on Sep 20, 2011
  1. Don't spam the logs with thread priority information.

    Ten minutes of logs contained 108 lines of 'Elevating priority from 10 to 0'
    and 108 lines of 'Reset priority to 10'. This provides little value.
    
    Change-Id: Id96e8304238aa3344af4dd6342ace575534acc0f
    Jesse Wilson committed Sep 20, 2011
Commits on Sep 6, 2011
  1. Attempt to fix dalvik heap corruption.

    This is bccheng's find, as reported here:
    http://b/5208786#ISSUE_HistoryHeader49
    
    Bug: http://b/5208786
    Change-Id: I1616bac1ef6c197f723656187a784fc6838975d4
    Jesse Wilson committed Sep 6, 2011
Commits on Sep 5, 2011
  1. Fix document formatting error (html tags)

    Change-Id: I57d10b69f400ce3ffda1a26dc632a4122a4f3d70
    Logan Chien committed Sep 5, 2011
Commits on Sep 2, 2011
  1. Merge "Dx reg allocator fix for accidental long/double clobbering."

    jeffyhao committed with Android (Google) Code Review Sep 2, 2011
  2. Merge "Rename register to conform to instruction format"

    Shih-wei Liao committed with Android (Google) Code Review Sep 2, 2011
Commits on Sep 1, 2011
  1. Rename register to conform to instruction format

    For instruction format 35c, 41c, 52c, and 5rc, the register
    name was different from the Dalvik Instruction Format document,
    and InstrUtils.cpp of libdex.  This commit updates the name,
    so that they will look consistent.
    
    Change-Id: I857b1f9c1ac7178dc147d0019df589c9c6d102e1
    Logan Chien committed Sep 1, 2011
Commits on Aug 31, 2011
  1. Fix a corner-case dex merging bug.

    When doing a null merge (merging a dex file with an empty file) word-alignment
    means that the output may be two bytes longer than the input. Always include the
    rounded-up length in the bytes allocated to a section.
    
    com.android.dx.util.DexException: Section limit 669894 exceeded by type list
    	at com.android.dx.io.DexBuffer$Section.ensureCapacity(DexBuffer.java:541)
    	at com.android.dx.io.DexBuffer$Section.writeShort(DexBuffer.java:574)
    	at com.android.dx.io.DexBuffer$Section.writeTypeList(DexBuffer.java:636)
    	at com.android.dx.merge.DexMerger$3.write(DexMerger.java:439)
    	at com.android.dx.merge.DexMerger$3.write(DexMerger.java:424)
    	at com.android.dx.merge.DexMerger$IdMerger.mergeUnsorted(DexMerger.java:321)
    
    Change-Id: I67b81ba8c837b0307e313f4012a051b022b25db2
    Jesse Wilson committed Aug 31, 2011
Commits on Aug 30, 2011
  1. am 4130f72: am 1dd1d92: am e4e76fe: Merge "Set DX stack size to 1M by…

    … default on Windows."
    
    * commit '4130f726d82493748bf7252da631e1f315f2538c':
      Set DX stack size to 1M by default on Windows.
    ralf-at-android committed with Android Git Automerger Aug 30, 2011
  2. am 1dd1d92: am e4e76fe: Merge "Set DX stack size to 1M by default on …

    …Windows."
    
    * commit '1dd1d9246c0804d1b4fda955c56a6d89c989ec6a':
      Set DX stack size to 1M by default on Windows.
    ralf-at-android committed with Android Git Automerger Aug 30, 2011
  3. am e4e76fe: Merge "Set DX stack size to 1M by default on Windows."

    * commit 'e4e76feb6aad0d0161fabe12cb7d97e665f7b109':
      Set DX stack size to 1M by default on Windows.
    ralf-at-android committed with Android Git Automerger Aug 30, 2011
Commits on Aug 26, 2011
  1. Merge "Set DX stack size to 1M by default on Windows."

    ralf-at-android committed with Android Code Review Aug 26, 2011
  2. Dx reg allocator fix for accidental long/double clobbering.

    Addresses this bug: http://b/issue?id=5215643.
    
    Change-Id: I82613c38b0a6247d071aa6c5cc90bf8b60d5d84b
    jeffyhao committed Aug 26, 2011
  3. Set DX stack size to 1M by default on Windows.

    Bug: http://code.google.com/p/android/issues/detail?id=15181
    
    Summary of bug: some user reported issues running dx.bat and
    Fadden figured out the VM's stack size default was too small.
    Using -Xss1m fixed it.
    
    This CL introduces a default of -Xss1m and the usual mechanism
    to override it using -JXssNm (like for -JXmx...)
    
    Change-Id: I9769316c1708f08c91b93e07bd6d713a10561ea2
    ralf-at-android committed Aug 26, 2011
Commits on Aug 23, 2011
  1. Removed parsing and output for unused --target-api switch in dx.

    This is cherry-picked from dalvik-dev.
    
    Change-Id: I74627e4c261e086e8c2c7cf38591cd3e9f5707e6
    jeffyhao committed Aug 23, 2011
Commits on Aug 22, 2011
  1. Merge "Fix JNIEXPORT now people are using -fvisibility."

    enh committed with Android (Google) Code Review Aug 22, 2011
Commits on Aug 19, 2011
  1. Permit code size to grow when merging dex files.

    The throws clauses use variable-length encodings (sleb and uleb)
    which will have different lengths when the number of types grows.
    
    Bug: http://b/5127963
    Change-Id: I50598a807596955e458d4ec87a730e62e12168d9
    Jesse Wilson committed Aug 19, 2011
  2. Fix JNIEXPORT now people are using -fvisibility.

    This is a backport from dalvik-dev.
    
    Change-Id: If6001b580bd9b36f3845aaa115333d69682f3a92
    enh committed Aug 19, 2011
Commits on Aug 16, 2011
  1. Fix two data races in the monitor code.

    First, the release of a lock was not preceded by a memory barrier.
    This would allow stores within the critical section to move outside
    the critical section violating the monitor invariant.
    
    Second, the thin lock value was often not loaded through volatile
    pointer.  This provides the compiler with the freedom to reload the
    thin lock with a different value causing erroneous updates to the lock
    word.
    
    Bug: 5107390
    Carl Shapiro committed Aug 2, 2011
Commits on Aug 15, 2011
  1. Merge "Dexopt verifier checks that int/float and double/long uses do …

    …not mix."
    jeffyhao committed with Android (Google) Code Review Aug 15, 2011