| OLD | NEW | 
|    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_SELECTOR_H_ |    5 #ifndef V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 
|    6 #define V8_COMPILER_INSTRUCTION_SELECTOR_H_ |    6 #define V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 
|    7  |    7  | 
|    8 #include <map> |    8 #include <map> | 
|    9  |    9  | 
|   10 #include "src/compiler/common-operator.h" |   10 #include "src/compiler/common-operator.h" | 
|   11 #include "src/compiler/instruction.h" |   11 #include "src/compiler/instruction.h" | 
|   12 #include "src/compiler/machine-operator.h" |   12 #include "src/compiler/machine-operator.h" | 
|   13 #include "src/compiler/node.h" |   13 #include "src/compiler/node.h" | 
|   14 #include "src/zone-containers.h" |   14 #include "src/zone-containers.h" | 
|   15  |   15  | 
|   16 namespace v8 { |   16 namespace v8 { | 
|   17 namespace internal { |   17 namespace internal { | 
|   18 namespace compiler { |   18 namespace compiler { | 
|   19  |   19  | 
|   20 // Forward declarations. |   20 // Forward declarations. | 
|   21 class BasicBlock; |   21 class BasicBlock; | 
|   22 struct CallBuffer;  // TODO(bmeurer): Remove this. |   22 struct CallBuffer;  // TODO(bmeurer): Remove this. | 
|   23 class FlagsContinuation; |   23 class FlagsContinuation; | 
|   24 class Linkage; |   24 class Linkage; | 
|   25 class OperandGenerator; |   25 class OperandGenerator; | 
|   26 struct SwitchInfo; |   26 struct SwitchInfo; | 
|   27  |   27  | 
|   28 typedef ZoneVector<InstructionOperand> InstructionOperandVector; |  | 
|   29  |  | 
|   30  |  | 
|   31 // Instruction selection generates an InstructionSequence for a given Schedule. |   28 // Instruction selection generates an InstructionSequence for a given Schedule. | 
|   32 class InstructionSelector final { |   29 class InstructionSelector final { | 
|   33  public: |   30  public: | 
|   34   // Forward declarations. |   31   // Forward declarations. | 
|   35   class Features; |   32   class Features; | 
|   36  |   33  | 
|   37   enum SourcePositionMode { kCallSourcePositions, kAllSourcePositions }; |   34   enum SourcePositionMode { kCallSourcePositions, kAllSourcePositions }; | 
|   38  |   35  | 
|   39   InstructionSelector( |   36   InstructionSelector( | 
|   40       Zone* zone, size_t node_count, Linkage* linkage, |   37       Zone* zone, size_t node_count, Linkage* linkage, | 
| (...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  242   BoolVector defined_; |  239   BoolVector defined_; | 
|  243   BoolVector used_; |  240   BoolVector used_; | 
|  244   IntVector virtual_registers_; |  241   IntVector virtual_registers_; | 
|  245 }; |  242 }; | 
|  246  |  243  | 
|  247 }  // namespace compiler |  244 }  // namespace compiler | 
|  248 }  // namespace internal |  245 }  // namespace internal | 
|  249 }  // namespace v8 |  246 }  // namespace v8 | 
|  250  |  247  | 
|  251 #endif  // V8_COMPILER_INSTRUCTION_SELECTOR_H_ |  248 #endif  // V8_COMPILER_INSTRUCTION_SELECTOR_H_ | 
| OLD | NEW |