Mark top of managed stack on helper transitions
To assist with unwind from a helper function, store current SP prior
to helper call in Thread. NOTE: we may wish to push this into a
trampoline to reduce code expansion. NOTE #2: Because any helper
function which can throw will be non-leaf, it will spill lr at the saved
address - 4 (the word immediately below caller's Method*). To identify
the callsite, load the spilled lr, clear the low bit, subtract 2, and use
that address in the native <-> dalvik mapping to identify the callsite.
Also in this CL are a ralloc fix and some extra SSA logging.
Change-Id: Idd442f0c55413a5146c24709b1db1150604f4554
diff --git a/src/compiler/Dataflow.cc b/src/compiler/Dataflow.cc
index cb208a5..06f942f 100644
--- a/src/compiler/Dataflow.cc
+++ b/src/compiler/Dataflow.cc
@@ -1945,7 +1945,7 @@
defs[regIndex] = ssaReg;
}
-/* Loop up new SSA names for format_35c instructions */
+/* Look up new SSA names for format_35c instructions */
static void dataFlowSSAFormat35C(CompilationUnit* cUnit, MIR* mir)
{
DecodedInstruction *dInsn = &mir->dalvikInsn;
@@ -1960,7 +1960,7 @@
}
}
-/* Loop up new SSA names for format_3rc instructions */
+/* Look up new SSA names for format_3rc instructions */
static void dataFlowSSAFormat3RC(CompilationUnit* cUnit, MIR* mir)
{
DecodedInstruction *dInsn = &mir->dalvikInsn;