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

Side by Side Diff: src/arm64/lithium-codegen-arm64.h

Issue 817483005: LCodeGen::CallKnownFunction gets the function in register. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fix arm Created 5 years, 11 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
« no previous file with comments | « src/arm/lithium-codegen-arm.cc ('k') | src/arm64/lithium-codegen-arm64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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_ARM64_LITHIUM_CODEGEN_ARM64_H_ 5 #ifndef V8_ARM64_LITHIUM_CODEGEN_ARM64_H_
6 #define V8_ARM64_LITHIUM_CODEGEN_ARM64_H_ 6 #define V8_ARM64_LITHIUM_CODEGEN_ARM64_H_
7 7
8 #include "src/arm64/lithium-arm64.h" 8 #include "src/arm64/lithium-arm64.h"
9 9
10 #include "src/arm64/lithium-gap-resolver-arm64.h" 10 #include "src/arm64/lithium-gap-resolver-arm64.h"
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 const Runtime::Function* function = Runtime::FunctionForId(id); 311 const Runtime::Function* function = Runtime::FunctionForId(id);
312 CallRuntime(function, num_arguments, instr); 312 CallRuntime(function, num_arguments, instr);
313 } 313 }
314 314
315 void LoadContextFromDeferred(LOperand* context); 315 void LoadContextFromDeferred(LOperand* context);
316 void CallRuntimeFromDeferred(Runtime::FunctionId id, 316 void CallRuntimeFromDeferred(Runtime::FunctionId id,
317 int argc, 317 int argc,
318 LInstruction* instr, 318 LInstruction* instr,
319 LOperand* context); 319 LOperand* context);
320 320
321 // Generate a direct call to a known function. 321 // Generate a direct call to a known function. Expects the function
322 // If the function is already loaded into x1 by the caller, function_reg may 322 // to be in x1.
323 // be set to x1. Otherwise, it must be NoReg, and CallKnownFunction will
324 // automatically load it.
325 void CallKnownFunction(Handle<JSFunction> function, 323 void CallKnownFunction(Handle<JSFunction> function,
326 int formal_parameter_count, 324 int formal_parameter_count, int arity,
327 int arity, 325 LInstruction* instr);
328 LInstruction* instr,
329 Register function_reg = NoReg);
330 326
331 // Support for recording safepoint and position information. 327 // Support for recording safepoint and position information.
332 void RecordAndWritePosition(int position) OVERRIDE; 328 void RecordAndWritePosition(int position) OVERRIDE;
333 void RecordSafepoint(LPointerMap* pointers, 329 void RecordSafepoint(LPointerMap* pointers,
334 Safepoint::Kind kind, 330 Safepoint::Kind kind,
335 int arguments, 331 int arguments,
336 Safepoint::DeoptMode mode); 332 Safepoint::DeoptMode mode);
337 void RecordSafepoint(LPointerMap* pointers, Safepoint::DeoptMode mode); 333 void RecordSafepoint(LPointerMap* pointers, Safepoint::DeoptMode mode);
338 void RecordSafepoint(Safepoint::DeoptMode mode); 334 void RecordSafepoint(Safepoint::DeoptMode mode);
339 void RecordSafepointWithRegisters(LPointerMap* pointers, 335 void RecordSafepointWithRegisters(LPointerMap* pointers,
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 455
460 protected: 456 protected:
461 MacroAssembler* masm() const { return codegen_->masm(); } 457 MacroAssembler* masm() const { return codegen_->masm(); }
462 458
463 LCodeGen* codegen_; 459 LCodeGen* codegen_;
464 }; 460 };
465 461
466 } } // namespace v8::internal 462 } } // namespace v8::internal
467 463
468 #endif // V8_ARM64_LITHIUM_CODEGEN_ARM64_H_ 464 #endif // V8_ARM64_LITHIUM_CODEGEN_ARM64_H_
OLDNEW
« no previous file with comments | « src/arm/lithium-codegen-arm.cc ('k') | src/arm64/lithium-codegen-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698