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

Unified Diff: src/builtins/builtins.h

Issue 2649143002: [Turbofan] Implement call with spread bytecode in assembly code. (Closed)
Patch Set: Mips ports Created 3 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 side-by-side diff with in-line comments
Download patch
Index: src/builtins/builtins.h
diff --git a/src/builtins/builtins.h b/src/builtins/builtins.h
index 5673ce21e0901bff74b36a0c7400e7a7d813a199..8b31351e909101efc3673a45567db6c98fa9a76e 100644
--- a/src/builtins/builtins.h
+++ b/src/builtins/builtins.h
@@ -74,6 +74,7 @@ namespace internal {
ASM(TailCall_ReceiverIsNullOrUndefined) \
ASM(TailCall_ReceiverIsNotNullOrUndefined) \
ASM(TailCall_ReceiverIsAny) \
+ ASM(CallWithSpread) \
\
/* Construct */ \
/* ES6 section 9.2.2 [[Construct]] ( argumentsList, newTarget) */ \
@@ -139,6 +140,7 @@ namespace internal {
ASM(InterpreterEntryTrampoline) \
ASM(InterpreterPushArgsAndCall) \
ASM(InterpreterPushArgsAndCallFunction) \
+ ASM(InterpreterPushArgsAndCallWithFinalSpread) \
ASM(InterpreterPushArgsAndTailCall) \
ASM(InterpreterPushArgsAndTailCallFunction) \
ASM(InterpreterPushArgsAndConstruct) \
@@ -805,7 +807,7 @@ namespace internal {
// Forward declarations.
class ObjectVisitor;
-enum class PushArgsConstructMode : unsigned;
+enum class PushArgsMode : unsigned;
namespace compiler {
class CodeAssemblerState;
}
@@ -847,10 +849,9 @@ class Builtins {
Handle<Code> NonPrimitiveToPrimitive(
ToPrimitiveHint hint = ToPrimitiveHint::kDefault);
Handle<Code> OrdinaryToPrimitive(OrdinaryToPrimitiveHint hint);
- Handle<Code> InterpreterPushArgsAndCall(
- TailCallMode tail_call_mode,
- CallableType function_type = CallableType::kAny);
- Handle<Code> InterpreterPushArgsAndConstruct(PushArgsConstructMode mode);
+ Handle<Code> InterpreterPushArgsAndCall(TailCallMode tail_call_mode,
+ PushArgsMode mode);
+ Handle<Code> InterpreterPushArgsAndConstruct(PushArgsMode mode);
Handle<Code> NewFunctionContext(ScopeType scope_type);
Handle<Code> NewCloneShallowArray(AllocationSiteMode allocation_mode);
Handle<Code> NewCloneShallowObject(int length);
@@ -904,11 +905,10 @@ class Builtins {
TailCallMode tail_call_mode);
static void Generate_InterpreterPushArgsAndCallImpl(
- MacroAssembler* masm, TailCallMode tail_call_mode,
- CallableType function_type);
+ MacroAssembler* masm, TailCallMode tail_call_mode, PushArgsMode mode);
- static void Generate_InterpreterPushArgsAndConstructImpl(
- MacroAssembler* masm, PushArgsConstructMode mode);
+ static void Generate_InterpreterPushArgsAndConstructImpl(MacroAssembler* masm,
+ PushArgsMode mode);
enum class MathMaxMinKind { kMax, kMin };
static void Generate_MathMaxMin(MacroAssembler* masm, MathMaxMinKind kind);

Powered by Google App Engine
This is Rietveld 408576698