OLD | NEW |
---|---|
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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_SIMD_SCALAR_LOWERING_H_ | 5 #ifndef V8_COMPILER_SIMD_SCALAR_LOWERING_H_ |
6 #define V8_COMPILER_SIMD_SCALAR_LOWERING_H_ | 6 #define V8_COMPILER_SIMD_SCALAR_LOWERING_H_ |
7 | 7 |
8 #include "src/compiler/common-operator.h" | 8 #include "src/compiler/common-operator.h" |
9 #include "src/compiler/graph.h" | 9 #include "src/compiler/graph.h" |
10 #include "src/compiler/machine-operator.h" | 10 #include "src/compiler/machine-operator.h" |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
46 void LowerNode(Node* node); | 46 void LowerNode(Node* node); |
47 bool DefaultLowering(Node* node); | 47 bool DefaultLowering(Node* node); |
48 | 48 |
49 void ReplaceNode(Node* old, Node** new_nodes); | 49 void ReplaceNode(Node* old, Node** new_nodes); |
50 bool HasReplacement(size_t index, Node* node); | 50 bool HasReplacement(size_t index, Node* node); |
51 Node** GetReplacements(Node* node); | 51 Node** GetReplacements(Node* node); |
52 Node** GetReplacementsWithType(Node* node, SimdType type); | 52 Node** GetReplacementsWithType(Node* node, SimdType type); |
53 SimdType ReplacementType(Node* node); | 53 SimdType ReplacementType(Node* node); |
54 void PreparePhiReplacement(Node* phi); | 54 void PreparePhiReplacement(Node* phi); |
55 void SetLoweredType(Node* node, Node* output); | 55 void SetLoweredType(Node* node, Node* output); |
56 void GetIndexNodes(Node* index, Node** new_indices); | |
Mircea Trofin
2016/11/15 16:21:27
Is 'Index' part of the SIMD nomenclature? It sound
aseemgarg
2016/11/19 01:56:54
It isn't. it represents index for load or store. T
| |
56 | 57 |
57 struct NodeState { | 58 struct NodeState { |
58 Node* node; | 59 Node* node; |
59 int input_index; | 60 int input_index; |
60 }; | 61 }; |
61 | 62 |
62 Zone* zone_; | 63 Zone* zone_; |
63 Graph* const graph_; | 64 Graph* const graph_; |
64 MachineOperatorBuilder* machine_; | 65 MachineOperatorBuilder* machine_; |
65 CommonOperatorBuilder* common_; | 66 CommonOperatorBuilder* common_; |
66 NodeMarker<State> state_; | 67 NodeMarker<State> state_; |
67 ZoneDeque<NodeState> stack_; | 68 ZoneDeque<NodeState> stack_; |
68 Replacement* replacements_; | 69 Replacement* replacements_; |
69 Signature<MachineRepresentation>* signature_; | 70 Signature<MachineRepresentation>* signature_; |
70 Node* placeholder_; | 71 Node* placeholder_; |
71 int parameter_count_after_lowering_; | 72 int parameter_count_after_lowering_; |
72 }; | 73 }; |
73 | 74 |
74 } // namespace compiler | 75 } // namespace compiler |
75 } // namespace internal | 76 } // namespace internal |
76 } // namespace v8 | 77 } // namespace v8 |
77 | 78 |
78 #endif // V8_COMPILER_SIMD_SCALAR_LOWERING_H_ | 79 #endif // V8_COMPILER_SIMD_SCALAR_LOWERING_H_ |
OLD | NEW |