summaryrefslogtreecommitdiff
path: root/compiler/optimizing/ssa_builder.h
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2015-03-11 15:11:19 +0000
committer Nicolas Geoffray <ngeoffray@google.com> 2015-03-12 17:55:01 +0000
commit915b9d0c13bb5091875d868fbfa551d7b65d7477 (patch)
tree63822d7081b0da33ccda2019dd52025f0ecedb35 /compiler/optimizing/ssa_builder.h
parentbf5565a75876a84c8c2401df597d922a7870a8f2 (diff)
Tweak liveness when instructions are used in environments.
Instructions remain live when debuggable, but only instructions with object types remain live when non-debuggable. Enable StackVisitor::GetThisObject for optimizing. Change-Id: Id87b2cbf33a02450059acc9993995782e5f28987
Diffstat (limited to 'compiler/optimizing/ssa_builder.h')
-rw-r--r--compiler/optimizing/ssa_builder.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/optimizing/ssa_builder.h b/compiler/optimizing/ssa_builder.h
index b414fb2945..24dc449513 100644
--- a/compiler/optimizing/ssa_builder.h
+++ b/compiler/optimizing/ssa_builder.h
@@ -33,7 +33,9 @@ static constexpr int kDefaultNumberOfLoops = 2;
*
* (a) Dex registers that do not require merging (that is, they do not
* have different values at a join block) are available to all their
- * environment uses.
+ * environment uses. Note that it does not imply the instruction will
+ * have a physical location after register allocation. See the
+ * SsaLivenessAnalysis phase.
*
* (b) Dex registers that require merging, and the merging gives
* incompatible types, will be killed for environment uses of that merge.