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/simplified-lowering.h" | 5 #include "src/compiler/simplified-lowering.h" |
6 | 6 |
7 #include <limits> | 7 #include <limits> |
8 | 8 |
9 #include "src/address-map.h" | 9 #include "src/address-map.h" |
10 #include "src/base/bits.h" | 10 #include "src/base/bits.h" |
(...skipping 1585 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1596 if (lower()) { | 1596 if (lower()) { |
1597 lowering->DoShift(node, lowering->machine()->Word32Shr(), rhs_type); | 1597 lowering->DoShift(node, lowering->machine()->Word32Shr(), rhs_type); |
1598 } | 1598 } |
1599 return; | 1599 return; |
1600 } | 1600 } |
1601 case IrOpcode::kNumberAbs: { | 1601 case IrOpcode::kNumberAbs: { |
1602 if (InputIs(node, Type::Unsigned32())) { | 1602 if (InputIs(node, Type::Unsigned32())) { |
1603 VisitUnop(node, UseInfo::TruncatingWord32(), | 1603 VisitUnop(node, UseInfo::TruncatingWord32(), |
1604 MachineRepresentation::kWord32); | 1604 MachineRepresentation::kWord32); |
1605 if (lower()) DeferReplacement(node, node->InputAt(0)); | 1605 if (lower()) DeferReplacement(node, node->InputAt(0)); |
1606 } else if (InputIs(node, type_cache_.kSafeSigned32)) { | 1606 } else if (InputIs(node, Type::Signed32())) { |
1607 VisitUnop(node, UseInfo::TruncatingWord32(), | 1607 VisitUnop(node, UseInfo::TruncatingWord32(), |
1608 MachineRepresentation::kWord32); | 1608 MachineRepresentation::kWord32); |
1609 if (lower()) DeferReplacement(node, lowering->Int32Abs(node)); | 1609 if (lower()) DeferReplacement(node, lowering->Int32Abs(node)); |
1610 } else if (InputIs(node, | 1610 } else if (InputIs(node, |
1611 type_cache_.kPositiveIntegerOrMinusZeroOrNaN)) { | 1611 type_cache_.kPositiveIntegerOrMinusZeroOrNaN)) { |
1612 VisitUnop(node, UseInfo::TruncatingFloat64(), | 1612 VisitUnop(node, UseInfo::TruncatingFloat64(), |
1613 MachineRepresentation::kFloat64); | 1613 MachineRepresentation::kFloat64); |
1614 if (lower()) DeferReplacement(node, node->InputAt(0)); | 1614 if (lower()) DeferReplacement(node, node->InputAt(0)); |
1615 } else { | 1615 } else { |
1616 VisitUnop(node, UseInfo::TruncatingFloat64(), | 1616 VisitUnop(node, UseInfo::TruncatingFloat64(), |
(...skipping 1668 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3285 isolate(), graph()->zone(), callable.descriptor(), 0, flags, | 3285 isolate(), graph()->zone(), callable.descriptor(), 0, flags, |
3286 Operator::kNoProperties); | 3286 Operator::kNoProperties); |
3287 to_number_operator_.set(common()->Call(desc)); | 3287 to_number_operator_.set(common()->Call(desc)); |
3288 } | 3288 } |
3289 return to_number_operator_.get(); | 3289 return to_number_operator_.get(); |
3290 } | 3290 } |
3291 | 3291 |
3292 } // namespace compiler | 3292 } // namespace compiler |
3293 } // namespace internal | 3293 } // namespace internal |
3294 } // namespace v8 | 3294 } // namespace v8 |
OLD | NEW |