OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_CRANKSHAFT_X64_LITHIUM_CODEGEN_X64_H_ | 5 #ifndef V8_CRANKSHAFT_X64_LITHIUM_CODEGEN_X64_H_ |
6 #define V8_CRANKSHAFT_X64_LITHIUM_CODEGEN_X64_H_ | 6 #define V8_CRANKSHAFT_X64_LITHIUM_CODEGEN_X64_H_ |
7 | 7 |
8 | 8 |
9 #include "src/ast/scopes.h" | 9 #include "src/ast/scopes.h" |
10 #include "src/base/logging.h" | 10 #include "src/base/logging.h" |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
169 LInstruction* instr, | 169 LInstruction* instr, |
170 SaveFPRegsMode save_doubles = kDontSaveFPRegs); | 170 SaveFPRegsMode save_doubles = kDontSaveFPRegs); |
171 | 171 |
172 void CallRuntime(Runtime::FunctionId id, | 172 void CallRuntime(Runtime::FunctionId id, |
173 int num_arguments, | 173 int num_arguments, |
174 LInstruction* instr) { | 174 LInstruction* instr) { |
175 const Runtime::Function* function = Runtime::FunctionForId(id); | 175 const Runtime::Function* function = Runtime::FunctionForId(id); |
176 CallRuntime(function, num_arguments, instr); | 176 CallRuntime(function, num_arguments, instr); |
177 } | 177 } |
178 | 178 |
| 179 void CallRuntime(Runtime::FunctionId id, LInstruction* instr) { |
| 180 const Runtime::Function* function = Runtime::FunctionForId(id); |
| 181 CallRuntime(function, function->nargs, instr); |
| 182 } |
| 183 |
179 void CallRuntimeFromDeferred(Runtime::FunctionId id, | 184 void CallRuntimeFromDeferred(Runtime::FunctionId id, |
180 int argc, | 185 int argc, |
181 LInstruction* instr, | 186 LInstruction* instr, |
182 LOperand* context); | 187 LOperand* context); |
183 | 188 |
184 void LoadContextFromDeferred(LOperand* context); | 189 void LoadContextFromDeferred(LOperand* context); |
185 | 190 |
186 // Generate a direct call to a known function. Expects the function | 191 // Generate a direct call to a known function. Expects the function |
187 // to be in rdi. | 192 // to be in rdi. |
188 void CallKnownFunction(Handle<JSFunction> function, | 193 void CallKnownFunction(Handle<JSFunction> function, |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
369 Label exit_; | 374 Label exit_; |
370 Label done_; | 375 Label done_; |
371 Label* external_exit_; | 376 Label* external_exit_; |
372 int instruction_index_; | 377 int instruction_index_; |
373 }; | 378 }; |
374 | 379 |
375 } // namespace internal | 380 } // namespace internal |
376 } // namespace v8 | 381 } // namespace v8 |
377 | 382 |
378 #endif // V8_CRANKSHAFT_X64_LITHIUM_CODEGEN_X64_H_ | 383 #endif // V8_CRANKSHAFT_X64_LITHIUM_CODEGEN_X64_H_ |
OLD | NEW |