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

Side by Side Diff: test/unittests/compiler/node-test-utils.cc

Issue 1329643002: Fix type errors in unit test utilities. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 3 months 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 | « test/unittests/compiler/node-test-utils.h ('k') | no next file » | 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 #include "test/unittests/compiler/node-test-utils.h" 5 #include "test/unittests/compiler/node-test-utils.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "src/assembler.h" 9 #include "src/assembler.h"
10 #include "src/compiler/common-operator.h" 10 #include "src/compiler/common-operator.h"
(...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after
405 value0_matcher_.DescribeTo(os); 405 value0_matcher_.DescribeTo(os);
406 *os << "), value1 ("; 406 *os << "), value1 (";
407 value1_matcher_.DescribeTo(os); 407 value1_matcher_.DescribeTo(os);
408 *os << ") and value2 ("; 408 *os << ") and value2 (";
409 value2_matcher_.DescribeTo(os); 409 value2_matcher_.DescribeTo(os);
410 *os << ")"; 410 *os << ")";
411 } 411 }
412 412
413 bool MatchAndExplain(Node* node, MatchResultListener* listener) const final { 413 bool MatchAndExplain(Node* node, MatchResultListener* listener) const final {
414 return (NodeMatcher::MatchAndExplain(node, listener) && 414 return (NodeMatcher::MatchAndExplain(node, listener) &&
415 PrintMatchAndExplain(OpParameter<MachineType>(node), "type", 415 PrintMatchAndExplain(OpParameter<SelectParameters>(node).type(),
416 type_matcher_, listener) && 416 "type", type_matcher_, listener) &&
417 PrintMatchAndExplain(NodeProperties::GetValueInput(node, 0), 417 PrintMatchAndExplain(NodeProperties::GetValueInput(node, 0),
418 "value0", value0_matcher_, listener) && 418 "value0", value0_matcher_, listener) &&
419 PrintMatchAndExplain(NodeProperties::GetValueInput(node, 1), 419 PrintMatchAndExplain(NodeProperties::GetValueInput(node, 1),
420 "value1", value1_matcher_, listener) && 420 "value1", value1_matcher_, listener) &&
421 PrintMatchAndExplain(NodeProperties::GetValueInput(node, 2), 421 PrintMatchAndExplain(NodeProperties::GetValueInput(node, 2),
422 "value2", value2_matcher_, listener)); 422 "value2", value2_matcher_, listener));
423 } 423 }
424 424
425 private: 425 private:
426 const Matcher<MachineType> type_matcher_; 426 const Matcher<MachineType> type_matcher_;
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
634 } 634 }
635 635
636 private: 636 private:
637 const Matcher<size_t> index_matcher_; 637 const Matcher<size_t> index_matcher_;
638 const Matcher<Node*> base_matcher_; 638 const Matcher<Node*> base_matcher_;
639 }; 639 };
640 640
641 641
642 class IsCallMatcher final : public NodeMatcher { 642 class IsCallMatcher final : public NodeMatcher {
643 public: 643 public:
644 IsCallMatcher(const Matcher<CallDescriptor*>& descriptor_matcher, 644 IsCallMatcher(const Matcher<const CallDescriptor*>& descriptor_matcher,
645 const std::vector<Matcher<Node*>>& value_matchers, 645 const std::vector<Matcher<Node*>>& value_matchers,
646 const Matcher<Node*>& effect_matcher, 646 const Matcher<Node*>& effect_matcher,
647 const Matcher<Node*>& control_matcher) 647 const Matcher<Node*>& control_matcher)
648 : NodeMatcher(IrOpcode::kCall), 648 : NodeMatcher(IrOpcode::kCall),
649 descriptor_matcher_(descriptor_matcher), 649 descriptor_matcher_(descriptor_matcher),
650 value_matchers_(value_matchers), 650 value_matchers_(value_matchers),
651 effect_matcher_(effect_matcher), 651 effect_matcher_(effect_matcher),
652 control_matcher_(control_matcher) {} 652 control_matcher_(control_matcher) {}
653 653
654 void DescribeTo(std::ostream* os) const final { 654 void DescribeTo(std::ostream* os) const final {
655 NodeMatcher::DescribeTo(os); 655 NodeMatcher::DescribeTo(os);
656 for (size_t i = 0; i < value_matchers_.size(); ++i) { 656 for (size_t i = 0; i < value_matchers_.size(); ++i) {
657 if (i == 0) { 657 if (i == 0) {
658 *os << " whose value0 ("; 658 *os << " whose value0 (";
659 } else { 659 } else {
660 *os << "), value" << i << " ("; 660 *os << "), value" << i << " (";
661 } 661 }
662 value_matchers_[i].DescribeTo(os); 662 value_matchers_[i].DescribeTo(os);
663 } 663 }
664 *os << "), effect ("; 664 *os << "), effect (";
665 effect_matcher_.DescribeTo(os); 665 effect_matcher_.DescribeTo(os);
666 *os << ") and control ("; 666 *os << ") and control (";
667 control_matcher_.DescribeTo(os); 667 control_matcher_.DescribeTo(os);
668 *os << ")"; 668 *os << ")";
669 } 669 }
670 670
671 bool MatchAndExplain(Node* node, MatchResultListener* listener) const final { 671 bool MatchAndExplain(Node* node, MatchResultListener* listener) const final {
672 if (!NodeMatcher::MatchAndExplain(node, listener) || 672 if (!NodeMatcher::MatchAndExplain(node, listener) ||
673 !PrintMatchAndExplain(OpParameter<CallDescriptor*>(node), "descriptor", 673 !PrintMatchAndExplain(OpParameter<const CallDescriptor*>(node),
674 descriptor_matcher_, listener)) { 674 "descriptor", descriptor_matcher_, listener)) {
675 return false; 675 return false;
676 } 676 }
677 for (size_t i = 0; i < value_matchers_.size(); ++i) { 677 for (size_t i = 0; i < value_matchers_.size(); ++i) {
678 std::ostringstream ost; 678 std::ostringstream ost;
679 ost << "value" << i; 679 ost << "value" << i;
680 if (!PrintMatchAndExplain( 680 if (!PrintMatchAndExplain(
681 NodeProperties::GetValueInput(node, static_cast<int>(i)), 681 NodeProperties::GetValueInput(node, static_cast<int>(i)),
682 ost.str(), value_matchers_[i], listener)) { 682 ost.str(), value_matchers_[i], listener)) {
683 return false; 683 return false;
684 } 684 }
685 } 685 }
686 return (PrintMatchAndExplain(NodeProperties::GetEffectInput(node), "effect", 686 return (PrintMatchAndExplain(NodeProperties::GetEffectInput(node), "effect",
687 effect_matcher_, listener) && 687 effect_matcher_, listener) &&
688 PrintMatchAndExplain(NodeProperties::GetControlInput(node), 688 PrintMatchAndExplain(NodeProperties::GetControlInput(node),
689 "control", control_matcher_, listener)); 689 "control", control_matcher_, listener));
690 } 690 }
691 691
692 private: 692 private:
693 const Matcher<CallDescriptor*> descriptor_matcher_; 693 const Matcher<const CallDescriptor*> descriptor_matcher_;
694 const std::vector<Matcher<Node*>> value_matchers_; 694 const std::vector<Matcher<Node*>> value_matchers_;
695 const Matcher<Node*> effect_matcher_; 695 const Matcher<Node*> effect_matcher_;
696 const Matcher<Node*> control_matcher_; 696 const Matcher<Node*> control_matcher_;
697 }; 697 };
698 698
699 699
700 class IsTailCallMatcher final : public NodeMatcher { 700 class IsTailCallMatcher final : public NodeMatcher {
701 public: 701 public:
702 IsTailCallMatcher(const Matcher<CallDescriptor const*>& descriptor_matcher, 702 IsTailCallMatcher(const Matcher<CallDescriptor const*>& descriptor_matcher,
703 const std::vector<Matcher<Node*>>& value_matchers, 703 const std::vector<Matcher<Node*>>& value_matchers,
(...skipping 907 matching lines...) Expand 10 before | Expand all | Expand 10 after
1611 return MakeMatcher(new IsEffectSetMatcher(effect0_matcher, effect1_matcher)); 1611 return MakeMatcher(new IsEffectSetMatcher(effect0_matcher, effect1_matcher));
1612 } 1612 }
1613 1613
1614 1614
1615 Matcher<Node*> IsProjection(const Matcher<size_t>& index_matcher, 1615 Matcher<Node*> IsProjection(const Matcher<size_t>& index_matcher,
1616 const Matcher<Node*>& base_matcher) { 1616 const Matcher<Node*>& base_matcher) {
1617 return MakeMatcher(new IsProjectionMatcher(index_matcher, base_matcher)); 1617 return MakeMatcher(new IsProjectionMatcher(index_matcher, base_matcher));
1618 } 1618 }
1619 1619
1620 1620
1621 Matcher<Node*> IsCall(const Matcher<CallDescriptor*>& descriptor_matcher, 1621 Matcher<Node*> IsCall(const Matcher<const CallDescriptor*>& descriptor_matcher,
1622 const Matcher<Node*>& value0_matcher, 1622 const Matcher<Node*>& value0_matcher,
1623 const Matcher<Node*>& value1_matcher, 1623 const Matcher<Node*>& value1_matcher,
1624 const Matcher<Node*>& effect_matcher, 1624 const Matcher<Node*>& effect_matcher,
1625 const Matcher<Node*>& control_matcher) { 1625 const Matcher<Node*>& control_matcher) {
1626 std::vector<Matcher<Node*>> value_matchers; 1626 std::vector<Matcher<Node*>> value_matchers;
1627 value_matchers.push_back(value0_matcher); 1627 value_matchers.push_back(value0_matcher);
1628 value_matchers.push_back(value1_matcher); 1628 value_matchers.push_back(value1_matcher);
1629 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers, 1629 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers,
1630 effect_matcher, control_matcher)); 1630 effect_matcher, control_matcher));
1631 } 1631 }
1632 1632
1633 1633
1634 Matcher<Node*> IsCall(const Matcher<CallDescriptor*>& descriptor_matcher, 1634 Matcher<Node*> IsCall(const Matcher<const CallDescriptor*>& descriptor_matcher,
1635 const Matcher<Node*>& value0_matcher, 1635 const Matcher<Node*>& value0_matcher,
1636 const Matcher<Node*>& value1_matcher, 1636 const Matcher<Node*>& value1_matcher,
1637 const Matcher<Node*>& value2_matcher, 1637 const Matcher<Node*>& value2_matcher,
1638 const Matcher<Node*>& effect_matcher, 1638 const Matcher<Node*>& effect_matcher,
1639 const Matcher<Node*>& control_matcher) { 1639 const Matcher<Node*>& control_matcher) {
1640 std::vector<Matcher<Node*>> value_matchers; 1640 std::vector<Matcher<Node*>> value_matchers;
1641 value_matchers.push_back(value0_matcher); 1641 value_matchers.push_back(value0_matcher);
1642 value_matchers.push_back(value1_matcher); 1642 value_matchers.push_back(value1_matcher);
1643 value_matchers.push_back(value2_matcher); 1643 value_matchers.push_back(value2_matcher);
1644 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers, 1644 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers,
1645 effect_matcher, control_matcher)); 1645 effect_matcher, control_matcher));
1646 } 1646 }
1647 1647
1648 1648
1649 Matcher<Node*> IsCall(const Matcher<CallDescriptor*>& descriptor_matcher, 1649 Matcher<Node*> IsCall(const Matcher<const CallDescriptor*>& descriptor_matcher,
1650 const Matcher<Node*>& value0_matcher, 1650 const Matcher<Node*>& value0_matcher,
1651 const Matcher<Node*>& value1_matcher, 1651 const Matcher<Node*>& value1_matcher,
1652 const Matcher<Node*>& value2_matcher, 1652 const Matcher<Node*>& value2_matcher,
1653 const Matcher<Node*>& value3_matcher, 1653 const Matcher<Node*>& value3_matcher,
1654 const Matcher<Node*>& effect_matcher, 1654 const Matcher<Node*>& effect_matcher,
1655 const Matcher<Node*>& control_matcher) { 1655 const Matcher<Node*>& control_matcher) {
1656 std::vector<Matcher<Node*>> value_matchers; 1656 std::vector<Matcher<Node*>> value_matchers;
1657 value_matchers.push_back(value0_matcher); 1657 value_matchers.push_back(value0_matcher);
1658 value_matchers.push_back(value1_matcher); 1658 value_matchers.push_back(value1_matcher);
1659 value_matchers.push_back(value2_matcher); 1659 value_matchers.push_back(value2_matcher);
1660 value_matchers.push_back(value3_matcher); 1660 value_matchers.push_back(value3_matcher);
1661 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers, 1661 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers,
1662 effect_matcher, control_matcher)); 1662 effect_matcher, control_matcher));
1663 } 1663 }
1664 1664
1665 1665
1666 Matcher<Node*> IsCall(const Matcher<CallDescriptor*>& descriptor_matcher, 1666 Matcher<Node*> IsCall(const Matcher<const CallDescriptor*>& descriptor_matcher,
1667 const Matcher<Node*>& value0_matcher, 1667 const Matcher<Node*>& value0_matcher,
1668 const Matcher<Node*>& value1_matcher, 1668 const Matcher<Node*>& value1_matcher,
1669 const Matcher<Node*>& value2_matcher, 1669 const Matcher<Node*>& value2_matcher,
1670 const Matcher<Node*>& value3_matcher, 1670 const Matcher<Node*>& value3_matcher,
1671 const Matcher<Node*>& value4_matcher, 1671 const Matcher<Node*>& value4_matcher,
1672 const Matcher<Node*>& effect_matcher, 1672 const Matcher<Node*>& effect_matcher,
1673 const Matcher<Node*>& control_matcher) { 1673 const Matcher<Node*>& control_matcher) {
1674 std::vector<Matcher<Node*>> value_matchers; 1674 std::vector<Matcher<Node*>> value_matchers;
1675 value_matchers.push_back(value0_matcher); 1675 value_matchers.push_back(value0_matcher);
1676 value_matchers.push_back(value1_matcher); 1676 value_matchers.push_back(value1_matcher);
1677 value_matchers.push_back(value2_matcher); 1677 value_matchers.push_back(value2_matcher);
1678 value_matchers.push_back(value3_matcher); 1678 value_matchers.push_back(value3_matcher);
1679 value_matchers.push_back(value4_matcher); 1679 value_matchers.push_back(value4_matcher);
1680 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers, 1680 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers,
1681 effect_matcher, control_matcher)); 1681 effect_matcher, control_matcher));
1682 } 1682 }
1683 1683
1684 1684
1685 Matcher<Node*> IsCall(const Matcher<CallDescriptor*>& descriptor_matcher, 1685 Matcher<Node*> IsCall(const Matcher<const CallDescriptor*>& descriptor_matcher,
1686 const Matcher<Node*>& value0_matcher, 1686 const Matcher<Node*>& value0_matcher,
1687 const Matcher<Node*>& value1_matcher, 1687 const Matcher<Node*>& value1_matcher,
1688 const Matcher<Node*>& value2_matcher, 1688 const Matcher<Node*>& value2_matcher,
1689 const Matcher<Node*>& value3_matcher, 1689 const Matcher<Node*>& value3_matcher,
1690 const Matcher<Node*>& value4_matcher, 1690 const Matcher<Node*>& value4_matcher,
1691 const Matcher<Node*>& value5_matcher, 1691 const Matcher<Node*>& value5_matcher,
1692 const Matcher<Node*>& effect_matcher, 1692 const Matcher<Node*>& effect_matcher,
1693 const Matcher<Node*>& control_matcher) { 1693 const Matcher<Node*>& control_matcher) {
1694 std::vector<Matcher<Node*>> value_matchers; 1694 std::vector<Matcher<Node*>> value_matchers;
1695 value_matchers.push_back(value0_matcher); 1695 value_matchers.push_back(value0_matcher);
1696 value_matchers.push_back(value1_matcher); 1696 value_matchers.push_back(value1_matcher);
1697 value_matchers.push_back(value2_matcher); 1697 value_matchers.push_back(value2_matcher);
1698 value_matchers.push_back(value3_matcher); 1698 value_matchers.push_back(value3_matcher);
1699 value_matchers.push_back(value4_matcher); 1699 value_matchers.push_back(value4_matcher);
1700 value_matchers.push_back(value5_matcher); 1700 value_matchers.push_back(value5_matcher);
1701 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers, 1701 return MakeMatcher(new IsCallMatcher(descriptor_matcher, value_matchers,
1702 effect_matcher, control_matcher)); 1702 effect_matcher, control_matcher));
1703 } 1703 }
1704 1704
1705 1705
1706 Matcher<Node*> IsCall( 1706 Matcher<Node*> IsCall(
1707 const Matcher<CallDescriptor*>& descriptor_matcher, 1707 const Matcher<const CallDescriptor*>& descriptor_matcher,
1708 const Matcher<Node*>& value0_matcher, const Matcher<Node*>& value1_matcher, 1708 const Matcher<Node*>& value0_matcher, const Matcher<Node*>& value1_matcher,
1709 const Matcher<Node*>& value2_matcher, const Matcher<Node*>& value3_matcher, 1709 const Matcher<Node*>& value2_matcher, const Matcher<Node*>& value3_matcher,
1710 const Matcher<Node*>& value4_matcher, const Matcher<Node*>& value5_matcher, 1710 const Matcher<Node*>& value4_matcher, const Matcher<Node*>& value5_matcher,
1711 const Matcher<Node*>& value6_matcher, const Matcher<Node*>& effect_matcher, 1711 const Matcher<Node*>& value6_matcher, const Matcher<Node*>& effect_matcher,
1712 const Matcher<Node*>& control_matcher) { 1712 const Matcher<Node*>& control_matcher) {
1713 std::vector<Matcher<Node*>> value_matchers; 1713 std::vector<Matcher<Node*>> value_matchers;
1714 value_matchers.push_back(value0_matcher); 1714 value_matchers.push_back(value0_matcher);
1715 value_matchers.push_back(value1_matcher); 1715 value_matchers.push_back(value1_matcher);
1716 value_matchers.push_back(value2_matcher); 1716 value_matchers.push_back(value2_matcher);
1717 value_matchers.push_back(value3_matcher); 1717 value_matchers.push_back(value3_matcher);
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after
2046 IS_UNOP_MATCHER(NumberToInt32) 2046 IS_UNOP_MATCHER(NumberToInt32)
2047 IS_UNOP_MATCHER(NumberToUint32) 2047 IS_UNOP_MATCHER(NumberToUint32)
2048 IS_UNOP_MATCHER(ObjectIsSmi) 2048 IS_UNOP_MATCHER(ObjectIsSmi)
2049 IS_UNOP_MATCHER(ObjectIsNonNegativeSmi) 2049 IS_UNOP_MATCHER(ObjectIsNonNegativeSmi)
2050 IS_UNOP_MATCHER(Word32Clz) 2050 IS_UNOP_MATCHER(Word32Clz)
2051 #undef IS_UNOP_MATCHER 2051 #undef IS_UNOP_MATCHER
2052 2052
2053 } // namespace compiler 2053 } // namespace compiler
2054 } // namespace internal 2054 } // namespace internal
2055 } // namespace v8 2055 } // namespace v8
OLDNEW
« no previous file with comments | « test/unittests/compiler/node-test-utils.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698