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

Side by Side Diff: src/x64/stub-cache-x64.cc

Issue 151019: Changed the global object representation (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 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 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 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 60
61 Object* CallStubCompiler::CompileCallInterceptor(Object* a, 61 Object* CallStubCompiler::CompileCallInterceptor(Object* a,
62 JSObject* b, 62 JSObject* b,
63 String* c) { 63 String* c) {
64 UNIMPLEMENTED(); 64 UNIMPLEMENTED();
65 return NULL; 65 return NULL;
66 } 66 }
67 67
68 68
69 69
70 Object* CallStubCompiler::CompileCallGlobal(JSGlobalObject* object,
71 JSGlobalPropertyCell* cell,
72 JSFunction* function,
73 String* name) {
74 UNIMPLEMENTED();
75 return NULL;
76 }
77
78
70 Object* LoadStubCompiler::CompileLoadCallback(JSObject* a, 79 Object* LoadStubCompiler::CompileLoadCallback(JSObject* a,
71 JSObject* b, 80 JSObject* b,
72 AccessorInfo* c, 81 AccessorInfo* c,
73 String* d) { 82 String* d) {
74 UNIMPLEMENTED(); 83 UNIMPLEMENTED();
75 return NULL; 84 return NULL;
76 } 85 }
77 86
78 87
79 Object* LoadStubCompiler::CompileLoadConstant(JSObject* a, 88 Object* LoadStubCompiler::CompileLoadConstant(JSObject* a,
(...skipping 15 matching lines...) Expand all
95 104
96 105
97 Object* LoadStubCompiler::CompileLoadInterceptor(JSObject* a, 106 Object* LoadStubCompiler::CompileLoadInterceptor(JSObject* a,
98 JSObject* b, 107 JSObject* b,
99 String* c) { 108 String* c) {
100 UNIMPLEMENTED(); 109 UNIMPLEMENTED();
101 return NULL; 110 return NULL;
102 } 111 }
103 112
104 113
114 Object* LoadStubCompiler::CompileLoadGlobal(JSGlobalObject* object,
115 JSGlobalPropertyCell* cell,
116 String* name) {
117 UNIMPLEMENTED();
118 return NULL;
119 }
120
121
105 Object* StoreStubCompiler::CompileStoreCallback(JSObject* a, 122 Object* StoreStubCompiler::CompileStoreCallback(JSObject* a,
106 AccessorInfo* b, 123 AccessorInfo* b,
107 String* c) { 124 String* c) {
108 UNIMPLEMENTED(); 125 UNIMPLEMENTED();
109 return NULL; 126 return NULL;
110 } 127 }
111 128
112 129
113 Object* StoreStubCompiler::CompileStoreField(JSObject* a, 130 Object* StoreStubCompiler::CompileStoreField(JSObject* a,
114 int b, 131 int b,
115 Map* c, 132 Map* c,
116 String* d) { 133 String* d) {
117 UNIMPLEMENTED(); 134 UNIMPLEMENTED();
118 return NULL; 135 return NULL;
119 } 136 }
120 137
121 138
122 Object* StoreStubCompiler::CompileStoreInterceptor(JSObject* a, String* b) { 139 Object* StoreStubCompiler::CompileStoreInterceptor(JSObject* a, String* b) {
123 UNIMPLEMENTED(); 140 UNIMPLEMENTED();
124 return NULL; 141 return NULL;
125 } 142 }
126 143
127 144
145 Object* StoreStubCompiler::CompileStoreGlobal(JSGlobalObject* object,
146 JSGlobalPropertyCell* cell,
147 String* name) {
148 UNIMPLEMENTED();
149 return NULL;
150 }
151
152
128 // TODO(1241006): Avoid having lazy compile stubs specialized by the 153 // TODO(1241006): Avoid having lazy compile stubs specialized by the
129 // number of arguments. It is not needed anymore. 154 // number of arguments. It is not needed anymore.
130 Object* StubCompiler::CompileLazyCompile(Code::Flags flags) { 155 Object* StubCompiler::CompileLazyCompile(Code::Flags flags) {
131 // Enter an internal frame. 156 // Enter an internal frame.
132 __ EnterInternalFrame(); 157 __ EnterInternalFrame();
133 158
134 // Push a copy of the function onto the stack. 159 // Push a copy of the function onto the stack.
135 __ push(rdi); 160 __ push(rdi);
136 161
137 __ push(rdi); // function is also the parameter to the runtime call 162 __ push(rdi); // function is also the parameter to the runtime call
138 __ CallRuntime(Runtime::kLazyCompile, 1); 163 __ CallRuntime(Runtime::kLazyCompile, 1);
139 __ pop(rdi); 164 __ pop(rdi);
140 165
141 // Tear down temporary frame. 166 // Tear down temporary frame.
142 __ LeaveInternalFrame(); 167 __ LeaveInternalFrame();
143 168
144 // Do a tail-call of the compiled function. 169 // Do a tail-call of the compiled function.
145 __ lea(rcx, FieldOperand(rax, Code::kHeaderSize)); 170 __ lea(rcx, FieldOperand(rax, Code::kHeaderSize));
146 __ jmp(rcx); 171 __ jmp(rcx);
147 172
148 return GetCodeWithFlags(flags, "LazyCompileStub"); 173 return GetCodeWithFlags(flags, "LazyCompileStub");
149 } 174 }
150 175
151 #undef __ 176 #undef __
152 177
153 178
154 } } // namespace v8::internal 179 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/v8-counters.h ('k') | test/cctest/test-api.cc » ('j') | test/cctest/test-api.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698