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

Unified Diff: src/x64/ic-x64.cc

Issue 140068: Implement code generation for conditional expressions and regexp... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 years, 6 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: src/x64/ic-x64.cc
===================================================================
--- src/x64/ic-x64.cc (revision 2241)
+++ src/x64/ic-x64.cc (working copy)
@@ -35,7 +35,13 @@
namespace v8 {
namespace internal {
+// ----------------------------------------------------------------------------
+// Static IC stub generators.
+//
+#define __ ACCESS_MASM(masm)
+
+
void KeyedLoadIC::ClearInlinedVersion(Address address) {
UNIMPLEMENTED();
}
@@ -175,7 +181,21 @@
}
void StoreIC::Generate(MacroAssembler* masm, ExternalReference const& f) {
- masm->int3(); // UNIMPLEMENTED.
+ // ----------- S t a t e -------------
+ // -- rax : value
+ // -- rcx : name
+ // -- rsp[0] : return address
+ // -- rsp[4] : receiver
William Hesse 2009/06/22 19:14:23 rsp[8]?
Mads Ager (chromium) 2009/06/22 19:25:00 Done.
+ // -----------------------------------
+ // Move the return address below the arguments.
+ __ pop(rbx);
+ __ push(Operand(rsp, 0));
+ __ push(rcx);
+ __ push(rax);
+ __ push(rbx);
+
+ // Perform tail call to the entry.
+ __ TailCallRuntime(f, 3);
}
void StoreIC::GenerateExtendStorage(MacroAssembler* masm) {
@@ -186,4 +206,8 @@
masm->int3(); // UNIMPLEMENTED.
}
+
+#undef __
+
+
} } // namespace v8::internal

Powered by Google App Engine
This is Rietveld 408576698