Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2334)

Unified Diff: vm/il_printer.cc

Issue 10825035: Add an explicit push-argument instruction to the IL. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/runtime/
Patch Set: Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: vm/il_printer.cc
===================================================================
--- vm/il_printer.cc (revision 9930)
+++ vm/il_printer.cc (working copy)
@@ -152,8 +152,8 @@
void ClosureCallComp::PrintOperandsTo(BufferFormatter* f) const {
for (intptr_t i = 0; i < ArgumentCount(); ++i) {
- if (i == 0) f->Print(", ");
- ArgumentAt(i)->PrintTo(f);
+ if (i > 0) f->Print(", ");
+ f->Print("cid%d", ArgumentAt(i)->cid());
}
}
@@ -295,10 +295,6 @@
void CreateClosureComp::PrintOperandsTo(BufferFormatter* f) const {
f->Print("%s", function().ToCString());
- f->Print(", ");
- type_arguments()->PrintTo(f);
- f->Print(", ");
- receiver()->PrintTo(f);
}
@@ -422,6 +418,12 @@
}
+void PushArgumentInstr::PrintTo(BufferFormatter* f) const {
+ f->Print(" %s:%d ", DebugName(), cid());
+ value()->PrintTo(f);
+}
+
+
void ReturnInstr::PrintTo(BufferFormatter* f) const {
f->Print(" %s ", DebugName());
value()->PrintTo(f);
@@ -680,6 +682,12 @@
}
+void PushArgumentInstr::PrintToVisualizer(BufferFormatter* f) const {
+ f->Print("_ %s:%d ", DebugName(), cid());
+ value()->PrintTo(f);
+}
+
+
void ReturnInstr::PrintToVisualizer(BufferFormatter* f) const {
f->Print("_ %s ", DebugName());
value()->PrintTo(f);

Powered by Google App Engine
This is Rietveld 408576698