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 #ifndef V8_UNITTESTS_COMPILER_NODE_TEST_UTILS_H_ | 5 #ifndef V8_UNITTESTS_COMPILER_NODE_TEST_UTILS_H_ |
6 #define V8_UNITTESTS_COMPILER_NODE_TEST_UTILS_H_ | 6 #define V8_UNITTESTS_COMPILER_NODE_TEST_UTILS_H_ |
7 | 7 |
8 #include "src/compiler/machine-operator.h" | 8 #include "src/compiler/machine-operator.h" |
9 #include "src/compiler/machine-type.h" | 9 #include "src/compiler/machine-type.h" |
| 10 #include "src/compiler/opcodes.h" |
10 #include "testing/gmock/include/gmock/gmock.h" | 11 #include "testing/gmock/include/gmock/gmock.h" |
11 | 12 |
12 namespace v8 { | 13 namespace v8 { |
13 namespace internal { | 14 namespace internal { |
14 | 15 |
15 // Forward declarations. | 16 // Forward declarations. |
16 class ExternalReference; | 17 class ExternalReference; |
17 template <typename T> | 18 template <typename T> |
18 class Handle; | 19 class Handle; |
19 class HeapObject; | 20 class HeapObject; |
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
301 Matcher<Node*> IsUint32LessThan(const Matcher<Node*>& lhs_matcher, | 302 Matcher<Node*> IsUint32LessThan(const Matcher<Node*>& lhs_matcher, |
302 const Matcher<Node*>& rhs_matcher); | 303 const Matcher<Node*>& rhs_matcher); |
303 Matcher<Node*> IsUint32LessThanOrEqual(const Matcher<Node*>& lhs_matcher, | 304 Matcher<Node*> IsUint32LessThanOrEqual(const Matcher<Node*>& lhs_matcher, |
304 const Matcher<Node*>& rhs_matcher); | 305 const Matcher<Node*>& rhs_matcher); |
305 Matcher<Node*> IsInt64Add(const Matcher<Node*>& lhs_matcher, | 306 Matcher<Node*> IsInt64Add(const Matcher<Node*>& lhs_matcher, |
306 const Matcher<Node*>& rhs_matcher); | 307 const Matcher<Node*>& rhs_matcher); |
307 Matcher<Node*> IsInt64Sub(const Matcher<Node*>& lhs_matcher, | 308 Matcher<Node*> IsInt64Sub(const Matcher<Node*>& lhs_matcher, |
308 const Matcher<Node*>& rhs_matcher); | 309 const Matcher<Node*>& rhs_matcher); |
309 Matcher<Node*> IsInt64Mul(const Matcher<Node*>& lhs_matcher, | 310 Matcher<Node*> IsInt64Mul(const Matcher<Node*>& lhs_matcher, |
310 const Matcher<Node*>& rhs_matcher); | 311 const Matcher<Node*>& rhs_matcher); |
311 Matcher<Node*> IsJSAdd(const Matcher<Node*>& lhs_matcher, | |
312 const Matcher<Node*>& rhs_matcher); | |
313 Matcher<Node*> IsChangeFloat64ToInt32(const Matcher<Node*>& input_matcher); | 312 Matcher<Node*> IsChangeFloat64ToInt32(const Matcher<Node*>& input_matcher); |
314 Matcher<Node*> IsChangeFloat64ToUint32(const Matcher<Node*>& input_matcher); | 313 Matcher<Node*> IsChangeFloat64ToUint32(const Matcher<Node*>& input_matcher); |
315 Matcher<Node*> IsChangeInt32ToFloat64(const Matcher<Node*>& input_matcher); | 314 Matcher<Node*> IsChangeInt32ToFloat64(const Matcher<Node*>& input_matcher); |
316 Matcher<Node*> IsChangeInt32ToInt64(const Matcher<Node*>& input_matcher); | 315 Matcher<Node*> IsChangeInt32ToInt64(const Matcher<Node*>& input_matcher); |
317 Matcher<Node*> IsChangeUint32ToFloat64(const Matcher<Node*>& input_matcher); | 316 Matcher<Node*> IsChangeUint32ToFloat64(const Matcher<Node*>& input_matcher); |
318 Matcher<Node*> IsChangeUint32ToUint64(const Matcher<Node*>& input_matcher); | 317 Matcher<Node*> IsChangeUint32ToUint64(const Matcher<Node*>& input_matcher); |
319 Matcher<Node*> IsTruncateFloat64ToFloat32(const Matcher<Node*>& input_matcher); | 318 Matcher<Node*> IsTruncateFloat64ToFloat32(const Matcher<Node*>& input_matcher); |
320 Matcher<Node*> IsTruncateFloat64ToInt32(const Matcher<Node*>& input_matcher); | 319 Matcher<Node*> IsTruncateFloat64ToInt32(const Matcher<Node*>& input_matcher); |
321 Matcher<Node*> IsTruncateInt64ToInt32(const Matcher<Node*>& input_matcher); | 320 Matcher<Node*> IsTruncateInt64ToInt32(const Matcher<Node*>& input_matcher); |
322 Matcher<Node*> IsRoundInt64ToFloat64(const Matcher<Node*>& input_matcher); | 321 Matcher<Node*> IsRoundInt64ToFloat64(const Matcher<Node*>& input_matcher); |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
392 const Matcher<Node*>& control_matcher); | 391 const Matcher<Node*>& control_matcher); |
393 Matcher<Node*> IsJSCallConstruct(std::vector<Matcher<Node*>> value_matchers, | 392 Matcher<Node*> IsJSCallConstruct(std::vector<Matcher<Node*>> value_matchers, |
394 const Matcher<Node*>& effect_matcher, | 393 const Matcher<Node*>& effect_matcher, |
395 const Matcher<Node*>& control_matcher); | 394 const Matcher<Node*>& control_matcher); |
396 Matcher<Node*> IsJSCallFunction(std::vector<Matcher<Node*>> value_matchers, | 395 Matcher<Node*> IsJSCallFunction(std::vector<Matcher<Node*>> value_matchers, |
397 const Matcher<Node*>& effect_matcher, | 396 const Matcher<Node*>& effect_matcher, |
398 const Matcher<Node*>& control_matcher); | 397 const Matcher<Node*>& control_matcher); |
399 Matcher<Node*> IsJSCallRuntime(std::vector<Matcher<Node*>> value_matchers, | 398 Matcher<Node*> IsJSCallRuntime(std::vector<Matcher<Node*>> value_matchers, |
400 const Matcher<Node*>& effect_matcher, | 399 const Matcher<Node*>& effect_matcher, |
401 const Matcher<Node*>& control_matcher); | 400 const Matcher<Node*>& control_matcher); |
402 Matcher<Node*> IsJSUnaryNot(const Matcher<Node*>& value_matcher); | 401 Matcher<Node*> IsJSUnaryNot(const Matcher<Node*>& value_matcher, |
403 Matcher<Node*> IsJSTypeOf(const Matcher<Node*>& value_matcher); | 402 const Matcher<Node*>& effect_matcher); |
| 403 Matcher<Node*> IsJSTypeOf(const Matcher<Node*>& value_matcher, |
| 404 const Matcher<Node*>& effect_matcher); |
| 405 Matcher<Node*> IsJSToBoolean(const Matcher<Node*>& value_matcher, |
| 406 const Matcher<Node*>& effect_matcher); |
| 407 Matcher<Node*> IsJSToName(const Matcher<Node*>& value_matcher, |
| 408 const Matcher<Node*>& effect_matcher, |
| 409 const Matcher<Node*>& control_matcher); |
| 410 Matcher<Node*> IsJSToObject(const Matcher<Node*>& value_matcher, |
| 411 const Matcher<Node*>& effect_matcher, |
| 412 const Matcher<Node*>& control_matcher); |
404 Matcher<Node*> IsJSDeleteProperty(const Matcher<Node*>& object_value_matcher, | 413 Matcher<Node*> IsJSDeleteProperty(const Matcher<Node*>& object_value_matcher, |
405 const Matcher<Node*>& key_matcher, | 414 const Matcher<Node*>& key_matcher, |
406 const Matcher<Node*>& effect_matcher, | 415 const Matcher<Node*>& effect_matcher, |
407 const Matcher<Node*>& control_matcher); | 416 const Matcher<Node*>& control_matcher); |
| 417 Matcher<Node*> IsJSBinaryOperation(IrOpcode::Value opcode, |
| 418 const Matcher<Node*>& lhs_matcher, |
| 419 const Matcher<Node*>& rhs_matcher, |
| 420 const Matcher<Node*>& effect_matcher, |
| 421 const Matcher<Node*>& control_matcher); |
408 | 422 |
409 } // namespace compiler | 423 } // namespace compiler |
410 } // namespace internal | 424 } // namespace internal |
411 } // namespace v8 | 425 } // namespace v8 |
412 | 426 |
413 #endif // V8_UNITTESTS_COMPILER_NODE_TEST_UTILS_H_ | 427 #endif // V8_UNITTESTS_COMPILER_NODE_TEST_UTILS_H_ |
OLD | NEW |