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 "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 1748 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1759 value_matchers.push_back(value1_matcher); | 1759 value_matchers.push_back(value1_matcher); |
1760 value_matchers.push_back(value2_matcher); | 1760 value_matchers.push_back(value2_matcher); |
1761 value_matchers.push_back(value3_matcher); | 1761 value_matchers.push_back(value3_matcher); |
1762 value_matchers.push_back(value4_matcher); | 1762 value_matchers.push_back(value4_matcher); |
1763 value_matchers.push_back(value5_matcher); | 1763 value_matchers.push_back(value5_matcher); |
1764 return MakeMatcher(new IsTailCallMatcher(descriptor_matcher, value_matchers, | 1764 return MakeMatcher(new IsTailCallMatcher(descriptor_matcher, value_matchers, |
1765 effect_matcher, control_matcher)); | 1765 effect_matcher, control_matcher)); |
1766 } | 1766 } |
1767 | 1767 |
1768 | 1768 |
| 1769 Matcher<Node*> IsTailCall( |
| 1770 const Matcher<CallDescriptor const*>& descriptor_matcher, |
| 1771 const Matcher<Node*>& value0_matcher, const Matcher<Node*>& value1_matcher, |
| 1772 const Matcher<Node*>& value2_matcher, const Matcher<Node*>& value3_matcher, |
| 1773 const Matcher<Node*>& value4_matcher, const Matcher<Node*>& value5_matcher, |
| 1774 const Matcher<Node*>& value6_matcher, const Matcher<Node*>& effect_matcher, |
| 1775 const Matcher<Node*>& control_matcher) { |
| 1776 std::vector<Matcher<Node*>> value_matchers; |
| 1777 value_matchers.push_back(value0_matcher); |
| 1778 value_matchers.push_back(value1_matcher); |
| 1779 value_matchers.push_back(value2_matcher); |
| 1780 value_matchers.push_back(value3_matcher); |
| 1781 value_matchers.push_back(value4_matcher); |
| 1782 value_matchers.push_back(value5_matcher); |
| 1783 value_matchers.push_back(value6_matcher); |
| 1784 return MakeMatcher(new IsTailCallMatcher(descriptor_matcher, value_matchers, |
| 1785 effect_matcher, control_matcher)); |
| 1786 } |
| 1787 |
| 1788 |
| 1789 Matcher<Node*> IsTailCall( |
| 1790 const Matcher<CallDescriptor const*>& descriptor_matcher, |
| 1791 const Matcher<Node*>& value0_matcher, const Matcher<Node*>& value1_matcher, |
| 1792 const Matcher<Node*>& value2_matcher, const Matcher<Node*>& value3_matcher, |
| 1793 const Matcher<Node*>& value4_matcher, const Matcher<Node*>& value5_matcher, |
| 1794 const Matcher<Node*>& value6_matcher, const Matcher<Node*>& value7_matcher, |
| 1795 const Matcher<Node*>& effect_matcher, |
| 1796 const Matcher<Node*>& control_matcher) { |
| 1797 std::vector<Matcher<Node*>> value_matchers; |
| 1798 value_matchers.push_back(value0_matcher); |
| 1799 value_matchers.push_back(value1_matcher); |
| 1800 value_matchers.push_back(value2_matcher); |
| 1801 value_matchers.push_back(value3_matcher); |
| 1802 value_matchers.push_back(value4_matcher); |
| 1803 value_matchers.push_back(value5_matcher); |
| 1804 value_matchers.push_back(value6_matcher); |
| 1805 value_matchers.push_back(value7_matcher); |
| 1806 return MakeMatcher(new IsTailCallMatcher(descriptor_matcher, value_matchers, |
| 1807 effect_matcher, control_matcher)); |
| 1808 } |
| 1809 |
| 1810 |
1769 Matcher<Node*> IsReferenceEqual(const Matcher<Type*>& type_matcher, | 1811 Matcher<Node*> IsReferenceEqual(const Matcher<Type*>& type_matcher, |
1770 const Matcher<Node*>& lhs_matcher, | 1812 const Matcher<Node*>& lhs_matcher, |
1771 const Matcher<Node*>& rhs_matcher) { | 1813 const Matcher<Node*>& rhs_matcher) { |
1772 return MakeMatcher( | 1814 return MakeMatcher( |
1773 new IsReferenceEqualMatcher(type_matcher, lhs_matcher, rhs_matcher)); | 1815 new IsReferenceEqualMatcher(type_matcher, lhs_matcher, rhs_matcher)); |
1774 } | 1816 } |
1775 | 1817 |
1776 | 1818 |
1777 Matcher<Node*> IsAllocate(const Matcher<Node*>& size_matcher, | 1819 Matcher<Node*> IsAllocate(const Matcher<Node*>& size_matcher, |
1778 const Matcher<Node*>& effect_matcher, | 1820 const Matcher<Node*>& effect_matcher, |
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1968 IS_UNOP_MATCHER(NumberToInt32) | 2010 IS_UNOP_MATCHER(NumberToInt32) |
1969 IS_UNOP_MATCHER(NumberToUint32) | 2011 IS_UNOP_MATCHER(NumberToUint32) |
1970 IS_UNOP_MATCHER(ObjectIsSmi) | 2012 IS_UNOP_MATCHER(ObjectIsSmi) |
1971 IS_UNOP_MATCHER(ObjectIsNonNegativeSmi) | 2013 IS_UNOP_MATCHER(ObjectIsNonNegativeSmi) |
1972 IS_UNOP_MATCHER(Word32Clz) | 2014 IS_UNOP_MATCHER(Word32Clz) |
1973 #undef IS_UNOP_MATCHER | 2015 #undef IS_UNOP_MATCHER |
1974 | 2016 |
1975 } // namespace compiler | 2017 } // namespace compiler |
1976 } // namespace internal | 2018 } // namespace internal |
1977 } // namespace v8 | 2019 } // namespace v8 |
OLD | NEW |