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

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

Issue 2641843002: [turbofan] Lower JSLoadMessage/JSStoreMessage earlier. (Closed)
Patch Set: 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 unified diff | Download patch
« no previous file with comments | « src/compiler/access-builder.cc ('k') | src/compiler/js-operator.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 528 matching lines...) Expand 10 before | Expand all | Expand 10 after
539 void JSGenericLowering::LowerJSForInNext(Node* node) { 539 void JSGenericLowering::LowerJSForInNext(Node* node) {
540 ReplaceWithRuntimeCall(node, Runtime::kForInNext); 540 ReplaceWithRuntimeCall(node, Runtime::kForInNext);
541 } 541 }
542 542
543 543
544 void JSGenericLowering::LowerJSForInPrepare(Node* node) { 544 void JSGenericLowering::LowerJSForInPrepare(Node* node) {
545 ReplaceWithRuntimeCall(node, Runtime::kForInPrepare); 545 ReplaceWithRuntimeCall(node, Runtime::kForInPrepare);
546 } 546 }
547 547
548 void JSGenericLowering::LowerJSLoadMessage(Node* node) { 548 void JSGenericLowering::LowerJSLoadMessage(Node* node) {
549 ExternalReference message_address = 549 UNREACHABLE(); // Eliminated in typed lowering.
550 ExternalReference::address_of_pending_message_obj(isolate());
551 node->RemoveInput(NodeProperties::FirstContextIndex(node));
552 node->InsertInput(zone(), 0, jsgraph()->ExternalConstant(message_address));
553 node->InsertInput(zone(), 1, jsgraph()->IntPtrConstant(0));
554 NodeProperties::ChangeOp(node, machine()->Load(MachineType::AnyTagged()));
555 } 550 }
556 551
557 552
558 void JSGenericLowering::LowerJSStoreMessage(Node* node) { 553 void JSGenericLowering::LowerJSStoreMessage(Node* node) {
559 ExternalReference message_address = 554 UNREACHABLE(); // Eliminated in typed lowering.
560 ExternalReference::address_of_pending_message_obj(isolate());
561 node->RemoveInput(NodeProperties::FirstContextIndex(node));
562 node->InsertInput(zone(), 0, jsgraph()->ExternalConstant(message_address));
563 node->InsertInput(zone(), 1, jsgraph()->IntPtrConstant(0));
564 StoreRepresentation representation(MachineRepresentation::kTagged,
565 kNoWriteBarrier);
566 NodeProperties::ChangeOp(node, machine()->Store(representation));
567 } 555 }
568 556
569 void JSGenericLowering::LowerJSLoadModule(Node* node) { 557 void JSGenericLowering::LowerJSLoadModule(Node* node) {
570 UNREACHABLE(); // Eliminated in typed lowering. 558 UNREACHABLE(); // Eliminated in typed lowering.
571 } 559 }
572 560
573 void JSGenericLowering::LowerJSStoreModule(Node* node) { 561 void JSGenericLowering::LowerJSStoreModule(Node* node) {
574 UNREACHABLE(); // Eliminated in typed lowering. 562 UNREACHABLE(); // Eliminated in typed lowering.
575 } 563 }
576 564
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
643 } 631 }
644 632
645 633
646 MachineOperatorBuilder* JSGenericLowering::machine() const { 634 MachineOperatorBuilder* JSGenericLowering::machine() const {
647 return jsgraph()->machine(); 635 return jsgraph()->machine();
648 } 636 }
649 637
650 } // namespace compiler 638 } // namespace compiler
651 } // namespace internal 639 } // namespace internal
652 } // namespace v8 640 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/access-builder.cc ('k') | src/compiler/js-operator.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698