diff options
author | Zheng Xu <zheng.xu@arm.com> | 2015-01-09 14:40:47 +0800 |
---|---|---|
committer | Nicolas Geoffray <ngeoffray@google.com> | 2015-02-04 14:01:17 +0000 |
commit | bb7a28a9275239f4e6d5f7863d8256ae036a9d5e (patch) | |
tree | f785aabc67616bb9882a1039ca8b998cb1cf7cf7 /compiler/optimizing/graph_visualizer.cc | |
parent | c2024144da54504d819869dc928ce4ac975634d4 (diff) | |
download | android_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.cc | 13 |
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) { |