| Index: src/compiler/js-generic-lowering.cc
|
| diff --git a/src/compiler/js-generic-lowering.cc b/src/compiler/js-generic-lowering.cc
|
| index 4937b1dea37f3b3db16049fb57eecb4a6f19a602..b9b3c50cefb8f72a2532916057d210e33c4e399f 100644
|
| --- a/src/compiler/js-generic-lowering.cc
|
| +++ b/src/compiler/js-generic-lowering.cc
|
| @@ -114,21 +114,12 @@ REPLACE_COMPARE_IC_CALL_WITH_LANGUAGE_MODE(JSGreaterThanOrEqual, Token::GTE)
|
| void JSGenericLowering::Lower##op(Node* node) { \
|
| ReplaceWithRuntimeCall(node, fun); \
|
| }
|
| -REPLACE_RUNTIME_CALL(JSCreate, Runtime::kAbort)
|
| REPLACE_RUNTIME_CALL(JSCreateFunctionContext, Runtime::kNewFunctionContext)
|
| REPLACE_RUNTIME_CALL(JSCreateWithContext, Runtime::kPushWithContext)
|
| -REPLACE_RUNTIME_CALL(JSCreateBlockContext, Runtime::kPushBlockContext)
|
| REPLACE_RUNTIME_CALL(JSCreateModuleContext, Runtime::kPushModuleContext)
|
| -REPLACE_RUNTIME_CALL(JSCreateScriptContext, Runtime::kNewScriptContext)
|
| #undef REPLACE_RUNTIME
|
|
|
|
|
| -#define REPLACE_UNIMPLEMENTED(op) \
|
| - void JSGenericLowering::Lower##op(Node* node) { UNIMPLEMENTED(); }
|
| -REPLACE_UNIMPLEMENTED(JSYield)
|
| -#undef REPLACE_UNIMPLEMENTED
|
| -
|
| -
|
| static CallDescriptor::Flags FlagsForNode(Node* node) {
|
| CallDescriptor::Flags result = CallDescriptor::kNoFlags;
|
| if (OperatorProperties::GetFrameStateInputCount(node->op()) > 0) {
|
| @@ -489,6 +480,9 @@ void JSGenericLowering::LowerJSLoadDynamicContext(Node* node) {
|
| }
|
|
|
|
|
| +void JSGenericLowering::LowerJSCreate(Node* node) { UNIMPLEMENTED(); }
|
| +
|
| +
|
| void JSGenericLowering::LowerJSCreateArguments(Node* node) {
|
| const CreateArgumentsParameters& p = CreateArgumentsParametersOf(node->op());
|
| switch (p.type()) {
|
| @@ -535,6 +529,20 @@ void JSGenericLowering::LowerJSCreateCatchContext(Node* node) {
|
| }
|
|
|
|
|
| +void JSGenericLowering::LowerJSCreateBlockContext(Node* node) {
|
| + Handle<ScopeInfo> scope_info = OpParameter<Handle<ScopeInfo>>(node);
|
| + node->InsertInput(zone(), 0, jsgraph()->HeapConstant(scope_info));
|
| + ReplaceWithRuntimeCall(node, Runtime::kPushBlockContext);
|
| +}
|
| +
|
| +
|
| +void JSGenericLowering::LowerJSCreateScriptContext(Node* node) {
|
| + Handle<ScopeInfo> scope_info = OpParameter<Handle<ScopeInfo>>(node);
|
| + node->InsertInput(zone(), 1, jsgraph()->HeapConstant(scope_info));
|
| + ReplaceWithRuntimeCall(node, Runtime::kNewScriptContext);
|
| +}
|
| +
|
| +
|
| void JSGenericLowering::LowerJSCallConstruct(Node* node) {
|
| int arity = OpParameter<int>(node);
|
| CallConstructStub stub(isolate(), SUPER_CONSTRUCTOR_CALL);
|
| @@ -784,6 +792,9 @@ void JSGenericLowering::LowerJSForInStep(Node* node) {
|
| }
|
|
|
|
|
| +void JSGenericLowering::LowerJSYield(Node* node) { UNIMPLEMENTED(); }
|
| +
|
| +
|
| void JSGenericLowering::LowerJSStackCheck(Node* node) {
|
| Node* effect = NodeProperties::GetEffectInput(node);
|
| Node* control = NodeProperties::GetControlInput(node);
|
|
|