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

Side by Side Diff: runtime/vm/il_printer.cc

Issue 10915022: Implement argument definition test in the vm. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 3 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/il_printer.h" 5 #include "vm/il_printer.h"
6 6
7 #include "vm/intermediate_language.h" 7 #include "vm/intermediate_language.h"
8 #include "vm/os.h" 8 #include "vm/os.h"
9 #include "vm/parser.h" 9 #include "vm/parser.h"
10 10
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 f->Print(")"); 178 f->Print(")");
179 } 179 }
180 180
181 181
182 void AssertBooleanComp::PrintOperandsTo(BufferFormatter* f) const { 182 void AssertBooleanComp::PrintOperandsTo(BufferFormatter* f) const {
183 value()->PrintTo(f); 183 value()->PrintTo(f);
184 f->Print("%s", is_eliminated() ? " eliminated" : ""); 184 f->Print("%s", is_eliminated() ? " eliminated" : "");
185 } 185 }
186 186
187 187
188 void ArgumentDefinitionTestComp::PrintOperandsTo(BufferFormatter* f) const {
189 saved_arguments_descriptor()->PrintTo(f);
190 f->Print(", ?%s @%d",
191 formal_parameter_name().ToCString(),
192 formal_parameter_index());
193 }
194
195
188 void ClosureCallComp::PrintOperandsTo(BufferFormatter* f) const { 196 void ClosureCallComp::PrintOperandsTo(BufferFormatter* f) const {
189 for (intptr_t i = 0; i < ArgumentCount(); ++i) { 197 for (intptr_t i = 0; i < ArgumentCount(); ++i) {
190 if (i > 0) f->Print(", "); 198 if (i > 0) f->Print(", ");
191 ArgumentAt(i)->value()->PrintTo(f); 199 ArgumentAt(i)->value()->PrintTo(f);
192 } 200 }
193 } 201 }
194 202
195 203
196 void InstanceCallComp::PrintOperandsTo(BufferFormatter* f) const { 204 void InstanceCallComp::PrintOperandsTo(BufferFormatter* f) const {
197 f->Print("%s", function_name().ToCString()); 205 f->Print("%s", function_name().ToCString());
(...skipping 610 matching lines...) Expand 10 before | Expand all | Expand 10 after
808 if ((locations_ != NULL) && !locations_[i].IsInvalid()) { 816 if ((locations_ != NULL) && !locations_[i].IsInvalid()) {
809 f->Print(" ["); 817 f->Print(" [");
810 locations_[i].PrintTo(f); 818 locations_[i].PrintTo(f);
811 f->Print("]"); 819 f->Print("]");
812 } 820 }
813 } 821 }
814 f->Print(" }"); 822 f->Print(" }");
815 } 823 }
816 824
817 } // namespace dart 825 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698