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

Unified Diff: runtime/vm/flow_graph_compiler_x64.cc

Issue 10701131: Stop passing location argument to run time calls, since it is stored in the pc (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
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: runtime/vm/flow_graph_compiler_x64.cc
===================================================================
--- runtime/vm/flow_graph_compiler_x64.cc (revision 9532)
+++ runtime/vm/flow_graph_compiler_x64.cc (working copy)
@@ -211,7 +211,6 @@
__ j(NOT_ZERO, &compare_classes, Assembler::kNearJump);
// Instance is Smi, check directly.
const Class& smi_class = Class::Handle(Smi::Class());
- // TODO(regis): We should introduce a SmiType.
Error& malformed_error = Error::Handle();
if (smi_class.IsSubtypeOf(TypeArguments::Handle(),
type_class,
@@ -481,7 +480,6 @@
__ movq(RDX, Address(RSP, 0)); // Get instantiator type arguments.
__ movq(RCX, Address(RSP, kWordSize)); // Get instantiator.
__ PushObject(Object::ZoneHandle()); // Make room for the result.
- __ pushq(Immediate(Smi::RawValue(token_pos))); // Source location.
__ pushq(Immediate(Smi::RawValue(cid))); // Computation id.
__ pushq(RAX); // Push the instance.
__ PushObject(type); // Push the type.
@@ -490,9 +488,9 @@
__ LoadObject(RAX, test_cache);
__ pushq(RAX);
GenerateCallRuntime(cid, token_pos, try_index, kInstanceofRuntimeEntry);
- // Pop the two parameters supplied to the runtime entry. The result of the
+ // Pop the parameters supplied to the runtime entry. The result of the
// instanceof runtime call will be left as the result of the operation.
- __ Drop(7);
+ __ Drop(6);
Label done;
if (negate_result) {
__ popq(RDX);
@@ -556,7 +554,6 @@
const String& error_message = String::ZoneHandle(
String::NewSymbol(error.ToErrorCString()));
__ PushObject(Object::ZoneHandle()); // Make room for the result.
- __ pushq(Immediate(Smi::RawValue(token_pos))); // Source location.
__ pushq(RAX); // Push the source object.
__ PushObject(dst_name); // Push the name of the destination.
__ PushObject(error_message);
@@ -580,7 +577,6 @@
__ movq(RDX, Address(RSP, 0)); // Get instantiator type arguments.
__ movq(RCX, Address(RSP, kWordSize)); // Get instantiator.
__ PushObject(Object::ZoneHandle()); // Make room for the result.
- __ pushq(Immediate(Smi::RawValue(token_pos))); // Source location.
__ pushq(Immediate(Smi::RawValue(cid))); // Computation id.
__ pushq(RAX); // Push the source object.
__ PushObject(dst_type); // Push the type of the destination.
@@ -595,7 +591,7 @@
kTypeCheckRuntimeEntry);
// Pop the parameters supplied to the runtime entry. The result of the
// type check runtime call is the checked value.
- __ Drop(8);
+ __ Drop(7);
__ popq(RAX);
__ Bind(&is_assignable);

Powered by Google App Engine
This is Rietveld 408576698