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

Side by Side 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2009 the V8 project authors. All rights reserved. 1 // Copyright 2009 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 17 matching lines...) Expand all
28 #include "v8.h" 28 #include "v8.h"
29 29
30 #include "codegen-inl.h" 30 #include "codegen-inl.h"
31 #include "ic-inl.h" 31 #include "ic-inl.h"
32 #include "runtime.h" 32 #include "runtime.h"
33 #include "stub-cache.h" 33 #include "stub-cache.h"
34 34
35 namespace v8 { 35 namespace v8 {
36 namespace internal { 36 namespace internal {
37 37
38 // ----------------------------------------------------------------------------
39 // Static IC stub generators.
40 //
41
42 #define __ ACCESS_MASM(masm)
43
38 44
39 void KeyedLoadIC::ClearInlinedVersion(Address address) { 45 void KeyedLoadIC::ClearInlinedVersion(Address address) {
40 UNIMPLEMENTED(); 46 UNIMPLEMENTED();
41 } 47 }
42 48
43 void KeyedStoreIC::ClearInlinedVersion(Address address) { 49 void KeyedStoreIC::ClearInlinedVersion(Address address) {
44 UNIMPLEMENTED(); 50 UNIMPLEMENTED();
45 } 51 }
46 52
47 void KeyedStoreIC::RestoreInlinedVersion(Address address) { 53 void KeyedStoreIC::RestoreInlinedVersion(Address address) {
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
168 void LoadIC::GenerateStringLength(MacroAssembler* masm) { 174 void LoadIC::GenerateStringLength(MacroAssembler* masm) {
169 masm->int3(); // UNIMPLEMENTED. 175 masm->int3(); // UNIMPLEMENTED.
170 } 176 }
171 177
172 bool LoadIC::PatchInlinedLoad(Address address, Object* map, int index) { 178 bool LoadIC::PatchInlinedLoad(Address address, Object* map, int index) {
173 UNIMPLEMENTED(); 179 UNIMPLEMENTED();
174 return false; 180 return false;
175 } 181 }
176 182
177 void StoreIC::Generate(MacroAssembler* masm, ExternalReference const& f) { 183 void StoreIC::Generate(MacroAssembler* masm, ExternalReference const& f) {
178 masm->int3(); // UNIMPLEMENTED. 184 // ----------- S t a t e -------------
185 // -- rax : value
186 // -- rcx : name
187 // -- rsp[0] : return address
188 // -- rsp[4] : receiver
William Hesse 2009/06/22 19:14:23 rsp[8]?
Mads Ager (chromium) 2009/06/22 19:25:00 Done.
189 // -----------------------------------
190 // Move the return address below the arguments.
191 __ pop(rbx);
192 __ push(Operand(rsp, 0));
193 __ push(rcx);
194 __ push(rax);
195 __ push(rbx);
196
197 // Perform tail call to the entry.
198 __ TailCallRuntime(f, 3);
179 } 199 }
180 200
181 void StoreIC::GenerateExtendStorage(MacroAssembler* masm) { 201 void StoreIC::GenerateExtendStorage(MacroAssembler* masm) {
182 masm->int3(); // UNIMPLEMENTED. 202 masm->int3(); // UNIMPLEMENTED.
183 } 203 }
184 204
185 void StoreIC::GenerateMegamorphic(MacroAssembler* masm) { 205 void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
186 masm->int3(); // UNIMPLEMENTED. 206 masm->int3(); // UNIMPLEMENTED.
187 } 207 }
188 208
209
210 #undef __
211
212
189 } } // namespace v8::internal 213 } } // namespace v8::internal
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698