Index: runtime/vm/il_printer.cc |
diff --git a/runtime/vm/il_printer.cc b/runtime/vm/il_printer.cc |
index db7cee14e92d73eeba92341b62d096b273f8b890..38f9c2a0c6feaf2238758982bb22e89f7d46722c 100644 |
--- a/runtime/vm/il_printer.cc |
+++ b/runtime/vm/il_printer.cc |
@@ -170,9 +170,14 @@ void FlowGraphPrinter::PrintICData(const ICData& ic_data) { |
static void PrintUse(BufferFormatter* f, const Definition& definition) { |
if (definition.is_used()) { |
if (definition.HasSSATemp()) { |
- f->Print("v%" Pd, definition.ssa_temp_index()); |
+ if (definition.HasPairRepresentation()) { |
+ f->Print("v%" Pd ", v%" Pd "", definition.ssa_temp_index(), |
+ definition.ssa_temp_index() + 1); |
+ } else { |
+ f->Print("v%" Pd "", definition.ssa_temp_index()); |
+ } |
} else if (definition.temp_index() != -1) { |
- f->Print("t%" Pd, definition.temp_index()); |
+ f->Print("t%" Pd "", definition.temp_index()); |
} |
} |
} |
@@ -232,7 +237,9 @@ void Definition::PrintTo(BufferFormatter* f) const { |
void Definition::PrintOperandsTo(BufferFormatter* f) const { |
for (int i = 0; i < InputCount(); ++i) { |
if (i > 0) f->Print(", "); |
- if (InputAt(i) != NULL) InputAt(i)->PrintTo(f); |
+ if (InputAt(i) != NULL) { |
+ InputAt(i)->PrintTo(f); |
+ } |
} |
} |
@@ -573,6 +580,12 @@ void MergedMathInstr::PrintOperandsTo(BufferFormatter* f) const { |
} |
+void ExtractNthOutputInstr::PrintOperandsTo(BufferFormatter* f) const { |
+ f->Print("Extract %" Pd " from ", index()); |
+ Definition::PrintOperandsTo(f); |
+} |
+ |
+ |
void BinarySmiOpInstr::PrintTo(BufferFormatter* f) const { |
Definition::PrintTo(f); |
f->Print(" %co", overflow_ ? '+' : '-'); |