Index: src/code-factory.cc |
diff --git a/src/code-factory.cc b/src/code-factory.cc |
index 2c7dcef349a367464201c3aa12469c2f21b1f48b..018aa86ed244a6b5bc91f39df9c08adbbbf4233c 100644 |
--- a/src/code-factory.cc |
+++ b/src/code-factory.cc |
@@ -34,6 +34,16 @@ Callable CodeFactory::LoadIC(Isolate* isolate) { |
} |
// static |
+Callable CodeFactory::LoadICProtoArray(Isolate* isolate, |
+ bool throw_if_nonexistent) { |
+ return Callable( |
+ throw_if_nonexistent |
+ ? isolate->builtins()->LoadICProtoArrayThrowIfNonexistent() |
+ : isolate->builtins()->LoadICProtoArray(), |
+ LoadICProtoArrayDescriptor(isolate)); |
+} |
+ |
+// static |
Callable CodeFactory::ApiGetter(Isolate* isolate) { |
CallApiGetterStub stub(isolate); |
return make_callable(stub); |
@@ -76,12 +86,6 @@ Callable CodeFactory::KeyedLoadICInOptimizedCode(Isolate* isolate) { |
} |
// static |
-Callable CodeFactory::KeyedLoadIC_Megamorphic(Isolate* isolate) { |
- return Callable(isolate->builtins()->KeyedLoadIC_Megamorphic_TF(), |
- LoadWithVectorDescriptor(isolate)); |
-} |
- |
-// static |
Callable CodeFactory::CallIC(Isolate* isolate, ConvertReceiverMode mode, |
TailCallMode tail_call_mode) { |
CallICTrampolineStub stub(isolate, CallICState(mode, tail_call_mode)); |
@@ -133,11 +137,10 @@ Callable CodeFactory::KeyedStoreICInOptimizedCode(Isolate* isolate, |
// static |
Callable CodeFactory::KeyedStoreIC_Megamorphic(Isolate* isolate, |
LanguageMode language_mode) { |
- return Callable( |
- language_mode == STRICT |
- ? isolate->builtins()->KeyedStoreIC_Megamorphic_Strict_TF() |
- : isolate->builtins()->KeyedStoreIC_Megamorphic_TF(), |
- StoreWithVectorDescriptor(isolate)); |
+ return Callable(language_mode == STRICT |
+ ? isolate->builtins()->KeyedStoreIC_Megamorphic_Strict() |
+ : isolate->builtins()->KeyedStoreIC_Megamorphic(), |
+ StoreWithVectorDescriptor(isolate)); |
} |
// static |
@@ -159,36 +162,6 @@ Callable CodeFactory::GetProperty(Isolate* isolate) { |
} |
// static |
-Callable CodeFactory::ToBoolean(Isolate* isolate) { |
- return Callable(isolate->builtins()->ToBoolean(), |
- TypeConversionDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::ToNumber(Isolate* isolate) { |
- return Callable(isolate->builtins()->ToNumber(), |
- TypeConversionDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::NonNumberToNumber(Isolate* isolate) { |
- return Callable(isolate->builtins()->NonNumberToNumber(), |
- TypeConversionDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::StringToNumber(Isolate* isolate) { |
- return Callable(isolate->builtins()->StringToNumber(), |
- TypeConversionDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::ToName(Isolate* isolate) { |
- return Callable(isolate->builtins()->ToName(), |
- TypeConversionDescriptor(isolate)); |
-} |
- |
-// static |
Callable CodeFactory::NonPrimitiveToPrimitive(Isolate* isolate, |
ToPrimitiveHint hint) { |
return Callable(isolate->builtins()->NonPrimitiveToPrimitive(hint), |
@@ -254,19 +227,37 @@ TFS_BUILTIN(StrictEqual) |
TFS_BUILTIN(StrictNotEqual) |
TFS_BUILTIN(CreateIterResultObject) |
TFS_BUILTIN(HasProperty) |
+TFS_BUILTIN(NonNumberToNumber) |
+TFS_BUILTIN(StringToNumber) |
+TFS_BUILTIN(ToBoolean) |
TFS_BUILTIN(ToInteger) |
TFS_BUILTIN(ToLength) |
+TFS_BUILTIN(ToName) |
+TFS_BUILTIN(ToNumber) |
TFS_BUILTIN(ToObject) |
TFS_BUILTIN(Typeof) |
TFS_BUILTIN(InstanceOf) |
TFS_BUILTIN(OrdinaryHasInstance) |
-TFS_BUILTIN(ForInFilter) |
+TFS_BUILTIN(CopyFastSmiOrObjectElements) |
+TFS_BUILTIN(GrowFastDoubleElements) |
+TFS_BUILTIN(GrowFastSmiOrObjectElements) |
TFS_BUILTIN(NewUnmappedArgumentsElements) |
TFS_BUILTIN(NewRestParameterElements) |
-TFS_BUILTIN(PromiseHandleReject) |
+TFS_BUILTIN(FastCloneRegExp) |
+TFS_BUILTIN(FastNewClosure) |
+TFS_BUILTIN(FastNewObject) |
+TFS_BUILTIN(ForInFilter) |
TFS_BUILTIN(GetSuperConstructor) |
+TFS_BUILTIN(KeyedLoadIC_Megamorphic) |
+TFS_BUILTIN(PromiseHandleReject) |
TFS_BUILTIN(StringCharAt) |
TFS_BUILTIN(StringCharCodeAt) |
+TFS_BUILTIN(StringEqual) |
+TFS_BUILTIN(StringNotEqual) |
+TFS_BUILTIN(StringLessThan) |
+TFS_BUILTIN(StringLessThanOrEqual) |
+TFS_BUILTIN(StringGreaterThan) |
+TFS_BUILTIN(StringGreaterThanOrEqual) |
#undef TFS_BUILTIN |
@@ -302,42 +293,6 @@ Callable CodeFactory::StringCompare(Isolate* isolate, Token::Value token) { |
} |
// static |
-Callable CodeFactory::StringEqual(Isolate* isolate) { |
- return Callable(isolate->builtins()->StringEqual(), |
- CompareDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::StringNotEqual(Isolate* isolate) { |
- return Callable(isolate->builtins()->StringNotEqual(), |
- CompareDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::StringLessThan(Isolate* isolate) { |
- return Callable(isolate->builtins()->StringLessThan(), |
- CompareDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::StringLessThanOrEqual(Isolate* isolate) { |
- return Callable(isolate->builtins()->StringLessThanOrEqual(), |
- CompareDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::StringGreaterThan(Isolate* isolate) { |
- return Callable(isolate->builtins()->StringGreaterThan(), |
- CompareDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::StringGreaterThanOrEqual(Isolate* isolate) { |
- return Callable(isolate->builtins()->StringGreaterThanOrEqual(), |
- CompareDescriptor(isolate)); |
-} |
- |
-// static |
Callable CodeFactory::SubString(Isolate* isolate) { |
SubStringStub stub(isolate); |
return Callable(stub.GetCode(), stub.GetCallInterfaceDescriptor()); |
@@ -350,12 +305,6 @@ Callable CodeFactory::ResumeGenerator(Isolate* isolate) { |
} |
// static |
-Callable CodeFactory::FastCloneRegExp(Isolate* isolate) { |
- return Callable(isolate->builtins()->FastCloneRegExp(), |
- FastCloneRegExpDescriptor(isolate)); |
-} |
- |
-// static |
Callable CodeFactory::FastCloneShallowArray( |
Isolate* isolate, AllocationSiteMode allocation_mode) { |
return Callable(isolate->builtins()->NewCloneShallowArray(allocation_mode), |
@@ -376,18 +325,6 @@ Callable CodeFactory::FastNewFunctionContext(Isolate* isolate, |
} |
// static |
-Callable CodeFactory::FastNewClosure(Isolate* isolate) { |
- return Callable(isolate->builtins()->FastNewClosure(), |
- FastNewClosureDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::FastNewObject(Isolate* isolate) { |
- return Callable(isolate->builtins()->FastNewObject(), |
- FastNewObjectDescriptor(isolate)); |
-} |
- |
-// static |
Callable CodeFactory::FastNewRestParameter(Isolate* isolate, |
bool skip_stub_frame) { |
FastNewRestParameterStub stub(isolate, skip_stub_frame); |
@@ -409,24 +346,6 @@ Callable CodeFactory::FastNewStrictArguments(Isolate* isolate, |
} |
// static |
-Callable CodeFactory::CopyFastSmiOrObjectElements(Isolate* isolate) { |
- return Callable(isolate->builtins()->CopyFastSmiOrObjectElements(), |
- CopyFastSmiOrObjectElementsDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::GrowFastDoubleElements(Isolate* isolate) { |
- return Callable(isolate->builtins()->GrowFastDoubleElements(), |
- GrowArrayElementsDescriptor(isolate)); |
-} |
- |
-// static |
-Callable CodeFactory::GrowFastSmiOrObjectElements(Isolate* isolate) { |
- return Callable(isolate->builtins()->GrowFastSmiOrObjectElements(), |
- GrowArrayElementsDescriptor(isolate)); |
-} |
- |
-// static |
Callable CodeFactory::AllocateHeapNumber(Isolate* isolate) { |
AllocateHeapNumberStub stub(isolate); |
return make_callable(stub); |