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

Side by Side Diff: src/compiler/js-generic-lowering.cc

Issue 2763533002: [WIP] JSForInLowering and JSForInHasOwnProperty.
Patch Set: Hack around the issue with indices not being available always. Created 3 years, 9 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/compiler/js-for-in-lowering.cc ('k') | src/compiler/js-native-context-specialization.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 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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 #include "src/compiler/js-generic-lowering.h" 5 #include "src/compiler/js-generic-lowering.h"
6 6
7 #include "src/ast/ast.h" 7 #include "src/ast/ast.h"
8 #include "src/builtins/builtins-constructor.h" 8 #include "src/builtins/builtins-constructor.h"
9 #include "src/code-factory.h" 9 #include "src/code-factory.h"
10 #include "src/code-stubs.h" 10 #include "src/code-stubs.h"
(...skipping 575 matching lines...) Expand 10 before | Expand all | Expand 10 after
586 586
587 void JSGenericLowering::LowerJSCallRuntime(Node* node) { 587 void JSGenericLowering::LowerJSCallRuntime(Node* node) {
588 const CallRuntimeParameters& p = CallRuntimeParametersOf(node->op()); 588 const CallRuntimeParameters& p = CallRuntimeParametersOf(node->op());
589 ReplaceWithRuntimeCall(node, p.id(), static_cast<int>(p.arity())); 589 ReplaceWithRuntimeCall(node, p.id(), static_cast<int>(p.arity()));
590 } 590 }
591 591
592 void JSGenericLowering::LowerJSConvertReceiver(Node* node) { 592 void JSGenericLowering::LowerJSConvertReceiver(Node* node) {
593 ReplaceWithRuntimeCall(node, Runtime::kConvertReceiver); 593 ReplaceWithRuntimeCall(node, Runtime::kConvertReceiver);
594 } 594 }
595 595
596 void JSGenericLowering::LowerJSForInHasOwnProperty(Node* node) {
597 UNREACHABLE(); // Eliminated in JSForInLowering.
598 }
599
600 void JSGenericLowering::LowerJSForInLoadProperty(Node* node) {
601 UNREACHABLE(); // Eliminated in JSForInLowering.
602 }
603
596 void JSGenericLowering::LowerJSForInNext(Node* node) { 604 void JSGenericLowering::LowerJSForInNext(Node* node) {
597 CallDescriptor::Flags flags = FrameStateFlagForCall(node); 605 UNREACHABLE(); // Eliminated in JSForInLowering.
598 Callable callable = CodeFactory::ForInNext(isolate());
599 ReplaceWithStubCall(node, callable, flags);
600 } 606 }
601 607
602 void JSGenericLowering::LowerJSForInPrepare(Node* node) { 608 void JSGenericLowering::LowerJSForInPrepare(Node* node) {
603 CallDescriptor::Flags flags = FrameStateFlagForCall(node); 609 UNREACHABLE(); // Eliminated in JSForInLowering.
604 Callable callable = CodeFactory::ForInPrepare(isolate());
605 ReplaceWithStubCall(node, callable, flags, node->op()->properties(), 3);
606 } 610 }
607 611
608 void JSGenericLowering::LowerJSLoadMessage(Node* node) { 612 void JSGenericLowering::LowerJSLoadMessage(Node* node) {
609 UNREACHABLE(); // Eliminated in typed lowering. 613 UNREACHABLE(); // Eliminated in typed lowering.
610 } 614 }
611 615
612 616
613 void JSGenericLowering::LowerJSStoreMessage(Node* node) { 617 void JSGenericLowering::LowerJSStoreMessage(Node* node) {
614 UNREACHABLE(); // Eliminated in typed lowering. 618 UNREACHABLE(); // Eliminated in typed lowering.
615 } 619 }
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 } 708 }
705 709
706 710
707 MachineOperatorBuilder* JSGenericLowering::machine() const { 711 MachineOperatorBuilder* JSGenericLowering::machine() const {
708 return jsgraph()->machine(); 712 return jsgraph()->machine();
709 } 713 }
710 714
711 } // namespace compiler 715 } // namespace compiler
712 } // namespace internal 716 } // namespace internal
713 } // namespace v8 717 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/js-for-in-lowering.cc ('k') | src/compiler/js-native-context-specialization.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698