summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/graph_visualizer.cc
diff options
context:
space:
mode:
authorZheng Xu <zheng.xu@arm.com>2015-01-09 14:40:47 +0800
committerNicolas Geoffray <ngeoffray@google.com>2015-02-04 14:01:17 +0000
commitbb7a28a9275239f4e6d5f7863d8256ae036a9d5e (patch)
treef785aabc67616bb9882a1039ca8b998cb1cf7cf7 /compiler/optimizing/graph_visualizer.cc
parentc2024144da54504d819869dc928ce4ac975634d4 (diff)
downloadandroid_art-bb7a28a9275239f4e6d5f7863d8256ae036a9d5e.tar.gz
android_art-bb7a28a9275239f4e6d5f7863d8256ae036a9d5e.tar.bz2
android_art-bb7a28a9275239f4e6d5f7863d8256ae036a9d5e.zip
ART: Dump environment to cfg file.
Environment shows additional dependency and instructions with environment should usually be a safepoint as well. Change-Id: I04606624e6ea212ab1dc7502cdb87b5d5d0e3ac2
Diffstat (limited to 'compiler/optimizing/graph_visualizer.cc')
-rw-r--r--compiler/optimizing/graph_visualizer.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/compiler/optimizing/graph_visualizer.cc b/compiler/optimizing/graph_visualizer.cc
index 9383d31e8f..835bca688f 100644
--- a/compiler/optimizing/graph_visualizer.cc
+++ b/compiler/optimizing/graph_visualizer.cc
@@ -194,6 +194,19 @@ class HGraphVisualizerPrinter : public HGraphVisitor {
}
output_ << "]";
}
+ if (instruction->HasEnvironment()) {
+ HEnvironment* env = instruction->GetEnvironment();
+ output_ << " (env: [ ";
+ for (size_t i = 0, e = env->Size(); i < e; ++i) {
+ HInstruction* insn = env->GetInstructionAt(i);
+ if (insn != nullptr) {
+ output_ << GetTypeId(insn->GetType()) << insn->GetId() << " ";
+ } else {
+ output_ << " _ ";
+ }
+ }
+ output_ << "])";
+ }
if (pass_name_ == kLivenessPassName
&& is_after_pass_
&& instruction->GetLifetimePosition() != kNoLifetime) {