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 #include "src/compiler/machine-operator.h" | 5 #include "src/compiler/machine-operator.h" |
6 | 6 |
7 #include "src/base/lazy-instance.h" | 7 #include "src/base/lazy-instance.h" |
8 #include "src/compiler/opcodes.h" | 8 #include "src/compiler/opcodes.h" |
9 #include "src/compiler/operator.h" | 9 #include "src/compiler/operator.h" |
10 | 10 |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 V(Float64LessThanOrEqual, Operator::kNoProperties, 2, 0, 1) \ | 191 V(Float64LessThanOrEqual, Operator::kNoProperties, 2, 0, 1) \ |
192 V(Float64ExtractLowWord32, Operator::kNoProperties, 1, 0, 1) \ | 192 V(Float64ExtractLowWord32, Operator::kNoProperties, 1, 0, 1) \ |
193 V(Float64ExtractHighWord32, Operator::kNoProperties, 1, 0, 1) \ | 193 V(Float64ExtractHighWord32, Operator::kNoProperties, 1, 0, 1) \ |
194 V(Float64InsertLowWord32, Operator::kNoProperties, 2, 0, 1) \ | 194 V(Float64InsertLowWord32, Operator::kNoProperties, 2, 0, 1) \ |
195 V(Float64InsertHighWord32, Operator::kNoProperties, 2, 0, 1) \ | 195 V(Float64InsertHighWord32, Operator::kNoProperties, 2, 0, 1) \ |
196 V(LoadStackPointer, Operator::kNoProperties, 0, 0, 1) \ | 196 V(LoadStackPointer, Operator::kNoProperties, 0, 0, 1) \ |
197 V(LoadFramePointer, Operator::kNoProperties, 0, 0, 1) \ | 197 V(LoadFramePointer, Operator::kNoProperties, 0, 0, 1) \ |
198 V(LoadParentFramePointer, Operator::kNoProperties, 0, 0, 1) \ | 198 V(LoadParentFramePointer, Operator::kNoProperties, 0, 0, 1) \ |
199 V(Int32PairAdd, Operator::kNoProperties, 4, 0, 2) \ | 199 V(Int32PairAdd, Operator::kNoProperties, 4, 0, 2) \ |
200 V(Int32PairSub, Operator::kNoProperties, 4, 0, 2) \ | 200 V(Int32PairSub, Operator::kNoProperties, 4, 0, 2) \ |
| 201 V(Int32PairMul, Operator::kNoProperties, 4, 0, 2) \ |
201 V(Word32PairShl, Operator::kNoProperties, 3, 0, 2) \ | 202 V(Word32PairShl, Operator::kNoProperties, 3, 0, 2) \ |
202 V(Word32PairShr, Operator::kNoProperties, 3, 0, 2) \ | 203 V(Word32PairShr, Operator::kNoProperties, 3, 0, 2) \ |
203 V(Word32PairSar, Operator::kNoProperties, 3, 0, 2) | 204 V(Word32PairSar, Operator::kNoProperties, 3, 0, 2) |
204 | 205 |
205 #define PURE_OPTIONAL_OP_LIST(V) \ | 206 #define PURE_OPTIONAL_OP_LIST(V) \ |
206 V(Word32Ctz, Operator::kNoProperties, 1, 0, 1) \ | 207 V(Word32Ctz, Operator::kNoProperties, 1, 0, 1) \ |
207 V(Word64Ctz, Operator::kNoProperties, 1, 0, 1) \ | 208 V(Word64Ctz, Operator::kNoProperties, 1, 0, 1) \ |
208 V(Word32ReverseBits, Operator::kNoProperties, 1, 0, 1) \ | 209 V(Word32ReverseBits, Operator::kNoProperties, 1, 0, 1) \ |
209 V(Word64ReverseBits, Operator::kNoProperties, 1, 0, 1) \ | 210 V(Word64ReverseBits, Operator::kNoProperties, 1, 0, 1) \ |
210 V(Word32Popcnt, Operator::kNoProperties, 1, 0, 1) \ | 211 V(Word32Popcnt, Operator::kNoProperties, 1, 0, 1) \ |
(...skipping 270 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
481 | 482 |
482 // On 32 bit platforms we need to get a reference to optional operators of | 483 // On 32 bit platforms we need to get a reference to optional operators of |
483 // 64-bit instructions for later Int64Lowering, even though 32 bit platforms | 484 // 64-bit instructions for later Int64Lowering, even though 32 bit platforms |
484 // don't support the original 64-bit instruction. | 485 // don't support the original 64-bit instruction. |
485 const Operator* MachineOperatorBuilder::Word64CtzPlaceholder() { | 486 const Operator* MachineOperatorBuilder::Word64CtzPlaceholder() { |
486 return &cache_.kWord64Ctz; | 487 return &cache_.kWord64Ctz; |
487 } | 488 } |
488 } // namespace compiler | 489 } // namespace compiler |
489 } // namespace internal | 490 } // namespace internal |
490 } // namespace v8 | 491 } // namespace v8 |
OLD | NEW |