OSDN Git Service

Various dx fixes to make it preserve locals and debug info.
authorjeffhao <jeffhao@google.com>
Thu, 24 Mar 2011 21:01:25 +0000 (14:01 -0700)
committerjeffhao <jeffhao@google.com>
Thu, 24 Mar 2011 21:01:25 +0000 (14:01 -0700)
commit38b61748553bd387bc36b6bd82a8667b6c5f5934
treedd3799cff34b6cd7a36a479018971fd107a0d773
parent87614af52f5aeb9a25f0329ee5414d29a5713334
Various dx fixes to make it preserve locals and debug info.

The SCCP pass checks if a register has associated local info before
attepting to prune branches or replace values with constants. Also, the
register allocator reserves a register for each local in a method. This
could be later improved by only reserving registers for the lengths of
their lifetimes as specified by the local info table.

Change-Id: I654ac014a9aac530f1db0db7d5cdef7535ff49bf
dx/src/com/android/dx/ssa/LiteralOpUpgrader.java
dx/src/com/android/dx/ssa/SCCP.java
dx/src/com/android/dx/ssa/back/FirstFitLocalCombiningAllocator.java
dx/tests/091-ssa-const-collector/expected.txt