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

Side by Side Diff: src/compiler/instruction.h

Issue 2452403003: Changed statement ZoneList to a ZoneChunkList
Patch Set: Created 4 years, 1 month 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/ast/prettyprinter.cc ('k') | src/compiler/instruction.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 #ifndef V8_COMPILER_INSTRUCTION_H_ 5 #ifndef V8_COMPILER_INSTRUCTION_H_
6 #define V8_COMPILER_INSTRUCTION_H_ 6 #define V8_COMPILER_INSTRUCTION_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <iosfwd> 9 #include <iosfwd>
10 #include <map> 10 #include <map>
11 #include <set> 11 #include <set>
12 12
13 #include "src/base/compiler-specific.h" 13 #include "src/base/compiler-specific.h"
14 #include "src/compiler/common-operator.h" 14 #include "src/compiler/common-operator.h"
15 #include "src/compiler/frame.h" 15 #include "src/compiler/frame.h"
16 #include "src/compiler/instruction-codes.h" 16 #include "src/compiler/instruction-codes.h"
17 #include "src/compiler/opcodes.h" 17 #include "src/compiler/opcodes.h"
18 #include "src/compiler/source-position.h" 18 #include "src/compiler/source-position.h"
19 #include "src/globals.h" 19 #include "src/globals.h"
20 #include "src/macro-assembler.h" 20 #include "src/macro-assembler.h"
21 #include "src/register-configuration.h" 21 #include "src/register-configuration.h"
22 #include "src/zone/zone-allocator.h" 22 #include "src/zone/zone-allocator.h"
23 #include "src/zone/zone-chunk-list.h"
23 24
24 namespace v8 { 25 namespace v8 {
25 namespace internal { 26 namespace internal {
26 namespace compiler { 27 namespace compiler {
27 28
28 // Forward declarations. 29 // Forward declarations.
29 class Schedule; 30 class Schedule;
30 31
31 class V8_EXPORT_PRIVATE InstructionOperand { 32 class V8_EXPORT_PRIVATE InstructionOperand {
32 public: 33 public:
(...skipping 685 matching lines...) Expand 10 before | Expand all | Expand 10 after
718 719
719 struct PrintableMoveOperands { 720 struct PrintableMoveOperands {
720 const RegisterConfiguration* register_configuration_; 721 const RegisterConfiguration* register_configuration_;
721 const MoveOperands* move_operands_; 722 const MoveOperands* move_operands_;
722 }; 723 };
723 724
724 725
725 std::ostream& operator<<(std::ostream& os, const PrintableMoveOperands& mo); 726 std::ostream& operator<<(std::ostream& os, const PrintableMoveOperands& mo);
726 727
727 class V8_EXPORT_PRIVATE ParallelMove final 728 class V8_EXPORT_PRIVATE ParallelMove final
728 : public NON_EXPORTED_BASE(ZoneVector<MoveOperands *>), 729 : public NON_EXPORTED_BASE(ZoneVector<MoveOperands*>) {
729 public NON_EXPORTED_BASE(ZoneObject) {
730 public: 730 public:
731 explicit ParallelMove(Zone* zone) : ZoneVector<MoveOperands*>(zone) { 731 explicit ParallelMove(Zone* zone) : ZoneVector<MoveOperands*>(zone) {
732 reserve(4); 732 reserve(4);
733 } 733 }
734 734
735 MoveOperands* AddMove(const InstructionOperand& from, 735 MoveOperands* AddMove(const InstructionOperand& from,
736 const InstructionOperand& to) { 736 const InstructionOperand& to) {
737 Zone* zone = get_allocator().zone(); 737 Zone* zone = get_allocator().zone();
738 return AddMove(from, to, zone); 738 return AddMove(from, to, zone);
739 } 739 }
(...skipping 20 matching lines...) Expand all
760 760
761 761
762 struct PrintableParallelMove { 762 struct PrintableParallelMove {
763 const RegisterConfiguration* register_configuration_; 763 const RegisterConfiguration* register_configuration_;
764 const ParallelMove* parallel_move_; 764 const ParallelMove* parallel_move_;
765 }; 765 };
766 766
767 767
768 std::ostream& operator<<(std::ostream& os, const PrintableParallelMove& pm); 768 std::ostream& operator<<(std::ostream& os, const PrintableParallelMove& pm);
769 769
770
771 class ReferenceMap final : public ZoneObject { 770 class ReferenceMap final : public ZoneObject {
772 public: 771 public:
773 explicit ReferenceMap(Zone* zone) 772 explicit ReferenceMap(Zone* zone)
774 : reference_operands_(8, zone), instruction_position_(-1) {} 773 : reference_operands_(8, zone), instruction_position_(-1) {}
775 774
776 const ZoneVector<InstructionOperand>& reference_operands() const { 775 const ZoneVector<InstructionOperand>& reference_operands() const {
777 return reference_operands_; 776 return reference_operands_;
778 } 777 }
779 int instruction_position() const { return instruction_position_; } 778 int instruction_position() const { return instruction_position_; }
780 779
(...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after
1141 StateValueDescriptor(StateValueKind kind, Zone* zone, MachineType type, 1140 StateValueDescriptor(StateValueKind kind, Zone* zone, MachineType type,
1142 size_t id) 1141 size_t id)
1143 : kind_(kind), type_(type), id_(id), fields_(zone) {} 1142 : kind_(kind), type_(type), id_(id), fields_(zone) {}
1144 1143
1145 StateValueKind kind_; 1144 StateValueKind kind_;
1146 MachineType type_; 1145 MachineType type_;
1147 size_t id_; 1146 size_t id_;
1148 ZoneVector<StateValueDescriptor> fields_; 1147 ZoneVector<StateValueDescriptor> fields_;
1149 }; 1148 };
1150 1149
1151
1152 class FrameStateDescriptor : public ZoneObject { 1150 class FrameStateDescriptor : public ZoneObject {
1153 public: 1151 public:
1154 FrameStateDescriptor(Zone* zone, FrameStateType type, BailoutId bailout_id, 1152 FrameStateDescriptor(Zone* zone, FrameStateType type, BailoutId bailout_id,
1155 OutputFrameStateCombine state_combine, 1153 OutputFrameStateCombine state_combine,
1156 size_t parameters_count, size_t locals_count, 1154 size_t parameters_count, size_t locals_count,
1157 size_t stack_count, 1155 size_t stack_count,
1158 MaybeHandle<SharedFunctionInfo> shared_info, 1156 MaybeHandle<SharedFunctionInfo> shared_info,
1159 FrameStateDescriptor* outer_state = nullptr); 1157 FrameStateDescriptor* outer_state = nullptr);
1160 1158
1161 FrameStateType type() const { return type_; } 1159 FrameStateType type() const { return type_; }
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after
1536 }; 1534 };
1537 1535
1538 V8_EXPORT_PRIVATE std::ostream& operator<<( 1536 V8_EXPORT_PRIVATE std::ostream& operator<<(
1539 std::ostream& os, const PrintableInstructionSequence& code); 1537 std::ostream& os, const PrintableInstructionSequence& code);
1540 1538
1541 } // namespace compiler 1539 } // namespace compiler
1542 } // namespace internal 1540 } // namespace internal
1543 } // namespace v8 1541 } // namespace v8
1544 1542
1545 #endif // V8_COMPILER_INSTRUCTION_H_ 1543 #endif // V8_COMPILER_INSTRUCTION_H_
OLDNEW
« no previous file with comments | « src/ast/prettyprinter.cc ('k') | src/compiler/instruction.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698